一種新穎的智能碼盤的研究
摘要:在此介紹了一種由極少硬件構成的簡易智能碼盤,該系統(tǒng)主要由單片機和拔碼開關組成,采用撥碼開關設置輸入數(shù)據(jù)量的位碼和數(shù)碼,通過外部中斷數(shù)據(jù)采集按鍵控制該位數(shù)據(jù)量的輸入,并由顯示器監(jiān)視,內(nèi)部E2PROM保存,同時通過串行口向用戶系統(tǒng)發(fā)送設置數(shù)據(jù)。故使用該碼盤用戶系統(tǒng)僅占用一個串行口或虛擬串行口就可實現(xiàn)16位BCD碼設置或64位二進制碼輸入,16位BCD碼可根據(jù)用戶需要分割為幾組,每組數(shù)據(jù)的位數(shù)也可任意定義,以滿足各種控制系統(tǒng)控制參數(shù)設置的需要。
關鍵詞:智能碼盤;16位BCD碼;撥碼開關;E2PROM
0 引言
在自動控制系統(tǒng)應用中,經(jīng)常需要設定控制目標參數(shù),這些參數(shù)一般由鍵盤或碼盤輸入,隨著工業(yè)自動化程度越來越高,各種碼盤的需求也逐漸增加。
很多學者研究了各式各樣的碼盤。他們大多是利用物理、電磁、生物、光學等原理,研制出撥鍵式、光電式及光柵式等碼盤。然而,這些碼盤都有一個共同的缺點,一個碼盤只能輸入一個數(shù)據(jù)位,當輸入量位數(shù)過多時,就需要多個碼盤,這樣將會帶來計算機接口數(shù)量不夠的矛盾,即輸入數(shù)據(jù)位數(shù)越多,硬件越多,占用CPU接口就越多,硬件體積大,成本高,系統(tǒng)結(jié)構復雜。
本文研究了一種簡易智能碼盤,只需占用系統(tǒng)CPU一個串行接口或2個普通輸入/輸出口(用虛擬串行口技術)就可實現(xiàn)16位BCD碼或者64位二進制碼輸入,不僅簡化了硬件電路,而且解決了當輸入數(shù)據(jù)位數(shù)過多時系統(tǒng)CPU接口不足的難題。
1 設計原理
該智能碼盤用8位撥碼開關實現(xiàn)數(shù)據(jù)輸入,其中高4位用于選擇輸入碼(BCD碼)的位數(shù),低4位用于設置BCD碼的大小。如設置第8位碼為7,則撥碼開關高4位設置為1000,低4位為0111,然后按一次采集按鈕即完成輸入。碼盤CPU將采集到的BCD碼存入相應的內(nèi)存,并轉(zhuǎn)存片內(nèi)E2PROM或FLASH內(nèi),然后再從串行口輸出供用戶設備使用(用戶CPU串口采樣)。智能碼盤系統(tǒng)框圖如圖1所示。
為了進一步降低成本,當用戶系統(tǒng)不大的情況下,也可選擇用戶CPU替代碼盤CPU。即利用用戶CPU的一個普通8位輸入/輸出口和一個外部中斷即可完成輸入控制參數(shù)設置功能。系統(tǒng)框圖如圖2所示。輸入完畢,所有撥碼開關處于斷開狀態(tài),該口即可恢復其他輸入或輸出口功能,即不占用用戶系統(tǒng)接口,提高了接口使用效率。
評論