單片機(jī)遙控鍵音頻感應(yīng)原理及電路結(jié)構(gòu)
單片機(jī)問世以來,在儀器、儀表、智能控制領(lǐng)域得到了廣泛應(yīng)用。絕大多數(shù)單片機(jī)應(yīng)用系統(tǒng)(SCAS)都少不了鍵輸入控制。通常使用的單片機(jī)系統(tǒng)按鍵可裝在面板上,但對(duì)于工作于控制現(xiàn)場以及高低溫、多灰塵場合的單片機(jī)應(yīng)用系統(tǒng),按鍵的壽命將會(huì)縮短,故障率也會(huì)提高。為提高單片機(jī)應(yīng)用系統(tǒng)鍵輸入的可靠性及耐久性,設(shè)計(jì)了單片機(jī)遙控鍵輸入電路。鍵碼是通過音頻感應(yīng)方式輸入SCAS系統(tǒng)的;且可實(shí)現(xiàn)一機(jī)多用,即一個(gè)鍵盤遙控器可對(duì)任意多個(gè)相同的SCAS系統(tǒng)進(jìn)行鍵輸入操作。
音頻感應(yīng)原理及電路結(jié)構(gòu)
電路結(jié)構(gòu)分為遙控器和譯碼接收電路兩部分。其結(jié)構(gòu)如圖所示。
遙控器部分對(duì)16個(gè)按鍵進(jìn)行編碼,對(duì)應(yīng)每個(gè)按鍵都產(chǎn)生了一個(gè)唯一的雙音頻信號(hào)。此雙音頻信號(hào)由揚(yáng)聲器以聲音形式發(fā)出。在譯碼接收電路中,話筒將遙控器發(fā)出的雙音頻聲音信號(hào)接收下來,并送至譯碼器電路。譯碼器電路進(jìn)行正確譯碼后輸出一個(gè)二進(jìn)制代碼,此碼即是由遙控器輸入的按鍵代碼。此外,譯碼器還同時(shí)輸出一個(gè)正確譯碼的標(biāo)志信號(hào),由此信號(hào)向MCU發(fā)出中斷請(qǐng)求,MCU就可讀取鍵碼并根據(jù)代碼執(zhí)行相應(yīng)的程序模塊。
二、電路設(shè)計(jì)原理
1.硬件電路設(shè)計(jì)
遙控鍵輸入電路如圖所示。
電路核心是雙音多頻(DTMF)編解碼芯片CSC5087和SC8870。CSC5087作為DTMF信號(hào)編碼器,可根據(jù)不同的按鍵產(chǎn)生一組雙音頻信號(hào)cos 27πft+cos 2πfcHt。國際電報(bào)電話咨詢委員會(huì)(CCITT)和我國的標(biāo)準(zhǔn)規(guī)定,按鍵與高、低頻組頻率的組合關(guān)系如表3-1所列。如按下按鍵6,則發(fā)出的DTMF信號(hào)頻率為fL=770Hz,fH=1 477 Hz。此DTMF信號(hào)經(jīng)音頻功放LM386放大后,由揚(yáng)聲器轉(zhuǎn)換為聲音信號(hào)發(fā)出。
表1 按鍵與DTMF信號(hào)編碼對(duì)照表
由話筒接收并放大的DTMF信號(hào)經(jīng)SC8870解碼,將每一個(gè)DTMF信號(hào)譯成一個(gè)4位二進(jìn)制代碼輸出,16個(gè)DTMF信號(hào)分別對(duì)應(yīng)0000~1111共16個(gè)二進(jìn)制代碼,其對(duì)應(yīng)關(guān)系如表所列。如:對(duì)遙控器發(fā)出頻率為fL=770 Hz和fH=1477 Hz的DTMF信號(hào),則SC8870譯碼后輸出0110代碼。
2SC8870譯碼表
SC8870有一延遲控制輸出端CID,若檢測到一有效的DTMF信號(hào),控制輸入端STO電平超過門限電平VTst,則輸入代碼被更新,此時(shí)CID輸出由低電平變?yōu)楦唠娖?;若STO電平低于V Tst則CID返回至低電平。而STO電平則由初始控制輸出信號(hào)ECO決定:當(dāng)SC8870檢測到一有效的DTMF信號(hào)時(shí),ECO首先變?yōu)楦唠娖?,再?jīng)電阻使STO電平升高;當(dāng)無輸入的DTMF信號(hào)或輸入信號(hào)連續(xù)失真時(shí),ECO輸出低電平,這樣STO也為低電平,CID輸出低電平。利用CID信號(hào)作為MC68HC705 MCU的中斷請(qǐng)求信號(hào),因MCU的中斷觸發(fā)為下降沿觸發(fā),故將CID信號(hào)經(jīng)反相器反相后接入MCU的中斷請(qǐng)求輸入端IQR。
SC8870的DOi~D04分別接MCU的口線PAo~PA3,三態(tài)數(shù)據(jù)輸出允許控制端EN接高電平,使D01~D04保持上次對(duì)DTMF信號(hào)的譯碼輸出代碼,這樣MCU隨時(shí)可讀取輸入的鍵值。
2.鍵輸入中斷和鍵碼接收軟件
軟件流程及程序清單如圖所示。
MCU由中斷響應(yīng)程序接收鍵碼,返回主程序后,主程序根據(jù)鍵碼決定執(zhí)行何種功能模塊。
三、應(yīng)用
由于DTMF信號(hào)具有編、譯碼可靠性高,傳輸誤碼率低等特性,因此本文所介紹的鍵輸入電路具有抗干擾能力強(qiáng)的特點(diǎn),已成功地應(yīng)用于城市路燈微機(jī)監(jiān)控系統(tǒng)。所有開關(guān)柜測控子系統(tǒng)的鍵碼都采用這種方式輸入。它們共用一個(gè)遙控器,這樣使系統(tǒng)抗干擾性、抗灰塵、抗老化等性能都大為改善。