wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7682|回復: 0
打印 上一主題 下一主題
收起左側

第12章 常用單片機接口程序 靜態(tài)動態(tài)顯示 獨立按鍵 矩陣按鍵

[復制鏈接]
跳轉到指定樓層
樓主
ID:111078 發(fā)表于 2016-3-28 21:07 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
第12章 常用單片機接口程序
1 靜 態(tài) 顯 示
2 動 態(tài) 顯 示
3 獨立按鍵
4 矩陣按鍵
數碼管是常用的輸出顯示器件,按鍵是常用的信號輸入器件。




常見數碼管引腳排列如圖所示


靜態(tài)顯示電路如下圖:



編寫字型碼關鍵步驟如下:
① 數碼管要顯示某個數字或字符,首先根據單只數碼管引腳圖,確定需要點亮數 碼管的哪幾段,從而確定數碼管8個引腳電平的高低。


例12.1 74HC595移位顯示程序,上電后數碼管固定顯示123456。
#include "STC15W4K.H"
//
注意宏定義后面沒分號
#include "intrins.h"
//
程序中_nop_()函數需用
sbit
Dat=P3^2;
//
定義串行數據輸入端
sbit
Clk=P3^3;
//
定義時鐘端
sbit
CNT=P3^4;
//
定義控制端
unsigned char DispBuf[6];
unsigned char code DispTab[]={0x03,0x9f,0x25,0x0d,0x19,0x41,0x1f,0x01,0x09,
0x11,0xc1,0x63,0x85,0x61,0x71}; // 定義定形碼表
void SendData(unsigned char SDat) // 74HC595傳送一個字節(jié)的數據
{ // 固定代碼,直接復制使用
}
void Disp() // 顯示位數在6位內不用修改
{
unsigned char c=0,i=0;
CNT=0; // 為產生脈沖上升沿作準備
for(i=0;i<6;i++) // 顯示位數需用根據硬件修改
{
c=DispBuf[ i ]; // 取出待顯示字符 SendData(DispTab[c]); // 送出字形碼數據
}
CNT=1; // 產生脈沖上升沿,并行輸出數據
}

void main()

{

unsigned long i=123456; // 123456

DispBuf[0]=i%10; // 個位 DispBuf[1]=i/10%10; // 十位 DispBuf[2]=i/100%10; // 百位 DispBuf[3]=i/1000%10; // 千位 DispBuf[4]=i/10000%10; // 萬位 DispBuf[5]=i/100000%10; // 十萬位 Disp();

for(;;)

{

; // 程序停在這里

}

}

2 動態(tài)顯示

這里介紹的動態(tài)顯示電路如下圖所示,看起來有點像靜態(tài)顯示電路,但比靜態(tài) 顯示電路占用硬件要少,比單片機直接驅動數碼管占用IO口也要少。


DAT
結合電路圖,控制某一位數碼管電源通斷的位選碼就簡單多了,如下所示。

單片機內部數據位

595引腳

D7

Q0

D6

Q1

D5

Q2

D4

Q3

D3

Q4

D2

Q5

D1

Q6

D0

Q7

位碼

十萬位

1

1

0

1

1

1

1

1

0xDF

萬位

1

0

1

1

1

1

1

1

0xBF

千位

0

1

1

1

1

1

1

1

0x7F

百位

1

1

1

1

1

0

1

1

0xFB

十位

1

1

1

1

1

1

0

1

0xFD

個位

1

1

1

1

1

1

1

0

0xFE


例12.3 單片機上電后數碼管顯示123456
sbit
Dat=P4^2;
//
定義串行數據輸入端
sbit
Clk=P4^4;
//
定義時鐘端
sbit
CNT=P4^5;
//
定義控制端
unsigned char code BitTab[]={0xFE,0xFD,0xFB,0x7F,0xBF,0xDF,}; // 位選
code unsigned char DispTab[] = {0x14,0x77,0x4c,0x45,0x27,0x85,0x84,0x57,
0x04,0x05,0x06,0xa4,0x9c,0x64,0x8c,0x8e}; // 字形碼

unsigned char DispBuf[6]; // 6字節(jié)的顯示緩沖區(qū),DispBuf[0]是最低位;

void SendData(unsigned char SendDat) // 74HC595傳送一個字節(jié)的數據
{ ;// 同例12.1
}
void timer0_init() // 定時器初始化
{
// 2ms定時中斷設置
}
void main()
{
timer0_init();
DispBuf[0]=6; DispBuf[1]=5; DispBuf[2]=4;DispBuf[3]=3; DispBuf[4]=2;DispBuf[5]=1;
for(;;)
{
;
}
}

void Timer0() interrupt 1
{

unsigned char tmp; //臨時變量
static unsigned char Count=0; //顯示程序通過它得知現(xiàn)正顯示哪個數碼管
// ***************** 重裝定時常數 ***************************
TH0=0xf1;
TL0=0x99; // 定時時間為2ms/22.1184MHz
// ******************點亮某位數碼管************************** CNT=0; // 為產生脈沖上升沿作準備 SendData(BitTab[Count]); // 最先點亮最右邊個位
// ******************輸出待顯數據************************** tmp=DispBuf[Count]; // 根據當前的計數值取顯示緩沖待顯示值 tmp=DispTab[tmp]; // 取字形碼
SendData(tmp) ;
CNT=1; // 產生脈沖上升沿,并行輸出數據
// ******************************************** Count++;
if(Count==6) Count=0;
}

3 獨立按鍵
電路如圖所示,單片機引腳作為輸入使用,軟件首先將接有按鍵的IO口置1,當鍵
沒有被按下時,單片機引腳上為高電平,而當鍵被按下后,引腳接地,單片機引 腳上為低電平,通過編程即可獲知是否有鍵按下及按鍵的位置。

由于機械按鍵按下和松開瞬間都會產生抖動,為了不讓一次按鍵動作過程中程序產生多

次響應引起混亂,就需要軟件去抖動處理,它的思路是:在單片機獲得某按鍵IO口為低 的信息后,不是立即認定該鍵被按下,而是延時一段時間,通常選擇10mS,再次檢測IO 口,如果仍為低,則說明該鍵的確被按下,這避開了按鍵的前沿抖動,而在檢測到按鍵 釋放后(該IO口為高),再延時10mS,消除釋放時的后沿抖動,然后再對鍵值進行處

理,實際的程序中其實一般都是不需要后沿抖動處理的,在后沿抖動的過程中,程序可 能誤判為鍵按下,在鍵按下后程序會執(zhí)行前沿延時10mS,所以前沿的10mS延時也就同時 用作了后沿去抖動的10mS。主要程序代碼如下:

void main()

{
unsigned char KValue;
//
存放鍵值
port_mode();
//
所有IO口設為準雙向弱上拉方式。
for(;;)
{

KValue=Key();
//
調用鍵盤程序并獲得鍵值
if(KValue)
//
如果該值不等于0,表示有鍵按下
{

KProce(KValue);
//
根據鍵值執(zhí)行不同的功能
}
}
}
unsigned char Key() // 獲取鍵值函數
{
unsigned char KValue; // 存放鍵值
unsigned char tmp; // 臨時變量
P3|=0x3c; // 0x3c=0011 1100,將P3口接鍵盤的中間四位置1
_nop_();_nop_(); KValue=P3; KValue|=0xc3;

//

// STC指令太快,加上更可靠

0xc3=1100 0011,將未接鍵的4位置1

if(KValue==0xff) // 中間4位均為1,無鍵按下
return(0);

// 返回
delay10ms();
KValue=P3; KValue|=0xc3;

//

// 延時10ms,去鍵抖
// 與下一行一起作最終返回鍵值。
0xc3=1100 0011,將未接鍵的4位置1,最終返回鍵值。
if(KValue==0xff) // 中間4位均為1,無鍵按下
return(0); // 返回,如尚未返回,說明一定有1或更多位被按下
for(;;)
{
tmp=P3; // 等待按鍵釋放
if((tmp|0xc3)==0xff)
break;
}
return(KValue);
}

4 矩陣按鍵
電路如圖所示,只要熟悉了獨立按鍵,矩陣按鍵也同樣的簡單。



主要代碼如下:
sbit KeyOut1 = P2^7;sbit KeyOut2 = P2^6;sbit KeyOut3 = P2^5;sbit KeyOut4 = P2^4;
sbit KeyIn1 = P2^3;sbit KeyIn2 = P2^2;sbit KeyIn3 = P2^1;sbit KeyIn4 = P2^0; unsigned char
KeyScan()
{
unsigned char key=0xff; // 臨時變量
KeyOut1 = 1; KeyOut2 = 1; KeyOut3 = 1; KeyOut4 = 0; // 掃描第1列
if(KeyIn1 == 0)
{
delay10ms(); if(KeyIn1 == 0) key=0x00;
}
if(KeyIn2 == 0)
{
delay10ms(); if(KeyIn2 == 0) key=0x04;
}
if(KeyIn3 == 0)
{
delay10ms(); if(KeyIn3 == 0) key=0x08;
}
if(KeyIn4 == 0)
{
delay10ms(); if(KeyIn4 == 0) key=0x0c;
}
KeyOut1 = 1; KeyOut2 = 1; KeyOut3 = 0; KeyOut4 = 1; // 掃描第2列
if(KeyIn1 == 0)
{
delay10ms(); if(KeyIn1 == 0) key=0x01;
}
……
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏6 分享淘帖 頂2 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
97欧美精品一区二区三区| 国产一区二区小视频| 波多野结衣三级视频| www.四虎成人| www.天天射.com| 亚洲免费av一区二区三区| 久久综合九色综合88i| 真人抽搐一进一出视频| 成人在线免费观看网址| 日韩成人午夜影院| 九九爱精品视频| 99免费视频观看| av亚洲天堂网| www.四虎在线| 免费观看a级片| 紧身裙女教师波多野结衣| 中文字幕电影av| 国产 日韩 欧美 成人| 国产www在线| 亚洲在线精品视频| 成人高潮片免费视频| 免费观看黄色av| 欧美性受xxxx免费视频| 在线播放www| bdsm在线观看播放视频| 伊人中文字幕在线| 老司机在线永久免费观看| jizz一区二区三区| 57pao成人永久免费| 91大神精品| 国产韩日影视精品| 国产日韩高清一区二区三区在线| 免费人成黄页网站在线一区二区| 岛国精品在线观看| 亚洲欧洲精品天堂一级 | 亚洲一区精品视频| 东北少妇不带套对白| 日韩肉感妇bbwbbwbbw| 亚洲婷婷在线观看| 精品国产乱码久久久久久鸭王1| 日本少妇激情舌吻| 国产夫妻自拍av| 欧美人与牲动交xxxxbbbb| 视频在线你懂的| www.成人69.com| a√资源在线| 人人鲁人人莫人人爱精品| 国产精品tv| 亚洲国产清纯| 成人不卡免费av| 亚洲成人av免费| 亚洲国产精品高清久久久| 欧美成人全部免费| 91社区国产高清| 青青草影院在线观看| 欧美视频国产视频| 日日噜噜夜夜狠狠久久波多野| 中文字幕一区二区三区四区视频 | 91在线观看免费高清完整版在线观看| 久久99久久99精品蜜柚传媒| 国产www免费| 最新在线黄色网址| 97超碰人人干| 中文字幕av中文字幕| jizzjizzjizz亚洲女| 黄色一级片在线观看| 国内精品视频| 亚洲国产高清一区| 99这里只有久久精品视频| 黑人巨大精品欧美一区二区| 国产亚洲精品综合一区91| 国产欧美精品日韩| 日本三级中文字幕在线观看| 香蕉视频免费网站| 9i看片成人免费看片| 桃花网日韩影视在线观看视频| 午夜黄色一级片| 色在线中文字幕| 婷婷久久综合| 久久综合色8888| 欧美理论片在线| 国模吧一区二区| 一本一道久久a久久综合精品| 一个人看的视频www| 国偷自拍第113页| 国内精品区一区二区三| 三级做a全过程在线观看| 国产成人精选| 国产欧美一区二区三区国产幕精品| 国产精品视频一二三| 日韩欧美久久久| 国产精品青青在线观看爽香蕉 | a欧美人片人妖| 97人人精品| 99精品久久99久久久久| 5月丁香婷婷综合| 国产成人a亚洲精品| 国产亚洲黄色片| 黄色裸体一级片| 狠狠色成人综合网图片区| 在线观看国产v片| 秋霞影院一区| 国产在线播放一区二区三区| 欧美在线高清视频| 日本中文字幕久久看| 福利视频一区二区三区四区| 色欲人妻综合网| 精品卡1卡2卡三卡免费网站| 成人av黄色| 先锋资源久久| 成人欧美一区二区三区视频网页| 中文字幕日韩视频| 亚欧精品在线| 阿v天堂2014| 四虎成人精品| 欧美大胆的人体xxxx| 午夜精品偷拍| 亚洲一区二区三区在线看| 久青草国产97香蕉在线视频| 在线观看一区欧美| 日韩在线视频网址| 一分钟免费观看视频播放www | 亚洲国产精品一区二区尤物区| 大量国产精品视频| 国产av熟女一区二区三区| 免费在线一区二区三区| 丁香激情五月婷婷| 国产精品原创视频| 国产一区二区在线看| 日韩欧美不卡在线观看视频| 国产丝袜不卡| 手机看片福利视频| 一个人看的www片免费高清视频 | 在线日韩国产精品| 国产精品美女久久| 在线a免费观看| 欧美天堂在线视频| 精品黄色免费中文电影在线播放| 午夜久久美女| 欧美伊人久久大香线蕉综合69 | 91麻豆产精品久久久久久夏晴子| ****av在线网毛片| 日韩精品欧美精品| 精品国产一区二区在线观看| 日韩精品在在线一区二区中文 | 69av成人| 久久99在线观看| 亚洲国产精品va在线看黑人动漫 | 亚洲 欧美综合在线网络| 欧美一区二区三区免费视| 国产又大又黄又猛| 岛国中文字幕| 欧美magnet| 成人蜜臀av电影| 少妇高潮久久77777| 激情五月宗合网| 99热这里只有精品66| 毛片在线播放a| 七七婷婷婷婷精品国产| 日韩精品视频在线播放| 日韩a级黄色片| 国产精品亚洲lv粉色| 成人在线视频亚洲| 精品一区二区三区在线视频| 亚洲精品一区二三区不卡| www.av91| 黄色三级网站在线观看| 国产精选在线| 成人免费视频播放| 久久成人综合视频| 伊人成人222| 国产精品第八页| 豆花视频一区二区| 亚洲一卡二卡三卡四卡| 高清国产一区| 日本系列第一页| 久蕉在线视频| 天堂成人国产精品一区| 亚洲日本中文字幕| 男人插女人下面免费视频| 欧美一区二区三区久久综| 日本免费一区二区三区视频| 亚洲另类中文字| 成人激情黄色网| 日韩激情综合网| 日韩欧美亚洲系列| 欧美一级一区| 中文字幕视频在线免费欧美日韩综合在线看 | 国产拍在线视频| 高潮精品一区videoshd| 久久久爽爽爽美女图片| 国产激情视频网站| 天天摸夜夜操| 欧美亚洲不卡| 日韩第一页在线| 亚洲综合日韩欧美| 日本亲与子乱a| 区一区二视频| 精品久久人人做人人爱| 免费无码av片在线观看| 欧美69xx性欧美| 日韩大胆成人| 3d成人动漫网站| 国产黄页在线观看| 青青青青国产视频| 天堂成人娱乐在线视频免费播放网站 | 日韩在线视频在线| 男人通一通女人的下水道| 亚洲一区二区免费在线观看| 精品国产1区2区| 椎名由奈jux491在线播放| 黑人精品一区二区| 国产一区二区三区黄网站| 午夜在线成人av| 一区二区三视频| 免费一区二区在线观看| 粉嫩的18在线观看极品精品| 欧美日韩一级视频| 国产精品va无码一区二区| 国产精选一区二区三区不卡催乳| 成人三级视频| 日韩高清免费观看| 国产乱淫av麻豆国产免费| 一级毛片免费看| 国产一区二区三区香蕉| 国产精品视频男人的天堂| 天天综合网久久综合网| 欧美xxx视频| 欧美性黄网官网| 国产美女主播在线| 超碰在线91| 红桃视频国产精品| 美女性感视频久久久| 激情五月深爱五月| 国产精品久久麻豆| 国产精品国模大尺度视频| 日韩精品一区二区三区外面 | 成年女人a毛片免费视频| 影音先锋亚洲一区| 欧美精品xxx| 久久亚洲国产成人精品性色| 在线黄色的网站| 欧美视频在线看| 黄色影院一级片| 国产免费视频| 国产一区二区在线电影| 91视频免费在线| 亚洲成人777777| 国产一区二区三区日韩精品 | 全彩无遮挡全彩口工漫画h# | 日韩av大片在线| 亚洲不卡视频在线观看| 精品亚洲a∨| 日韩欧美视频一区| 久久久久久婷婷| av一本在线| 亚洲黄色小视频| 国产精品又粗又长| 四虎4hutv紧急入口| 美美哒免费高清在线观看视频一区二区| 日韩美女在线看| 国产精品老熟女视频一区二区| 欧美交a欧美精品喷水| 亚洲欧美中文字幕| av最新在线观看| 国产日韩电影| 欧美一区二区三区日韩| 亚洲熟女一区二区| 免费av网站在线观看| 亚洲国产综合91精品麻豆| 美女福利视频在线| 中文字幕一二三区在线观看| 国产欧美一区二区三区在线老狼| 老司机av福利| 伊人av电影| 99精品国产91久久久久久| 亚洲看片网站| 成人免费黄色网址| 91亚洲国产成人精品一区二三| 日韩精品大片| 黄色大片免费看| 成人手机电影网| 综合色婷婷一区二区亚洲欧美国产| 青青青视频在线| 国产精品一区二区久激情瑜伽| 欧美美乳视频网站在线观看| 天堂在线视频播放| 国产精品一区二区男女羞羞无遮挡| 欧美日韩精品免费在线观看视频| 国产黄色片中文字幕| 国内不卡的二区三区中文字幕| 欧美激情视频一区二区三区| 免费在线观看a| 99视频精品免费视频| 国产专区在线视频| ga∨成人网| 亚洲精品国产成人久久av盗摄| 国产主播中文字幕| 免费a级在线播放| 欧美图区在线视频| 性色av蜜臀av色欲av| av在线日韩| 亚洲一区二区国产| 在线免费一区二区| 综合一区av| 亚洲va电影大全| 国产精品被窝福利一区| 国产成人av电影在线| 国产 欧美 日韩 一区| 中文字幕高清在线观看| 亚洲一二三四在线| 日韩www视频| jizz免费一区二区三区| 亚洲午夜久久久久久久| 免费一级a毛片| 欧美视频成人| 国产无套精品一区二区| 日日草天天草| 亚洲美腿欧美偷拍| 手机免费看av片| 国产美女亚洲精品7777| 欧美精品一区二区免费| 欧美自拍偷拍一区二区| 久久精品久久综合| 黄色成人在线免费观看| 一本一道波多野毛片中文在线| 欧美精品国产精品| 国产一卡二卡在线播放| 国产精品久久观看| 成人免费91在线看| 国产.com| 色天天综合久久久久综合片| 人成免费在线视频| 首页亚洲中字| 91久久综合亚洲鲁鲁五月天| www.天天射| 欧美性极品xxxx做受| 日韩av手机在线免费观看| 久久成人av| 波多野结衣久草一区| 91午夜国产| 在线观看国产91| 欧美一级视频免费观看| 亚洲午夜电影| 天堂av一区二区| 国产一级片在线| 亚洲成人激情视频| 国产美女精品视频国产| 精彩视频一区二区三区| 免费裸体美女网站| 久久久人成影片一区二区三区在哪下载 | 色屁屁www国产馆在线观看| 日韩精品一二三四区| 精品久久无码中文字幕| 国产黄色精品网站| 亚洲成人福利在线| 日韩免费在线电影| 国产精品久久久久久亚洲调教| xxx在线视频| 色老汉av一区二区三区| 精品在线播放视频| 校园激情久久| 欧美在线观看成人| 成人福利片在线| 国产精品男女猛烈高潮激情| 加勒比在线日本| 欧美男人的天堂一二区| 日韩乱码一区二区三区| 秋霞成人午夜伦在线观看| 成人观看免费完整观看| 欧美大片网站| 成人av.网址在线网站| 色偷偷亚洲女人天堂观看欧| 欧美午夜理伦三级在线观看| 这里只有精品国产| 成人av在线网站| 亚洲熟妇无码av| 在线一区免费| 无码av天堂一区二区三区| 成人午夜sm精品久久久久久久| 国产精品亚发布| 中文在线а天堂av| 日韩激情在线视频| 一区二区三国产精华液| 亚洲一区二区视频| 无码人妻久久一区二区三区不卡| 国产在线一区二区| 午夜av免费看| 欧美国产高清| 免费观看日韩毛片| 高清久久精品| 久久国产精品亚洲va麻豆| 2024短剧网剧在线观看| 91国产一区在线| 性视频在线播放| 国产亚洲精品久久久| 色偷偷网站视频| 日韩视频在线永久播放| 男人天堂电影网| 午夜电影一区二区|