單片機(jī)技術(shù)應(yīng)用項(xiàng)目化教程(C語言版)(第2版) 課件 任務(wù)4.1_第1頁(yè)
單片機(jī)技術(shù)應(yīng)用項(xiàng)目化教程(C語言版)(第2版) 課件 任務(wù)4.1_第2頁(yè)
單片機(jī)技術(shù)應(yīng)用項(xiàng)目化教程(C語言版)(第2版) 課件 任務(wù)4.1_第3頁(yè)
單片機(jī)技術(shù)應(yīng)用項(xiàng)目化教程(C語言版)(第2版) 課件 任務(wù)4.1_第4頁(yè)
單片機(jī)技術(shù)應(yīng)用項(xiàng)目化教程(C語言版)(第2版) 課件 任務(wù)4.1_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

項(xiàng)目4電子時(shí)鐘控制系統(tǒng)任務(wù)4.1鍵碼顯示器明確任務(wù)

在工業(yè)生產(chǎn)和日常生活中,經(jīng)常會(huì)用到按鍵對(duì)單片機(jī)系統(tǒng)進(jìn)行相應(yīng)的控制與管理,同時(shí)還有按鍵提示音。按鍵已經(jīng)作為最基本的輸入裝置在單片機(jī)應(yīng)用系統(tǒng)中廣泛使用。那按鍵怎么才能被系統(tǒng)正確的識(shí)別,信息是怎么被確認(rèn)的?按鍵聲音又是怎么發(fā)出的?。工作任務(wù):設(shè)計(jì)完成一個(gè)鍵碼顯示器系統(tǒng),按下一個(gè)按鍵數(shù)碼管顯示其對(duì)應(yīng)的編號(hào),同時(shí)系統(tǒng)發(fā)出滴的一聲。一、按鍵輸入技術(shù)知識(shí)鏈接

獨(dú)立式按鍵結(jié)構(gòu)是直接用I/O口線構(gòu)成的單個(gè)按鍵電路,其特點(diǎn)是每個(gè)按鍵單獨(dú)占用一根I/O口線,每個(gè)按鍵的工作不會(huì)影響其他I/O口線的狀態(tài)。1.獨(dú)立式按鍵

獨(dú)立式按鍵電路配置靈活,軟件結(jié)構(gòu)簡(jiǎn)單,但每個(gè)按鍵必須占用一個(gè)I/O口線,因此,在按鍵較多時(shí),I/O口線浪費(fèi)較大,不宜采用。多用于設(shè)置控制鍵、功能鍵。適用于鍵數(shù)少的場(chǎng)合。

按鍵輸入采用低電平有效,上拉電阻保證了按鍵斷開時(shí)I/O口線有確定的高電平。當(dāng)I/O口線內(nèi)部有上拉電阻,外電路可不接上拉電阻。2矩陣鍵盤

行列掃描法:列線輸出,行線輸入;列線逐列輸出0,某行有按鍵;行線輸入就為0;若無按,行線輸入全部為1。鍵碼=行號(hào)+列號(hào)抖動(dòng)時(shí)間一般為5~10ms

3按鍵抖動(dòng)

硬件消除抖動(dòng):在硬件上可采用在鍵輸出端加R-S觸發(fā)器(雙穩(wěn)態(tài)觸發(fā)器)或單穩(wěn)態(tài)觸發(fā)器構(gòu)成去抖動(dòng)電路

軟件去抖動(dòng):采用軟件去抖動(dòng)的方法是在單片機(jī)檢測(cè)到有鍵按下時(shí)執(zhí)行一個(gè)10~20ms的延時(shí)程序后再次檢查該鍵電平是否仍保持閉合狀態(tài).如保持閉合狀態(tài),則確認(rèn)為有鍵按下,否則從頭檢測(cè)。這樣就能消除鍵的抖動(dòng)影響。二蜂鳴器原理及應(yīng)用技術(shù)

壓電式蜂鳴器:接通電源后(1.5~15V直流工作電壓),多諧振蕩器起振,輸出1.5~2.5kHZ的音頻信號(hào),阻抗匹配器推動(dòng)壓電蜂鳴片發(fā)聲

電磁式蜂鳴器:接通電源后,振蕩器產(chǎn)生的音頻信號(hào)電流通過電磁線圈,使電磁線圈產(chǎn)生磁場(chǎng)。振動(dòng)膜片在電磁線圈和磁鐵的相互作用下,周期性地振動(dòng)發(fā)聲。

由于蜂鳴器的工作電流一般比較大,單片機(jī)的I/O口無法直接驅(qū)動(dòng),所以要利用放大電路來驅(qū)動(dòng),一般都包含:一個(gè)三極管、一個(gè)蜂鳴器、一個(gè)續(xù)流二極管和一個(gè)電源濾波電容。1.獨(dú)立按鍵位定義對(duì)于獨(dú)立按鍵一般采取位定義的形式進(jìn)行聲明,特別是按鍵具有一定功能含義時(shí)。二、編程技巧sbitkey1=P2^0; //定義按鍵管腳sbitkey2=P2^1;sbitkey3=P2^2;sbitkey4=P2^3;if(key1==0) {-----}

如果獨(dú)立式按鍵為單一含義功能時(shí),即對(duì)系統(tǒng)信息數(shù)據(jù)等的改變僅一次有效時(shí),一般采用直接讀取電平的方式進(jìn)行判定。voidBeep() //蜂鳴器子函數(shù){ unsignedchari;

BEEP=0;//開

for(i=0;i<100;i++); BEEP=1;//關(guān)

}2.蜂鳴器發(fā)聲控制單片機(jī)系統(tǒng)執(zhí)行速度很快,所以低電平有效使得蜂鳴器工作,應(yīng)該進(jìn)行適當(dāng)延時(shí)。 temp=0x7F; //準(zhǔn)備列掃描

for(i=0;i<4;i++) { P2=temp; //輸出列掃描碼

if((P2&0x0F)!=0x0F) //此列有鍵按下

{ Key_Value=(P2&0x0F)|(temp&0xF0); //鍵碼=行碼+列碼

Beep(); //聲音

returnKey_Value;// 返回鍵碼

} temp>>=1; //準(zhǔn)備下列掃描

temp+=0x80; }3.矩陣鍵盤的掃描

行列掃描法能夠很好的詮釋矩陣鍵盤的工作原理,這里采用逐列掃描法。三、硬件電路圖四、軟件設(shè)計(jì)與編程

(1)利用6個(gè)獨(dú)立按鍵進(jìn)行鍵碼顯示1-6,當(dāng)有鍵按下時(shí),同時(shí)蜂鳴器發(fā)出滴的聲響。if(key1==0) {key=1; Beep();}//判斷按鍵是否按下if(key2==0) {key=2; Beep();}if(key3==0) {key=3; Beep();}if(key4==0) {key=4;Beep();}if(key5==0) {key=5; Beep();}if(key6==0) {key=6; Beep();}P1=SMG[key];//鍵碼顯示(2)顯示4*4矩陣鍵盤的鍵碼值。鍵碼值用十六進(jìn)制表示,0-9,A-F。掌握矩陣鍵盤掃描方法處理技巧。key=keyscan();//調(diào)用鍵盤掃描,switch(key){ case0x7E:P1=SMG[0];break;//0按下相應(yīng)的鍵顯示相對(duì)應(yīng)的碼值

case0x7D:P1=SMG[1];break;//1-------------- case0xE7:P1=SMG[15];break;//f}unsignedcharkeyscan(void)//鍵盤掃描函數(shù){unsignedchari,temp,Key_Value=0;P2=0x0F; //列線輸出全為0if((P2&0x0F)!=0x0F)//是否有按鍵按下

{ delay(10); //延時(shí)10ms去抖

if((P2&0x0F)!=0x0F) //確認(rèn)按鍵是否按下

{ temp=0x7F; //準(zhǔn)備列掃描

for(i=0;i<4;i++) { P2=temp; //輸出列掃描碼

if((P2&0x0F)!=0x0F) //此列有鍵按下

{ Key_Value=(P2&0x0F)|(temp&0xF0);//鍵碼=行碼+列碼

Beep(); //聲音

returnKey_Value;// 返回鍵碼

} temp>>=1; //準(zhǔn)備下列掃描

temp+=0x80; } }}returnKey_Value;//返回鍵碼

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論