利用單片機改造鍵盤(pán)接口
1 引 言
本文引用地址:http://dyxdggzs.com/article/172176.htm80年代由國外引進(jìn)的這種數控車(chē)床,原控制面板是由一臺終端機,一個(gè)終端機專(zhuān)用鍵盤(pán)和一個(gè)用于控制車(chē)床的觸模鍵盤(pán)組成。經(jīng)過(guò)多年的使用,控制面板和專(zhuān)用鍵盤(pán)均出現了故障,該車(chē)床已停止使用。而該控制系統使用的終端機及其專(zhuān)用鍵盤(pán)又很特殊,國內市場(chǎng)無(wú)此類(lèi)型的產(chǎn)品可直接替換,如果要恢復系統的正常工作,必須研制替代產(chǎn)品。為此在對其控制系統電路的工作原理進(jìn)行充分分析后,決定對其控制面板上的轉換接口板進(jìn)行全面改造,下面就新轉換接口板中的硬件和軟件進(jìn)行介紹。
2 原控制面板的基本工作原理
在正常情況下,通過(guò)觸模鍵盤(pán)輸入到終端機的數據通過(guò)RS—232口發(fā)送到車(chē)床的控制主機,再由控制主機控制車(chē)床進(jìn)行工件的加工。由于觸模鍵盤(pán)是一種特殊的鍵盤(pán),要求該鍵盤(pán)發(fā)送到終端機的數據為一組特殊代碼,以區別于終端機專(zhuān)用鍵盤(pán)所產(chǎn)生的代碼。觸模鍵盤(pán)只對車(chē)床的控制起作用,不能對終端機進(jìn)行有關(guān)的參數設置,因此必須用專(zhuān)用鍵盤(pán)對終端機進(jìn)行操作。專(zhuān)用鍵盤(pán)可以對終端機的操作方式、參數及復雜計算進(jìn)行設定。設備工作時(shí)兩個(gè)鍵盤(pán)可以同時(shí)操作,它們采用了如圖 1所示的連接方法。
3 新轉換接口板的設計原理
首先選擇了一種性能優(yōu)良、工作穩定可靠的國產(chǎn)終端機(BG— 200中西文圖形顯示終端機)代替原來(lái)型號特殊的終端機。新終端機的鍵盤(pán)采用的是一種普通的PC/XT鍵盤(pán),由于該終端機的鍵盤(pán)接口與原終端機接口完全不一樣,故原轉換接口板已無(wú)法使用,需要重新研制新的轉換接口板。在研制新接口的時(shí)候考慮到其使用場(chǎng)合的特殊性,需要接口板工作穩定可靠,同時(shí)具有二次開(kāi)發(fā)的可能性(如果需要還可更換其它類(lèi)型的終端機,鍵盤(pán)接口也可能需要改變)。另外,設計時(shí)為使硬件線(xiàn)路盡量簡(jiǎn)單,在鍵盤(pán)串行數據的處理上采用了軟件方式(這種方法也為二次開(kāi)發(fā)提供了可能性)。其硬件電路工作原理如圖2所示。
從圖2中可以看出,新板與原板完成的功能是相同的,均要完成兩個(gè)鍵盤(pán)代碼的接收,并將接收到的代碼向終端機發(fā)送。PC/XT鍵盤(pán)連接的鍵盤(pán)接口的設計有別于傳統設計方法,設計時(shí)沒(méi)有采用以硬件方式實(shí)現鍵盤(pán)數據的接收和發(fā)送,而是采用軟硬件結合的方法實(shí)現鍵碼的接收與發(fā)送,從而可以使鍵盤(pán)接口電路簡(jiǎn)化很多。觸模鍵盤(pán)采作了行/列掃描方式讀取鍵碼,并通過(guò)查表獲得對應的兩字節代碼。在轉接板的處理器選擇時(shí),根據所使用的具體場(chǎng)合,要求處理器既具有較強的位處理功能,以實(shí)現數據的串/并、并/串轉換,同時(shí)在構造觸模鍵盤(pán)電路時(shí)線(xiàn)路應盡可能的簡(jiǎn)化,而且還要求其工作穩定可靠。綜合以上各種因素,決定選擇 AT89C52單片機作為處理器。該處理器由于其自身具有512字節的RAM,8K的EPROM,4個(gè)I/O口,可處理2個(gè)外部中斷源信號,具有能夠滿(mǎn)足設計所要求的各種功能,可以使硬件設計線(xiàn)路大大簡(jiǎn)化,因此AT89C52單片機應用在該場(chǎng)合是一種比較理想的器件。下面就各部分電路及相關(guān)軟件進(jìn)行介紹。
3.1 觸模鍵盤(pán)的掃描原理
如圖3所示。采用74LS159和74LS150芯片結合單片機的P2口和P33引腳,完成對觸模鍵盤(pán)的掃描和鍵碼的讀取工作,再通過(guò)軟件進(jìn)行代碼變換,形成雙碼。單片機的P33引腳用于檢查鍵盤(pán)的狀態(tài)(當該線(xiàn)狀態(tài)為低電平時(shí)表示無(wú)鍵被按下,為高電平時(shí)表示有鍵被按下)。具體的掃描原理是由軟件通過(guò)單片機P2口的低4位輸出一個(gè)十六進(jìn)制代碼,通過(guò)74LS159十六選一譯碼電路產(chǎn)生一為低電平的行掃描信號。然后再通過(guò)P2口上的高4位輸出一個(gè)十六進(jìn)制的列掃描碼,通過(guò)74LS150十六選一電路讀出對應列線(xiàn)的狀態(tài)。當74LS150的Q信號有效時(shí)說(shuō)明行列交點(diǎn)上的鍵被按下,在A(yíng)T89C52芯片中形成被按下鍵的鍵碼,并由此通過(guò)查表形成特殊的雙碼后送入接收緩存,由發(fā)送程序將接收緩存中的代碼發(fā)送給終端機。對應的軟件程序流程如圖4所示。
3.2 與PC/XT鍵盤(pán)連接的轉換接口完成的工作
PC/XT鍵盤(pán)代碼的接收是通過(guò)觸發(fā)AT89C52單片機的外部中斷,由中斷處理程序完成一次對鍵盤(pán)輸入代碼的接收。PC/XT鍵盤(pán)的數據接收采用了軟件與硬件相結合的處理方法,其原理如圖5所示。
當PC/XT鍵盤(pán)的某個(gè)鍵被按下時(shí),鍵盤(pán)的時(shí)鐘線(xiàn)產(chǎn)生鍵盤(pán)時(shí)鐘信號CLK,在CLK的第一個(gè)下降沿時(shí)使 AT89C52的外部中斷源INTO有效觸發(fā)外部中斷,AT89C52響應中斷后,進(jìn)入中斷處理程序,轉換接口板開(kāi)始接收鍵盤(pán)數據。PC/XT鍵盤(pán)數據由 9位二進(jìn)制數組成,在每個(gè)CLK下降沿時(shí)讀取DATA線(xiàn)上的數值,并對讀到的數值依次進(jìn)行左移操作。當連續讀取了9位數據后,第9位移入進(jìn)位位(最先得到的是起始位),若為“1”則說(shuō)明本次接收合法,將所接收的一個(gè)字節數據送入接收緩存單元;若為“0”信號,則說(shuō)明本次數據接收非法,放棄本次操作。產(chǎn)生外部中斷時(shí)執行的中斷處理程序流程如圖6所示。
3.3 與終端機相連的接口完成的工作
兩個(gè)鍵盤(pán)向終端機發(fā)送的數據都是通過(guò)與終端機相連的接口實(shí)現的,該接口的工作流程實(shí)際上就是采用了PC/XT鍵盤(pán)數據輸出的方式,由軟件對待發(fā)送數據進(jìn)行并→串轉換,在時(shí)鐘信號的同步下,將數據向終端機輸出,其軟件流程如圖7所示。
3.4 主控程序流程 參見(jiàn)圖8。
4 結束語(yǔ)
該接口板的重新設計,在充分利用了單片機資源的情況下,依靠軟硬件結合的方法實(shí)現了鍵盤(pán)接口的設計,以及觸模鍵盤(pán)的設計,使線(xiàn)路的集成度有了很大提高,減化了轉換接口板的硬件線(xiàn)路,提高了線(xiàn)路的工作穩定性。同時(shí)為鍵盤(pán)接口的升級提供了基本的硬件環(huán)境。該設計已被應用到實(shí)際中,其操作方法同原來(lái)完全相同,控制效果也完全相同,達到了設計要求,運行結果良好,獲得了較好的社會(huì )效益和經(jīng)濟效益。該技術(shù)也可應用于對類(lèi)似數控車(chē)床控制面板的改造或使用雙鍵盤(pán)的控制面板設計,具有一定的推廣應用價(jià)值。
參考文獻
1 何立民.單片機應用系統設計.北京:航空航天大學(xué)出版社,1998
2 陳建鐸.8098單片機原理及應用技術(shù).北京:電子工業(yè)出版社,1995
3 張寶林.數控技術(shù).北京:機械工業(yè)出版社,1997
DIY機械鍵盤(pán)相關(guān)社區:機械鍵盤(pán)DIY
單片機相關(guān)文章:單片機教程
單片機相關(guān)文章:單片機視頻教程
單片機相關(guān)文章:單片機工作原理
評論