肖桂坤 陳厚 吳旺 嚴(yán)宏為 陳海毅
摘 要:單片機(jī)使用十分廣泛,利用單片機(jī)設(shè)計(jì)無線鍵盤,能夠提高計(jì)算機(jī)外接設(shè)備使用的便捷性。文章首先對(duì)單片機(jī)無線鍵盤的設(shè)計(jì)需求進(jìn)行分析,進(jìn)而探討其具體設(shè)計(jì)方法,包括系統(tǒng)總體組成結(jié)構(gòu)、硬件電路設(shè)計(jì)、計(jì)算機(jī)及鍵盤軟件設(shè)計(jì)等,以期為單片機(jī)無線鍵盤設(shè)計(jì)提供參考。
關(guān)鍵詞:單片機(jī);無線鍵盤;設(shè)計(jì)方法
前言:在無線通信技術(shù)的快速發(fā)展下,計(jì)算機(jī)附屬設(shè)備無線化已經(jīng)成為一種發(fā)展趨勢。傳統(tǒng)計(jì)算機(jī)要連接電源線、網(wǎng)線、以及音箱、鼠標(biāo)等各種外聯(lián)設(shè)備線,非常麻煩,容易出現(xiàn)接線混亂的問題。基于紅外技術(shù)或無線射頻技術(shù)實(shí)現(xiàn)的無線鍵盤,可以有效解決這一問題,推動(dòng)計(jì)算機(jī)的無線化發(fā)展。
一、單片機(jī)無線鍵盤設(shè)計(jì)需求
首先從單片機(jī)的自身特點(diǎn)來看,較為先進(jìn)的AVR單片機(jī)在PIC和8051系列單片機(jī)的基礎(chǔ)上,作出了重大改進(jìn)。其內(nèi)嵌的程序存儲(chǔ)器可反復(fù)擦寫,便于產(chǎn)品開發(fā)和調(diào)試,也可以長期存儲(chǔ)數(shù)據(jù),內(nèi)容量較大。而且AVR單片機(jī)運(yùn)行速度快,功能相對(duì)完善,單次指令的執(zhí)行速度在50ns左右,耗電量僅為1uA~2.5mA。AVR單片機(jī)的外設(shè)也較為豐富,包括I2C、SPI、RTC、ADC、PWM和看門狗定時(shí)器等,在安全保護(hù)和密碼保護(hù)機(jī)制的保障下,AVR單片機(jī)具有較好的保密性和抗干擾性。AVR單片機(jī)作為一種較為先進(jìn)的單片機(jī),也設(shè)計(jì)過無線鍵盤,不過多數(shù)是基于紅外技術(shù)實(shí)現(xiàn)的。受紅外技術(shù)通信的限制,無線鍵盤和計(jì)算機(jī)之間的有效通信范圍僅為2m以內(nèi),容易給實(shí)際使用帶來不便。因此,為了進(jìn)一步完善AVR單片機(jī)的功能性能,本次研究擬采用無線射頻技術(shù),通過為AVR單片機(jī)設(shè)計(jì)無線鍵盤端口,支持無線鍵盤與計(jì)算機(jī)的連接,克服紅外技術(shù)僅能夠在短距離通訊的缺點(diǎn)[1]。
二、單片機(jī)無線鍵盤的設(shè)計(jì)方法分析
(一)系統(tǒng)組成
AVR單片機(jī)內(nèi)部擁有32個(gè)通用寄存器,34個(gè)中斷源,數(shù)據(jù)處理和指令相應(yīng)速度都非???。由于其內(nèi)部設(shè)置有上電啟動(dòng)計(jì)數(shù)器,系統(tǒng)復(fù)位上電后,可延遲MCU執(zhí)行程序的時(shí)間,其目的是等到系統(tǒng)電源和外部電路穩(wěn)定后再開始工作,以確保單片機(jī)運(yùn)行的穩(wěn)定性。單片機(jī)無線鍵盤的設(shè)計(jì),也需要從單片機(jī)特點(diǎn)出發(fā),保證無線鍵盤的適用性。無線鍵盤系統(tǒng)主要由常規(guī)102鍵ps/2鍵盤和兩個(gè)AVR單片機(jī)組成,此外,還包含一個(gè)發(fā)射裝置和一個(gè)接收裝置。無線鍵盤總體可分為兩大部分,其一是計(jì)算機(jī)端,包括計(jì)算機(jī)、單片機(jī)和接收裝置,其二是鍵盤端,包括鍵盤、單片機(jī)和發(fā)射裝置。其中,計(jì)算機(jī)端的單片機(jī)負(fù)責(zé)連接計(jì)算機(jī)和接收裝置,鍵盤端的單片機(jī)負(fù)責(zé)連接鍵盤和發(fā)射裝置,從而實(shí)現(xiàn)系統(tǒng)內(nèi)部的通訊功能[2]。
(二)硬件設(shè)計(jì)
根據(jù)上述系統(tǒng)組成結(jié)構(gòu),在進(jìn)行硬件設(shè)計(jì)時(shí),可分為計(jì)算機(jī)端電路和鍵盤端電路兩部分進(jìn)行。其中,計(jì)算機(jī)端電路中的計(jì)算機(jī)采用6針標(biāo)準(zhǔn)接頭連接單片機(jī),同時(shí)為單片機(jī)及射頻接收裝置供電。單片機(jī)PORTA第5引腳連接時(shí)鐘線,第4引腳連接數(shù)據(jù)線。需要為這兩個(gè)引腳設(shè)置上拉電阻輸入端口,確??臻e時(shí)鐘線和數(shù)據(jù)線能夠被拉到高電平。此外,PORTA第7引腳要串聯(lián)一個(gè)510Ω電阻,然后與時(shí)鐘線連接,第6引腳同樣串聯(lián)一個(gè)510Ω電阻,與數(shù)據(jù)線連接。在此情況下,可以利用第7和第6引腳將數(shù)據(jù)線、時(shí)鐘線下拉到低電平。采用這種設(shè)計(jì)方法可防止第4和第5引腳短接到地導(dǎo)致引腳被燒毀。在此基礎(chǔ)上,采用射頻接收裝置負(fù)責(zé)接收無線鍵盤信息,然后發(fā)送到單片機(jī)。
鍵盤端電路設(shè)計(jì)采用6針標(biāo)準(zhǔn)插座連接單片機(jī),單片機(jī)PORTD第7引腳連接數(shù)據(jù)線,第17引腳連接時(shí)鐘線,即將時(shí)鐘線連接在單片機(jī)外部中斷端口上,當(dāng)其出現(xiàn)下降沿信號(hào)時(shí),會(huì)觸發(fā)外部中斷。單片機(jī)將接收到的1位數(shù)據(jù)通過TXD引腳發(fā)送給射頻發(fā)射裝置,由射頻發(fā)射裝置將數(shù)據(jù)發(fā)送給計(jì)算機(jī)端,完成一次通訊過程。
(三)軟件設(shè)計(jì)
單片機(jī)無線鍵盤的軟件設(shè)計(jì)同樣分為計(jì)算機(jī)端和無線鍵盤端兩個(gè)部分。首先從應(yīng)用需求來看,軟件功能應(yīng)包含數(shù)據(jù)輸入、數(shù)據(jù)顯示、數(shù)據(jù)接收處理和發(fā)送等。因此要為系統(tǒng)設(shè)計(jì)對(duì)應(yīng)的數(shù)據(jù)接收、發(fā)送、顯示程序等??刹捎肅語言進(jìn)行編程實(shí)現(xiàn),總體采用模塊化設(shè)計(jì)方法,確保各功能模塊相對(duì)獨(dú)立,方便以后的功能維護(hù)及擴(kuò)展。從計(jì)算機(jī)端軟件設(shè)計(jì)情況來看,單片機(jī)軟件的主要功能是從UART口進(jìn)行數(shù)據(jù)接收,每個(gè)字節(jié)的數(shù)據(jù)包含一串0xAA初始化字節(jié)流,接收裝置可自動(dòng)調(diào)節(jié)增益,完成輸入數(shù)據(jù)處理工作。初始化字節(jié)流之后是0xFF字節(jié),代表下一個(gè)字節(jié)為有效數(shù)據(jù)。在利用軟件進(jìn)行處理時(shí),要不間斷的查詢UART,確定是否有新的接收數(shù)據(jù),然后利用狀態(tài)機(jī)對(duì)接收數(shù)據(jù)進(jìn)行解碼。
鍵盤端的軟件設(shè)計(jì)重點(diǎn)應(yīng)完成兩項(xiàng)任務(wù),其一是在鍵盤讀取數(shù)據(jù),其二是將讀取的數(shù)據(jù)發(fā)送至信號(hào)發(fā)射裝置。其中,鍵盤讀取數(shù)據(jù)主要是通過采集敲擊前盤時(shí)產(chǎn)生的時(shí)鐘信號(hào),時(shí)鐘信號(hào)變低,則響應(yīng)中斷,自動(dòng)從數(shù)據(jù)線上讀取1字節(jié)的數(shù)據(jù)。為保證數(shù)據(jù)讀取的準(zhǔn)確性,可采用接收裝置的增益控制功能,同樣設(shè)置0xAA初始化字節(jié)流和1個(gè)0xFF字節(jié)。并采用定時(shí)器跟蹤數(shù)據(jù)發(fā)送時(shí)間,若未在25毫秒內(nèi)成功發(fā)送,則發(fā)射裝置循環(huán)發(fā)送0xAA和0xFF。通過采用上述軟硬件設(shè)計(jì)方案,可由單片機(jī)接口和普通ps/2鍵盤構(gòu)成無線鍵盤,由于采用射頻技術(shù),能夠克服短距離通訊的缺點(diǎn),并完整實(shí)現(xiàn)數(shù)據(jù)傳輸和指令傳輸過程。
結(jié)束語:綜上所述,單片機(jī)無線鍵盤的設(shè)計(jì)能夠滿足鍵盤輸入的基本功能需求,在射頻技術(shù)的支持下,通過無線鍵盤輸入數(shù)據(jù)和指令,不會(huì)產(chǎn)生數(shù)據(jù)丟失的問題,穩(wěn)定性較強(qiáng),時(shí)延較低,基本達(dá)到了單片機(jī)無線鍵盤設(shè)計(jì)的各方面要求,具有一定的實(shí)用價(jià)值。
參考文獻(xiàn):
[1]劉濤,劉娜.單片機(jī)的無線鍵盤設(shè)計(jì)探究[J].南方農(nóng)機(jī),2019,50(02):207.
[2]肖趙棟,馬朝興,郝莉.一種實(shí)用的無線鍵盤鼠標(biāo)轉(zhuǎn)換器的設(shè)計(jì)[J].微計(jì)算機(jī)信息,2010,26(08):93-95.