基于BC7281的墨斗操作臺(tái)系統(tǒng)設(shè)計(jì)
2.3顯示驅(qū)動(dòng)與鍵盤(pán)掃描電路
墨斗操作臺(tái)控制系統(tǒng)采用 BC7281芯片來(lái)掃描鍵盤(pán)和驅(qū)動(dòng)數(shù)碼管等顯示, BC7281是 16位 LED數(shù)碼管顯示及 64鍵鍵盤(pán)接口專(zhuān)用控制芯片。通過(guò)外接移位寄存器 74LS164或 74LS595,BC7281最多可以控制 16位數(shù)碼管或 128只獨(dú)立的 LED顯示,其驅(qū)動(dòng)輸出極性及輸出時(shí)序均為軟件可控,可與各種外部電路配合,適用于任何尺寸的數(shù)碼管。BC7281的各位數(shù)碼管還可獨(dú)立按不同的譯碼或不譯碼方式顯示,因其內(nèi)部具有閃爍開(kāi)關(guān)控制寄存器及閃爍速度控制寄存器,可獨(dú)立控制各位數(shù)碼管的閃爍屬性及閃爍頻率。BC7281最多可連接 64鍵(8x8)的矩陣鍵盤(pán),內(nèi)部具有去抖動(dòng)功能,并有 2種鍵盤(pán)工作模式可供選擇。 BC7281采用高速 2線接口與 MCU進(jìn)行通信,只占用很少的 I/0口資源和主機(jī)時(shí)間 。
在本系統(tǒng)中每個(gè)顯示驅(qū)動(dòng)與鍵盤(pán)掃描模塊由一個(gè)BC7281芯片與兩個(gè) 74LS174移位寄存器配合,控制三組按鍵與顯示單元,系統(tǒng)中一共用到 8個(gè)顯示驅(qū)動(dòng)與鍵盤(pán)掃描模塊。 BC7281與 PIC單片機(jī)之間的通訊是采用 2線高速串行接口,這兩個(gè)連線分別是數(shù)據(jù)線 DAT和同步時(shí)鐘線 CLK,其中 DAT為雙向數(shù)據(jù)傳輸線,BC7281既用該線從 PIC單片機(jī)接收數(shù)據(jù),也用該線向 PIC單片機(jī)發(fā)送數(shù)據(jù)。BC7281的 DAT引腳為漏極開(kāi)路輸出結(jié)構(gòu),使用時(shí)須在該線上加 20K?左右的上拉電阻[5]。CLK引腳為串行時(shí)鐘接口的同步時(shí)鐘,由 PIC單片機(jī)控制,下降沿有效。
BC7281芯片的按鍵指示線 KEY與 PIC單片機(jī)的管腳直接相連,正常工作時(shí),如果有按鍵發(fā)生則 KEY線輸出低電平,PIC單片機(jī)檢測(cè)到 KEY線為低電平時(shí),從 BC7281內(nèi)的鍵值鎖存器讀出數(shù)值即可判斷發(fā)生的按鍵。
3 系統(tǒng)軟件設(shè)計(jì)
墨斗操作臺(tái)控制系統(tǒng)中 PIC單片機(jī)與 BC7281芯片之間的串行通訊采用軟件模擬的方式,對(duì) BC7281芯片的寫(xiě)數(shù)據(jù)操作是一次寫(xiě)入 2個(gè)字節(jié),第一個(gè)字節(jié)是地址信息,第二個(gè)字節(jié)是數(shù)據(jù)信息。對(duì) BC7281讀取數(shù)據(jù)操作由一個(gè)字節(jié)的寫(xiě)入操作和一個(gè)字節(jié)的數(shù)據(jù)讀取操作兩部分組成,字節(jié)寫(xiě)入時(shí)寫(xiě)入地址信息,數(shù)據(jù)讀取時(shí)讀取相應(yīng)地址內(nèi)的數(shù)據(jù)。BC7281芯片在驅(qū)動(dòng)數(shù)碼管顯示和監(jiān)測(cè)按鍵前需要進(jìn)行初始化,即對(duì) BC7281芯片的工作模式控制寄存器(地址 12H)進(jìn)行設(shè)置,本系統(tǒng)根據(jù)需要,在初始化時(shí)把 BC7281的工作模式控制寄存器設(shè)置為 0X8C,即移位寄存器模式設(shè)置為普通移位寄存器模式;鍵盤(pán)掃描模式設(shè)置為 KEY電平隨按鍵情況變化,有按鍵時(shí) KEY為低電平,無(wú)按鍵時(shí) KEY為高電平;閃爍模式設(shè)置為擴(kuò)展模式;顯示關(guān)閉模式設(shè)置為打開(kāi);掃描使能模式設(shè)置為掃描使能。
墨斗操作臺(tái)控制系統(tǒng)的主程序控制流程圖如圖 4所示:
系統(tǒng)上電后,首先進(jìn)行系統(tǒng)初始化,系統(tǒng)初始化包括各個(gè) I/O端口的初始化、中斷初始化、CAN總線初始化、BC7281芯片的初始化、與其他系統(tǒng)的通訊測(cè)試及向電機(jī)控制系統(tǒng)讀取各個(gè)墨鍵的位置并顯示等,然后系統(tǒng)進(jìn)入循環(huán)等待,如果有按鍵發(fā)生,則 PIC單片機(jī)從 BC7281的鍵值鎖存器中讀取按鍵信息,根據(jù)按鍵信息判斷按鍵種類(lèi)并進(jìn)行相應(yīng)的處理,將新的墨鍵位置信息顯示于操作臺(tái)面板上,并通過(guò) CAN總線傳遞給其他系統(tǒng),系統(tǒng)繼續(xù)進(jìn)入循環(huán)等待狀態(tài)。
4 總結(jié)
由墨斗操作臺(tái)控制系統(tǒng)、上位機(jī)系統(tǒng)和電機(jī)控制系統(tǒng)組成的墨斗控制系統(tǒng)已經(jīng)成功應(yīng)用到北人集團(tuán)生產(chǎn)的膠印機(jī)上,實(shí)際工作表明,膠印機(jī)的生產(chǎn)效率和生產(chǎn)質(zhì)量等得到了很大提高,墨斗操作臺(tái)控制系統(tǒng)表現(xiàn)出較好的性能。整個(gè)系統(tǒng)成本較低,具有很好的市場(chǎng)應(yīng)用前景。
評(píng)論