《 單片機應(yīng)用技術(shù)》課件-項目四 0-99計數(shù)器的制作_第1頁
《 單片機應(yīng)用技術(shù)》課件-項目四 0-99計數(shù)器的制作_第2頁
《 單片機應(yīng)用技術(shù)》課件-項目四 0-99計數(shù)器的制作_第3頁
《 單片機應(yīng)用技術(shù)》課件-項目四 0-99計數(shù)器的制作_第4頁
《 單片機應(yīng)用技術(shù)》課件-項目四 0-99計數(shù)器的制作_第5頁
已閱讀5頁,還剩64頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

項目四0-99計數(shù)器的制作

硬件設(shè)計系統(tǒng)調(diào)試任務(wù)導(dǎo)讀任務(wù)導(dǎo)入軟件設(shè)計任務(wù)一、00—99加一計數(shù)器任務(wù)目標導(dǎo)讀學習目標技能目標了解八段LED數(shù)碼管的結(jié)構(gòu)、分類以及其工作原理。了解8段LED數(shù)碼管的顯示碼。掌握8段LED數(shù)碼管檢測方法掌握數(shù)字0-9的編碼概念會用萬用表測試數(shù)碼管的好壞。會用軟件方法測試數(shù)碼管的好壞。1.了解8段LED數(shù)碼管的結(jié)構(gòu)及其工作原理。2.獨立按鍵的工作原理。3.掌握數(shù)碼管顯示電路的硬件設(shè)計。4.掌握單片機對數(shù)碼管的動態(tài)顯示控制方式及C語言驅(qū)動程序編寫。知識教學點

任務(wù)目標導(dǎo)讀教學重點、難點

教學重點:1.數(shù)碼管顯示電路的硬件設(shè)計。2.單片機對數(shù)碼管的動態(tài)顯示控制方式。教學難點:1.單片機對數(shù)碼管的動態(tài)顯示C語言驅(qū)動程序編寫

。參考學時:1學時~2學時

什么是計數(shù)器?計數(shù)器在數(shù)字系統(tǒng)中主要是對脈沖的個數(shù)進行計數(shù),以實現(xiàn)測量、計數(shù)和控制的功能。任務(wù)導(dǎo)入任務(wù)一00—99加一計數(shù)器項目要求:實現(xiàn)用數(shù)碼管顯示00~99的加一計數(shù)。學習單片機與數(shù)碼管LED顯示器接口及按鍵的有關(guān)知識。本項目中要完成2個任務(wù)。任務(wù)1.實現(xiàn)按鍵控制數(shù)碼管顯示0~9的加一計數(shù)。任務(wù)2.實現(xiàn)按鍵控制數(shù)碼管顯示00~99的加一計數(shù)。任務(wù)一00—99加一計數(shù)器你知道怎樣用單片機做一個計數(shù)器嗎?實物任務(wù)一00—99加一計數(shù)器LED數(shù)碼管任務(wù)一00—99加一計數(shù)器

一個8段LED數(shù)碼管由8個發(fā)光二極管組成,其中7個發(fā)光二極管構(gòu)成字型“8”的各個筆劃(字段)a-g,另一個小數(shù)點為dp發(fā)光二極管。8段LED數(shù)碼管的顯示原理任務(wù)一00—99加一計數(shù)器5V8段LED數(shù)碼管又分共陰極和共陽極兩種。當在某段二極管上施加一定的正向電壓時,該段筆劃即亮;不加電壓則暗。8段LED數(shù)碼管的顯示原理任務(wù)一00—99加一計數(shù)器共陰極LED數(shù)碼管結(jié)構(gòu)發(fā)光二極管的陰極連接在一起的稱為共陰極LED數(shù)碼管。顯示“0”的段碼:0x3f00111111接低電平發(fā)光二極管任務(wù)一00—99加一計數(shù)器顯示“1”的段碼:0x06如果顯示“1”,段碼為多少?00000110任務(wù)一00—99加一計數(shù)器TEXTTEXTTEXTTEXT共陽極LED數(shù)碼管結(jié)構(gòu)發(fā)光二極管的陽極連接在一起的稱為共陽極LED數(shù)碼管。顯示“0”的段碼:0xc0接高電平發(fā)光二極管11000000任務(wù)一00—99加一計數(shù)器TEXTTEXTTEXT共陽極與共陰極8段LED數(shù)碼管編碼表任務(wù)一00—99加一計數(shù)器單片機數(shù)碼管按鍵復(fù)位晶振硬件電路設(shè)計方案:任務(wù)一00—99加一計數(shù)器實驗板硬件電路設(shè)計電路組成控制器采用STC89C52單片機,P0口接6個一位共陽極數(shù)碼管,通過兩片74HL573S鎖存數(shù)據(jù),其中P0.0—P0.7分別連接數(shù)碼管的a—g引腳。P0.0—P0.5分別分別作為6個共陰極數(shù)碼管的位選端。數(shù)碼管硬件電路如圖所示:任務(wù)一00—99加一計數(shù)器單片機硬件電路任務(wù)一00—99加一計數(shù)器軟件設(shè)計思路

任務(wù)1.實現(xiàn)按鍵控制數(shù)碼管顯示0~9的加一計數(shù)。按鍵按下作為判斷條件,循環(huán)9次通過P0口送0-9段碼,1個數(shù)碼管選通。任務(wù)2.實現(xiàn)按鍵控制數(shù)碼管顯示00~99的加一計數(shù)按鍵按下作為判斷條件,循環(huán)100次通過P0口送00-99段碼,2個數(shù)碼管選通。通過取整和取余得到十位和個位的值

具體程序調(diào)試過程見keil軟件調(diào)試過程。

任務(wù)一00—99加一計數(shù)器仿真效果:任務(wù)一00—99加一計數(shù)器Count初始為0數(shù)碼顯示“00”按鍵識別成功嗎?Count=Count+1Count=100嗎?顯示Count計數(shù)器YNNY開始程序流程圖:任務(wù)一00—99加一計數(shù)器#include<reg8952.H>unsignedcharcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};unsignedcharCount;voiddelay10ms(void){unsignedchari,j;for(i=20;i>0;i--)for(j=248;j>0;j--);}voidmain(void){Count=0;P0=table[Count/10];P2=table[Count%10];

while(1){if(P3_7==0){delay10ms();if(P3_7==0){Count++;if(Count==100){Count=0;}P0=table[Count/10];P2=table[Count%10];while(P3_7==0);}}}}項目四0-99計數(shù)器的制作

硬件設(shè)計系統(tǒng)調(diào)試任務(wù)導(dǎo)讀任務(wù)導(dǎo)入軟件設(shè)計任務(wù)二、00—99加減計數(shù)器任務(wù)目標導(dǎo)讀學習目標技能目標了解八段LED數(shù)碼管的結(jié)構(gòu)、分類以及其工作原理。了解8段LED數(shù)碼管的顯示碼。掌握8段LED數(shù)碼管檢測方法掌握數(shù)字0-9的編碼概念會用萬用表測試數(shù)碼管的好壞。會用軟件方法測試數(shù)碼管的好壞。1.了解8段LED數(shù)碼管的結(jié)構(gòu)及其工作原理。2.獨立按鍵的工作原理。3.掌握數(shù)碼管顯示電路的硬件設(shè)計。4.掌握單片機對數(shù)碼管的動態(tài)顯示控制方式及C語言驅(qū)動程序編寫。知識教學點

任務(wù)目標導(dǎo)讀教學重點、難點

教學重點:1.數(shù)碼管顯示電路的硬件設(shè)計。2.單片機對數(shù)碼管的動態(tài)顯示控制方式。教學難點:1.單片機對數(shù)碼管的動態(tài)顯示C語言驅(qū)動程序編寫

。參考學時:1學時~2學時

什么是計數(shù)器?計數(shù)器在數(shù)字系統(tǒng)中主要是對脈沖的個數(shù)進行計數(shù),以實現(xiàn)測量、計數(shù)和控制的功能。任務(wù)導(dǎo)入任務(wù)二00—99加減計數(shù)器項目要求:實現(xiàn)用數(shù)碼管顯示00~99的加減計數(shù)。學習單片機與數(shù)碼管LED顯示器接口及按鍵的有關(guān)知識。本項目中要完成2個任務(wù)。任務(wù)1.實現(xiàn)按鍵控制數(shù)碼管顯示00~99的加一計數(shù)。

當按下按鍵KA,加一計數(shù),任務(wù)2.實現(xiàn)按鍵控制數(shù)碼管顯示00~99的加減計數(shù)。

當按下按鍵KA,加一計數(shù),當按下按鍵KB,減一計數(shù),當按下KC,清零。任務(wù)二00—99加減計數(shù)器你知道怎樣用單片機做一個計數(shù)器嗎?實物任務(wù)二00—99加減計數(shù)器LED數(shù)碼管任務(wù)二00—99加減計數(shù)器

一個8段LED數(shù)碼管由8個發(fā)光二極管組成,其中7個發(fā)光二極管構(gòu)成字型“8”的各個筆劃(字段)a-g,另一個小數(shù)點為dp發(fā)光二極管。8段LED數(shù)碼管的顯示原理任務(wù)二00—99加減計數(shù)器5V8段LED數(shù)碼管又分共陰極和共陽極兩種。當在某段二極管上施加一定的正向電壓時,該段筆劃即亮;不加電壓則暗。8段LED數(shù)碼管的顯示原理任務(wù)二00—99加減計數(shù)器共陰極LED數(shù)碼管結(jié)構(gòu)發(fā)光二極管的陰極連接在一起的稱為共陰極LED數(shù)碼管。顯示“0”的段碼:0x3f00111111接低電平發(fā)光二極管任務(wù)二00—99加減計數(shù)器顯示“1”的段碼:0x06如果顯示“1”,段碼為多少?00000110任務(wù)二00—99加減計數(shù)器TEXTTEXTTEXTTEXT共陽極LED數(shù)碼管結(jié)構(gòu)發(fā)光二極管的陽極連接在一起的稱為共陽極LED數(shù)碼管。顯示“0”的段碼:0xc0接高電平發(fā)光二極管11000000任務(wù)二00—99加減計數(shù)器TEXTTEXTTEXT共陽極與共陰極8段LED數(shù)碼管編碼表任務(wù)二00—99加減計數(shù)器單片機數(shù)碼管按鍵復(fù)位晶振硬件電路設(shè)計方案:任務(wù)二00—99加減計數(shù)器實驗板硬件電路設(shè)計電路組成控制器采用STC89C52單片機,P0口接6個一位共陽極數(shù)碼管,通過兩片74HL573S鎖存數(shù)據(jù),其中P0.0—P0.7分別連接數(shù)碼管的a—g引腳。P0.0—P0.5分別分別作為6個共陰極數(shù)碼管的位選端。數(shù)碼管硬件電路如圖所示:任務(wù)二00—99加減計數(shù)器單片機硬件電路任務(wù)二00—99加減計數(shù)器軟件設(shè)計思路

任務(wù)1.實現(xiàn)按鍵控制數(shù)碼管顯示00~99的加一計數(shù)

若按鍵KA按下,變量自加,循環(huán)100次。通過P0口送00-99段碼,2個數(shù)碼管選通。通過取整和取余得到十位和個位的值。任務(wù)2.實現(xiàn)按鍵控制數(shù)碼管顯示00~99的加減計數(shù)

若按鍵KA按下,變量自加,循環(huán)100次。若按鍵KB按下,變量自減,循環(huán)100次。若按鍵KC按下,變量清零。通過P0口送00-99段碼,2個數(shù)碼管選通。具體程序調(diào)試過程見keil軟件調(diào)試過程。

任務(wù)二00—99加減計數(shù)器仿真效果:任務(wù)二00—99加減計數(shù)器Count初始為0數(shù)碼顯示“00”按鍵KA識別成功嗎?Count=Count+1Count=100嗎?顯示Count計數(shù)器YNNY開始程序流程圖:任務(wù)一00—99加減計數(shù)器Count初始為0數(shù)碼顯示“00”KB按鍵識別成功嗎?Count=Count-1Count=100嗎?顯示Count計數(shù)器YNNY開始程序流程圖:任務(wù)一00—99加減計數(shù)器硬件設(shè)計軟件設(shè)計任務(wù)導(dǎo)讀

任務(wù)一、數(shù)碼管顯示矩陣按鍵號任務(wù)導(dǎo)入系統(tǒng)調(diào)試項目四0-99計數(shù)器的制作

任務(wù)目標導(dǎo)讀學習目標技能目標了解八段LED數(shù)碼管的結(jié)構(gòu)、分類以及其工作原理。了解8段LED數(shù)碼管的顯示碼。掌握8段LED數(shù)碼管檢測方法掌握數(shù)字0-9的編碼概念會用萬用表測試數(shù)碼管的好壞。會用軟件方法測試數(shù)碼管的好壞。1.了解8段LED數(shù)碼管的結(jié)構(gòu)及其工作原理。2.獨立按鍵的工作原理。3.掌握數(shù)碼管顯示電路的硬件設(shè)計。4.掌握單片機對數(shù)碼管的動態(tài)顯示控制方式及C語言驅(qū)動程序編寫。知識教學點

任務(wù)目標導(dǎo)讀教學重點、難點

教學重點:1.數(shù)碼管顯示電路的硬件設(shè)計。2.單片機對數(shù)碼管的動態(tài)顯示控制方式。教學難點:1.單片機對數(shù)碼管的動態(tài)顯示C語言驅(qū)動程序編寫

。參考學時:1學時~2學時

常見按鍵類型及其應(yīng)用場合44任務(wù)三數(shù)碼管顯示矩陣按鍵號提出任務(wù):4X4小鍵盤,16個鍵分別對應(yīng)0~9、A~F;有鍵按下,數(shù)碼管顯示;無鍵按下,數(shù)碼管無顯示;具體任務(wù):1.獨立按鍵按下,顯示鍵號2.矩陣按鍵按下,顯示鍵號任務(wù)三數(shù)碼管顯示矩陣按鍵號認識鍵盤鍵盤是單片機應(yīng)用系統(tǒng)中人機交流不可缺少的輸入設(shè)備。鍵盤由一組規(guī)則排列的按鍵組成,一個按鍵實際上是一個開關(guān)元件。鍵盤通常使用機械觸點式按鍵開關(guān),其主要功能是把機械上的通斷轉(zhuǎn)換為電氣上的邏輯關(guān)系(1和0)。常見的種類有:查詢(獨立)式鍵盤

矩陣式鍵盤

任務(wù)三數(shù)碼管顯示矩陣按鍵號鍵盤分類

按鍵按照結(jié)構(gòu)原理可分為兩類觸點式開關(guān)按鍵,如機械式開關(guān)、導(dǎo)電橡膠式開關(guān)等;無觸點開關(guān)按鍵,如電氣式按鍵,磁感應(yīng)按鍵等。前者造價低,后者壽命長。按鍵按照接口原理可分為兩類按鍵按照接口原理可分為兩類

編碼鍵盤,主要是用硬件來實現(xiàn)對按鍵的識別,硬件結(jié)構(gòu)復(fù)雜;非編碼鍵盤,主要是由軟件來實現(xiàn)按鍵的定義與識別,硬件結(jié)構(gòu)簡單,軟件編程量大。這里我們主要介紹單片機中常用的觸點式開關(guān)按鍵、非編碼鍵盤。任務(wù)三數(shù)碼管顯示矩陣按鍵號獨立式鍵盤電路獨立式鍵盤電路設(shè)計時,每個按鍵的一端與Px口的一個引腳相連,另一端接地。CPU可以通過檢測Px的8個I/O口線哪個是“0”就可以識別是否有鍵按下,并能識別出是哪一個鍵按下。

任務(wù)三數(shù)碼管顯示矩陣按鍵號獨立式按鍵與單片機的接口設(shè)計

芯片內(nèi)有上拉電阻芯片內(nèi)無上拉電阻此種接口適于鍵數(shù)較少或操作速度較高的場合1.工作原理:獨立式按鍵的軟件常采用查詢式結(jié)構(gòu)。先逐位查詢每根I/O口線的輸入狀態(tài),如某一根I/O口線輸入為低電平,則可確認該I/O口線所對應(yīng)的按鍵已按下,然后,再轉(zhuǎn)向該鍵的功能處理程序。49任務(wù)三數(shù)碼管顯示矩陣按鍵號鍵盤設(shè)計應(yīng)注意的問題機械式按鍵在按下或釋放時,由于機械彈性作用的影響,通常伴隨有一定時間的觸點機械抖動,然后其觸點才穩(wěn)定下來。其抖動過程如右圖所示,抖動時間的長短與開關(guān)的機械特性有關(guān),一般為5

10ms。若有抖動,按鍵按下會被錯誤地認為是多次操作。

按鍵觸點的機械抖動任務(wù)三數(shù)碼管顯示矩陣按鍵號防抖動措施為了克服按鍵觸點機械抖動所致的檢測誤判,必須采取去抖動措施,可從硬件、軟件兩方面予以考慮。鍵數(shù)較少時,采用硬件去抖(用RS觸發(fā)器);鍵數(shù)較多時,采用軟件去抖。

軟件上采取的措施是在檢測到有按鍵按下時,執(zhí)行一個10ms左右(具體時間應(yīng)視所使用的按鍵進行調(diào)整)的延時程序,再確認該鍵電平是否仍保持閉合狀態(tài)電平,若仍保持閉合狀態(tài)電平,則確認該鍵處于閉合狀態(tài),從而消除抖動的影響。任務(wù)三數(shù)碼管顯示矩陣按鍵號用什么指令實現(xiàn)呢?軟件消抖流程圖:有鍵按下?延時10ms

YYNN

讀按鍵輸入有鍵按下?

讀按鍵輸入52任務(wù)三數(shù)碼管顯示矩陣按鍵號01111111100111111011111100100101110111110000110111101111100110011111011101001001111110110100000111111101000111111111111000000001獨立式按鍵檢測的過程演示獨立式按鍵檢測的過程演示,無鍵按下時數(shù)碼管顯示0,有鍵按下時數(shù)碼管顯示相應(yīng)的按鍵號碼(1~8)53任務(wù)三數(shù)碼管顯示矩陣按鍵號獨立式按鍵檢測程序#include<AT89X52.H>/***********共陽極數(shù)碼管0~9的代碼段**************/unsignedcharcodetab[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};/******延時子函數(shù),12MHz晶振******/voiddelay(unsignedintn){unsignedchari;while(n--) {for(i=0;i<125;i++) {;} }}/**********主函數(shù)***********/main(){P1=0xff;P2=0xff;while(1) { P2=tab[key_scan()];//顯示按鍵按下的號碼

}}54任務(wù)三數(shù)碼管顯示矩陣按鍵號/*********鍵盤掃描子函數(shù)*********/unsignedcharkey_scan(){unsignedchartemp=0xff;//臨時存儲變量

unsignedcharkey_value=0;//存儲按鍵號碼變量

temp=P1; //讀取P1口所接按鍵的狀態(tài)

if(temp!=0xff) //temp中的值不等于0xff,說明有鍵按下

delay(10);//調(diào)延時子函數(shù)

else //temp中的值等于0xff,說明無鍵按下

return0; //無鍵按下,返回值為0temp=P1; //再讀取P1口所接按鍵的狀態(tài)

switch(~temp){case0x01:key_value=1;break;case0x02:key_value=2;break;case0x04:key_value=3;break;case0x08:key_value=4;break;case0x10:key_value=5;break;case0x20:key_value=6;break;case0x40:key_value=7;break;case0x80:key_value=8;break;}returnkey_value;//返回按鍵號碼的值}55任務(wù)三數(shù)碼管顯示矩陣按鍵號矩陣式鍵盤電路任務(wù)三數(shù)碼管顯示矩陣按鍵號鍵盤的結(jié)構(gòu)與原理矩陣式鍵盤單片機系統(tǒng)中,若使用按鍵較多時,通常采用矩陣式鍵盤,其結(jié)構(gòu)如下圖所示。由圖可知,一個4×4的行、列結(jié)構(gòu),可以構(gòu)成一個含有16個按鍵的鍵盤,節(jié)省了很多I/O口。控制方式:先判斷是否有鍵按下。如有,再判斷哪一鍵按下,并得到鍵碼值,然后根據(jù)鍵碼值轉(zhuǎn)向不同的功能程序。最常用的識別方法是鍵盤掃描法。任務(wù)三數(shù)碼管顯示矩陣按鍵號判斷按鍵按下的方法判斷是否有鍵按下的方法是:向所有的列輸出口線輸出低電平(不能為高電平,因為若為高電平,按鍵按下與否都不會引起行線電平的變化),然后將行線的電平狀態(tài)讀入。若無鍵按下,所有的行線仍保持高電平狀態(tài);若有鍵按下,行線中至少應(yīng)有一條線為低電平。例如:第2行與第2列交叉點的鍵被按下,則第2行與第2列導(dǎo)通,第2行電平被拉低,讀入的行信號就為低電平,表示有鍵按下。任務(wù)三數(shù)碼管顯示矩陣按鍵號識別按鍵的方法按鍵識別的掃描方法:往列線上按順序一列一列的送出低電平。先送第0列為低電平,其他列為高電平,讀入的行的電平狀態(tài)就表明了第0列的4個鍵的情況,若讀入的行值全為高電平,則表示無鍵按下;再送第1列為低電平,其他列為高電平,讀入的行的電平狀態(tài)則顯示了該行上的4個按鍵的情況;依次輪流給各列送出低電平,直至4列全部送完,再從第0列開始,依此循環(huán)。采用鍵盤掃描,我們再來觀察第2行與第2列交叉點的鍵按下時的判斷過程,當?shù)?列送出低電平時,讀第2行為低電平,而其他列送出低電平時,讀第2行卻為高電平,由此即可斷定按下的鍵應(yīng)是第2行與第2列交叉點的鍵。任務(wù)三數(shù)碼管顯示矩陣按鍵號鍵盤掃描程序具體實現(xiàn)方法判斷有無鍵按下去除按鍵的抖動求按鍵的鍵值判斷閉合鍵是否釋放

任務(wù)三數(shù)碼管顯示矩陣按鍵號判斷有無鍵按下P0.4~P0.7輸出0,然后讀P0口;若低4位P0.0~P0.3全為1,則鍵盤上沒有鍵按下;若P0.0~P0.3不全為1,則有鍵按下。while(tmp==0x0f)//循環(huán)判斷是否有鍵按下{P0=0x0f;//所有列輸出低電平

tmp=P0;//讀行信號}

任務(wù)三數(shù)碼管顯示矩陣按鍵號去除按鍵的抖動當判斷到鍵盤上有鍵按下后;延時一段時間再判斷鍵盤的狀態(tài);若仍為有鍵按下狀態(tài),則認為有一個鍵按下,否則當作按鍵抖動來處理。delay10ms();//延時10ms去抖P0=0x0f;//所有列輸出低電平tmp=P0;//再次讀鍵盤狀態(tài)if(tmp==0x0f)continue;//如果無鍵按下則認為是按鍵抖動,重新掃描鍵盤

任務(wù)三數(shù)碼管顯示矩陣按鍵號求按鍵的鍵值對鍵盤的列線進行掃描,P0.4~P0.7循環(huán)輸出1110、1101、1011和0111,依次讀P0口,若低4位全為1,則斷定該列上沒有鍵按下;否則,該列上就有鍵按下,并且就是行線為0,列線為0的交叉點,行號和列號按公式:rol*4+col計算得到按下鍵的鍵值。例如,P0.4~P0.7輸出1101時,P0口的低四位讀入的值為1011,不全為1,就可以斷定有鍵按下,并且是第2行和第1列交叉點的鍵。于是,該鍵的鍵值=2×4+1=9。按照相同的方法可以得到所有鍵的鍵值。如:return(rol*4+col);

任務(wù)三數(shù)碼管顯示矩陣按鍵號判斷閉合鍵是否釋放按鍵閉合一次只能進行一次功能操作,因此,等按鍵釋放后才能根據(jù)鍵號執(zhí)行相應(yīng)的功能鍵操作。key=scan_key();//有鍵按下,調(diào)用鍵盤掃描程序,并把鍵值送keywhile(k!=-1)//判斷閉合鍵是否釋放,直到其釋放{delay10ms();k=scan_key();}

任務(wù)三數(shù)碼管顯示矩陣按鍵號矩陣式鍵盤程序程序要判斷是否有2個或2個以上的鍵盤同時按下,以免鍵盤分析錯誤。16個按鍵分別為0~9、A~F,用數(shù)碼管顯示按下的按鍵。矩陣式鍵盤程序任務(wù)三數(shù)碼管顯示矩陣按鍵號單片機系統(tǒng)中,若使用按鍵較多時,通常采用矩陣式(也稱行列式)鍵盤。矩陣式按鍵與單片機的接口設(shè)計

1.矩陣式鍵盤的結(jié)構(gòu)及原理(1)結(jié)構(gòu):矩陣式鍵盤由行線和列線組成,按鍵位于行、列線的交叉點上。66任務(wù)三數(shù)碼管顯示矩陣按鍵號#include<AT89X52.H>/***********共陽極LED顯示0~F的代碼********/unsignedcharLED_code[]={0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83, 0xc6,0xa1,0x86,0x8e, 0x8c//共陽極LED顯示P的代碼

};/********延時子函數(shù)*********/voiddelay(unsignedintn){unsignedchari; while(n--) {for(i=0;i<125;i++) {;} }}矩陣式鍵盤

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論