李紅剛 張素萍
摘 要: 針對目前傳統(tǒng)人機(jī)接口設(shè)計(jì)存在的缺點(diǎn),提出以STC單片機(jī)作為主控芯片,ZLG7289A和JR8629作為顯示和鍵盤控制芯片的人機(jī)接口設(shè)計(jì)方案。同時(shí),給出了該方案詳細(xì)的硬件和軟件設(shè)計(jì)。采用本設(shè)計(jì)方案的人機(jī)接口具有體積小、集成度高、設(shè)計(jì)簡單、編程方便及實(shí)用性強(qiáng)等特點(diǎn)。經(jīng)實(shí)踐驗(yàn)證,運(yùn)行效果良好,對儀器儀表、自動(dòng)測量與控制等其他領(lǐng)域的人機(jī)接口設(shè)計(jì)具有一定的參考價(jià)值。
關(guān)鍵詞: ZLG7289; JR8629; 人機(jī)接口; 高頻電刀
中圖分類號: TN919?34; TP273.5 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2014)10?0096?05
Abstract: Aiming at the shortcomings of the traditional human?computer interface, a design scheme of man?machine interface is put forward by using STC single chip microcontroller as the main control chip, ZLG7289A and JR8629 as display and keyboard control chips. At the same time, the hardware and software design of scheme is given in detail. The man?machine interface designed by this method has the characteristics of small size, high integration, simple design, convenient programming, strong practicability, etc. The actual verification result shows that the human?computer interface has good operation effect and a certain reference value for man?machine interface design in other fields such as automatic measurement and control of instruments and apparatuses.
Keywords: ZLG7289A; JR8629; man?machine interface; high?frequency electric knife
人機(jī)接口作為現(xiàn)代智能化儀器儀表不可缺少的組成部分,在實(shí)際工作中發(fā)揮著無可替代的作用[1]。傳統(tǒng)的人機(jī)接口(鍵盤、顯示)通常采用8255,8155等并行擴(kuò)展芯片或者可編程鍵盤、顯示驅(qū)動(dòng)芯片INTEL 8279進(jìn)行人機(jī)接口設(shè)計(jì)。而且在人機(jī)接口設(shè)計(jì)中,按鍵通常采用機(jī)械按鍵進(jìn)行設(shè)計(jì),機(jī)械按鍵長時(shí)間使用,會出現(xiàn)按鍵反應(yīng)不靈敏或失效現(xiàn)象。傳統(tǒng)人機(jī)接口設(shè)計(jì)方案存在占用微控制器IO資源較多、硬件電路設(shè)計(jì)復(fù)雜、功耗較高、體積大、不易編程等缺點(diǎn)。鑒于此,提出基于ZLG7289A和JR8629的人機(jī)接口設(shè)計(jì)方案,從而實(shí)現(xiàn)一種電路設(shè)計(jì)簡單、編程方便及低成本的人機(jī)接口設(shè)計(jì)。
1 系統(tǒng)總體設(shè)計(jì)方案
由圖1可知,系統(tǒng)以STC單片機(jī)作為系統(tǒng)人機(jī)接口的控制核心,由觸摸按鍵控制芯片JR8269對觸摸按鍵信息進(jìn)行采集,將采集信息的處理結(jié)果傳送給ZLG7289A,由ZLG7289A對系統(tǒng)顯示及按鍵進(jìn)行統(tǒng)一管理,STC單片機(jī)與ZLG7289A之間采用SPI總線進(jìn)行數(shù)據(jù)通信。
2 系統(tǒng)所用芯片介紹
2.1 ZLG7289A芯片介紹[2]
ZLG7289A 是廣州周立功單片機(jī)發(fā)展有限公司自行設(shè)計(jì)的具有SPI 串行接口功能的可同時(shí)驅(qū)動(dòng)8位共陰式數(shù)碼管或64只獨(dú)立LED的智能顯示驅(qū)動(dòng)芯片,該芯片同時(shí)還可連接多達(dá)64鍵的鍵盤矩陣,單片機(jī)即可完成LED 顯示﹑鍵盤接口的全部功能。ZLG7289A 內(nèi)部含有譯碼器,可直接接受BCD碼或16進(jìn)制碼,并同時(shí)具有2種譯碼方式,此外,還具有多種控制指令如消隱、閃爍、左移、右移、段尋址等。ZLG7289A 具有片選信號,可方便地實(shí)現(xiàn)多于8 位的顯示或多于64 鍵的鍵盤接口。其主要特點(diǎn)如下:
(1) 串行接口,無需外圍元件可直接驅(qū)動(dòng)LED;
(2) 各位獨(dú)立控制譯碼/不譯碼及消隱和閃爍屬性;
(3) 循環(huán)左移/循環(huán)右移指令;
(4) 具有段尋址指令,方便控制獨(dú)立LED;
(5) 64鍵鍵盤控制器,內(nèi)含去抖動(dòng)電路;
(6) 不接數(shù)碼管而僅使用鍵盤管理功能時(shí),工作電流可降至3 mA;
(7) 與微控制器之間采用SPI串行總線接口,操作方便,占用I/O資源少。
2.2 JR8629芯片介紹[3]
JR86296是8鍵電容式觸摸按鍵專用檢測傳感器IC。采用最新一代電荷檢測技術(shù),利用操作者的手指與觸摸按鍵焊盤之間產(chǎn)生電荷電平來進(jìn)行檢測,通過檢測電荷的微小變化來確定手指接近或者觸摸到感應(yīng)表面。沒有任何機(jī)械部件,不會磨損,其感測部分可以放置到任可絕緣(通常為玻璃或塑料材料)的后面,很容易制成與周圍環(huán)境相密封的鍵盤。面板圖案設(shè)計(jì)靈活,按鍵大小、形狀自由選擇,外形美觀,而且不褪色、不變形、經(jīng)久耐用。從根本上改變了各種金屬面板以及機(jī)械面板無法達(dá)到的效果。其主要特點(diǎn)如下:
(1) 工作電壓范圍寬:2.0 ~5.5 V。
(2) 低功耗:80 μA。
(3) 三合一功能整合:
直接模式輸出:8個(gè)觸摸按鍵輸入,8個(gè)并行輸出口;
串行模式輸出:8個(gè)觸摸按鍵輸入,以串行方式輸出數(shù)據(jù);
矩陣模式輸出:8個(gè)觸摸按鍵輸入,以2×4或3×3矩陣方式輸出控制。
(4) 可以通過外部option來選擇高電平或者低電平輸出。
(5) 穩(wěn)定的人體觸摸檢測引擎CDC,更優(yōu)化的算法,使系統(tǒng)更穩(wěn)定更可靠。
3 系統(tǒng)設(shè)計(jì)
3.1 系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)硬件設(shè)計(jì)原理圖如圖2所示。
3.1.1 ZLG7289A與微控制器的連接方式
系統(tǒng)采用基于8051內(nèi)核的單時(shí)鐘/機(jī)器周期、高性能、低功耗STC單片機(jī)STC12C5A60S2作為系統(tǒng)的控制核心,該微控制器內(nèi)置FLASHM,SRAM,E2PROM、定時(shí)器/計(jì)數(shù)器、UART、串口2、I/O接口、8通道10位A/D轉(zhuǎn) 換、SPI,PCA、看門狗以及串口在線編程等模塊,具有體積小、集成度高、易擴(kuò)展、可靠性高、中斷處理能力強(qiáng)等特點(diǎn),可稱得上是一個(gè)片上系統(tǒng),能夠方便地完成普通微控制器的功能[4?5]。ZLG7289A與微控制器的接口采用3線制SPI 串行總線,由CS,CLK 和DIO這3 根信號線組成。CS和CLK 是輸入信號,由微控制器提供。DIO信號是雙向的,必須接到微控制器上具有雙向功能的I/O端口上。本系統(tǒng)中ZLG7289A的[CS],CLK,DATA,[KEY]引腳分別與STC12C5A60S2的P2.7,P2.6,P2.5,P3.2相連接。
3.1.2 ZLG7289A與LED示燈及數(shù)碼管的連接方式
ZLG7289A的SA?SG,DP分別與6位LED數(shù)碼管的段碼a?g,dp直接進(jìn)行連接, DIG0 ?DIG5分別與6位LED數(shù)碼管的位選信號COM直接進(jìn)行連接。在實(shí)際應(yīng)用中,ZLG7289A 應(yīng)連接共陰式數(shù)碼管,無需用到的數(shù)碼管和鍵盤可以不連接,省去數(shù)碼管和對數(shù)碼管設(shè)置消隱屬性均不會影響鍵盤的使用。系統(tǒng)原理圖中的R11~R18 是限流電阻,典型值是270 Ω。如果要增大數(shù)碼管的亮度,可以適當(dāng)減小電阻值,最低200 Ω。
3.1.3 ZLG7289A與外部晶振的連接方式
ZLG7289A需要一外接晶體振蕩電路供系統(tǒng)工作,其典型值分別為F=16 MHz,C=15 pF,本系統(tǒng)設(shè)計(jì)值為F=8 MHz,C=15 pF,如果芯片無法正常工作,請首先檢查此振蕩電路。在印刷電路板布線時(shí)所有元件,尤其是振蕩電路的元件,應(yīng)盡量靠近ZLG7289A,并盡量使電路聯(lián)線最短。
3.1.4 ZLG7289A與觸摸按鍵控制芯片JR8629連接方式
3.1.5 ZLG7289A的復(fù)位端設(shè)計(jì)要求
ZLG7289A的RST復(fù)位端在一般應(yīng)用情況下,可以直接和VCC相連,在需要較高可靠性的情況下,可以連接一外部復(fù)位電路或直接由微處理器控制。因?yàn)樾酒芍苯域?qū)動(dòng)LED數(shù)碼管顯示,電流較大,且為動(dòng)態(tài)掃描方式,為盡量消除電源噪聲干擾, 提高電路抗干擾能力,應(yīng)用時(shí)可在電源的正負(fù)極并入一個(gè)10 μF 的電容。
3.2 系統(tǒng)軟件設(shè)計(jì)
3.2.1 SPI串行接口介紹[2,6]
ZLG7289A采用串行方式與微控制器通信, 串行數(shù)據(jù)從DATA引腳送入芯片, 并由CLK 端同步。當(dāng)片選信號變?yōu)榈碗娖胶螅?DATA引腳上的數(shù)據(jù)在CLK 引腳的上升沿被寫入ZLG7289A的緩沖寄存器。
ZLG7289A 的指令結(jié)構(gòu)有3種類型:
(1) 不帶數(shù)據(jù)的純指令,指令的寬度為8個(gè)bit, 即微處理器需發(fā)送8個(gè)CLK脈沖。
(2) 帶有數(shù)據(jù)的指令,寬度為16個(gè)bit,即微處理器需發(fā)送16個(gè)CLK 脈沖。
(3) 讀取鍵盤數(shù)據(jù),指令寬度為16個(gè)bit,前8個(gè)為微處理器發(fā)送到ZLG7289A的指令,后8個(gè)bit為ZLG7289A返回的鍵盤代碼,執(zhí)行此指令時(shí),ZLG7289A的DATA端在第9個(gè)CLK脈沖的上升沿變?yōu)檩敵鰻顟B(tài),并與第16個(gè)脈沖的下降沿恢復(fù)為輸入狀態(tài),等待接收下一個(gè)指令。
具體指令及說明在參考文獻(xiàn)[1] 中有詳細(xì)介紹。3種控制指令的串行接口時(shí)序如圖3~圖5所示。
4 系統(tǒng)ZLG7289A和JR8629使用注意事項(xiàng)
(1) 由于在實(shí)際工作中高頻信號對觸摸按鍵的影響較大,所以在使用過程中常會出現(xiàn)按鍵失效現(xiàn)象。為此,觸摸按鍵控制芯片JR8629的VCC可由STC單片機(jī)的一個(gè)I/O端口進(jìn)行控制,本系統(tǒng)選用STC單片機(jī)的P5.1進(jìn)行控制,在完成一次高頻能量輸出之后,先關(guān)閉JR8629的VCC, 然后延時(shí)100 ms,再開啟JR8629的VCC,這樣可有效避免觸摸按鍵失靈現(xiàn)象。
(2) ZLG7289要跟著控制面板走。在實(shí)際應(yīng)用中,儀器儀表的控制面板和主機(jī)板往往是分離的,它們之間有幾十厘米的距離,要用長長的排線相連。鍵盤和數(shù)碼管一般都位于控制面板上,主控制器則在主機(jī)板上。在設(shè)計(jì)時(shí)注意:ZLG7289一定要跟著控制面板走,而不要放在主機(jī)板上。這樣可以有效避免ZLG7289A放在主機(jī)板上,走線過長,引起的顯示混亂、按鍵失靈等故障現(xiàn)象。
(3) 復(fù)位引腳可以由主控制器直接控制。在實(shí)際工作應(yīng)用中,為了增強(qiáng)抗干擾能力,建議采用獨(dú)立的穩(wěn)定直流電源給ZLG728A供電,VCC與GND之間的電容也要相應(yīng)加大。另外復(fù)位引腳最好由主控制器來控制,每隔幾分鐘強(qiáng)制復(fù)位一次,復(fù)位脈沖寬度可以在100 ms左右。定時(shí)強(qiáng)制復(fù)位可以有效防止偶爾由于電磁干擾而產(chǎn)生的顯示不正常和按鍵失效的現(xiàn)象。
(4) 驅(qū)動(dòng)1英寸以上的大數(shù)碼管時(shí),要另外加驅(qū)動(dòng)電路。ZLG7289的驅(qū)動(dòng)能力畢竟是有限的,如果直接驅(qū)動(dòng)1英寸以上的大數(shù)碼管則可能會出現(xiàn)亮度不夠的現(xiàn)象。這時(shí)可以適當(dāng)減小限流電阻(最低200 Ω)以增加亮度。如果亮度仍然不夠,就必須另外添加驅(qū)動(dòng)芯片。
(5) 降低晶振頻率。在ZLG7289數(shù)據(jù)手冊里的典型應(yīng)用電路圖中,晶振16 MHz。但在電磁環(huán)境惡劣的現(xiàn)場,應(yīng)該降低晶振頻率,這里推薦值為1~8 MHz。晶振頻率降低后,SPI總線的通信速率也要適當(dāng)降低。
(6) 在上電或接收到復(fù)位信號后。ZLG7289A大約需要經(jīng)過25 ms的時(shí)間才會進(jìn)入正常工作狀態(tài)。所以給ZLG7289A傳送完復(fù)位命令后要延時(shí)至少25 ms[7]。
(7) 在發(fā)送命令和讀取鍵值的指令中對各控制信號間的時(shí)序要求很高,若控制信號間所要求時(shí)間不相符合,則無法傳送數(shù)據(jù)和命令,就不能響應(yīng)按鍵,也無法讀出鍵值[7]。
5 結(jié) 論
本文采用STC單片機(jī)作為主控芯片, 以ZLG7289A和JR8629作為顯示和鍵盤控制芯片,設(shè)計(jì)了一種人機(jī)接口,并應(yīng)用于實(shí)際中,實(shí)現(xiàn)了系統(tǒng)相關(guān)參數(shù)設(shè)置和顯示。該系統(tǒng)運(yùn)行穩(wěn)定、可靠,具有體積小、集成度高、可靠性高、實(shí)用性強(qiáng)等特點(diǎn),對其他儀器儀表人機(jī)接口設(shè)計(jì)具有一定的參考價(jià)值。
參考文獻(xiàn)
[1] 李小燕.基于ARM單片機(jī)的人機(jī)交互接口的設(shè)計(jì)[J].儀器儀表用戶,2007,14(5):73?75.
[2] 廣州周立功單片機(jī)發(fā)展有限公司.ZLG7289A串行接口LED 數(shù)碼管及鍵盤管理器件[EB/OL].[2013?07?11].http://www.zlgmcu.com/philips/hotic/zlg7289/zlg7289a.pdf.
[3] 深圳市勁銳科技有限公司.8鍵電容式觸摸按鍵IC?JR8629[EB/OL].[2013?05?03].http://www.docin.com/p?342038623.html.
[4] 劉曉東,施艷艷,李淑波.基于SPI接口的凌陽單片機(jī)鍵盤設(shè)計(jì)[J].電測與儀表,2007,44(494):46?49.
[5] 鹿璇,宋曉,杜沖.基于單片機(jī)FPGA的人機(jī)交互系統(tǒng)的設(shè)計(jì)[J].電子設(shè)計(jì)工程,2010,18(9):155?157.
[6] 蘇變玲,朱志平,袁衛(wèi).I2C接口ZLG7289在數(shù)控信號源中的應(yīng)用[J].現(xiàn)代電子技術(shù),2008,31(23):124?126.
[7] 楊恢先,楊穗,王子菡,等.顯示鍵盤智能控制芯片ZLG7289A在數(shù)控切割系統(tǒng)中的應(yīng)用[J].電子器件,2004,27(2):245?249.
(5) 降低晶振頻率。在ZLG7289數(shù)據(jù)手冊里的典型應(yīng)用電路圖中,晶振16 MHz。但在電磁環(huán)境惡劣的現(xiàn)場,應(yīng)該降低晶振頻率,這里推薦值為1~8 MHz。晶振頻率降低后,SPI總線的通信速率也要適當(dāng)降低。
(6) 在上電或接收到復(fù)位信號后。ZLG7289A大約需要經(jīng)過25 ms的時(shí)間才會進(jìn)入正常工作狀態(tài)。所以給ZLG7289A傳送完復(fù)位命令后要延時(shí)至少25 ms[7]。
(7) 在發(fā)送命令和讀取鍵值的指令中對各控制信號間的時(shí)序要求很高,若控制信號間所要求時(shí)間不相符合,則無法傳送數(shù)據(jù)和命令,就不能響應(yīng)按鍵,也無法讀出鍵值[7]。
5 結(jié) 論
本文采用STC單片機(jī)作為主控芯片, 以ZLG7289A和JR8629作為顯示和鍵盤控制芯片,設(shè)計(jì)了一種人機(jī)接口,并應(yīng)用于實(shí)際中,實(shí)現(xiàn)了系統(tǒng)相關(guān)參數(shù)設(shè)置和顯示。該系統(tǒng)運(yùn)行穩(wěn)定、可靠,具有體積小、集成度高、可靠性高、實(shí)用性強(qiáng)等特點(diǎn),對其他儀器儀表人機(jī)接口設(shè)計(jì)具有一定的參考價(jià)值。
參考文獻(xiàn)
[1] 李小燕.基于ARM單片機(jī)的人機(jī)交互接口的設(shè)計(jì)[J].儀器儀表用戶,2007,14(5):73?75.
[2] 廣州周立功單片機(jī)發(fā)展有限公司.ZLG7289A串行接口LED 數(shù)碼管及鍵盤管理器件[EB/OL].[2013?07?11].http://www.zlgmcu.com/philips/hotic/zlg7289/zlg7289a.pdf.
[3] 深圳市勁銳科技有限公司.8鍵電容式觸摸按鍵IC?JR8629[EB/OL].[2013?05?03].http://www.docin.com/p?342038623.html.
[4] 劉曉東,施艷艷,李淑波.基于SPI接口的凌陽單片機(jī)鍵盤設(shè)計(jì)[J].電測與儀表,2007,44(494):46?49.
[5] 鹿璇,宋曉,杜沖.基于單片機(jī)FPGA的人機(jī)交互系統(tǒng)的設(shè)計(jì)[J].電子設(shè)計(jì)工程,2010,18(9):155?157.
[6] 蘇變玲,朱志平,袁衛(wèi).I2C接口ZLG7289在數(shù)控信號源中的應(yīng)用[J].現(xiàn)代電子技術(shù),2008,31(23):124?126.
[7] 楊恢先,楊穗,王子菡,等.顯示鍵盤智能控制芯片ZLG7289A在數(shù)控切割系統(tǒng)中的應(yīng)用[J].電子器件,2004,27(2):245?249.
(5) 降低晶振頻率。在ZLG7289數(shù)據(jù)手冊里的典型應(yīng)用電路圖中,晶振16 MHz。但在電磁環(huán)境惡劣的現(xiàn)場,應(yīng)該降低晶振頻率,這里推薦值為1~8 MHz。晶振頻率降低后,SPI總線的通信速率也要適當(dāng)降低。
(6) 在上電或接收到復(fù)位信號后。ZLG7289A大約需要經(jīng)過25 ms的時(shí)間才會進(jìn)入正常工作狀態(tài)。所以給ZLG7289A傳送完復(fù)位命令后要延時(shí)至少25 ms[7]。
(7) 在發(fā)送命令和讀取鍵值的指令中對各控制信號間的時(shí)序要求很高,若控制信號間所要求時(shí)間不相符合,則無法傳送數(shù)據(jù)和命令,就不能響應(yīng)按鍵,也無法讀出鍵值[7]。
5 結(jié) 論
本文采用STC單片機(jī)作為主控芯片, 以ZLG7289A和JR8629作為顯示和鍵盤控制芯片,設(shè)計(jì)了一種人機(jī)接口,并應(yīng)用于實(shí)際中,實(shí)現(xiàn)了系統(tǒng)相關(guān)參數(shù)設(shè)置和顯示。該系統(tǒng)運(yùn)行穩(wěn)定、可靠,具有體積小、集成度高、可靠性高、實(shí)用性強(qiáng)等特點(diǎn),對其他儀器儀表人機(jī)接口設(shè)計(jì)具有一定的參考價(jià)值。
參考文獻(xiàn)
[1] 李小燕.基于ARM單片機(jī)的人機(jī)交互接口的設(shè)計(jì)[J].儀器儀表用戶,2007,14(5):73?75.
[2] 廣州周立功單片機(jī)發(fā)展有限公司.ZLG7289A串行接口LED 數(shù)碼管及鍵盤管理器件[EB/OL].[2013?07?11].http://www.zlgmcu.com/philips/hotic/zlg7289/zlg7289a.pdf.
[3] 深圳市勁銳科技有限公司.8鍵電容式觸摸按鍵IC?JR8629[EB/OL].[2013?05?03].http://www.docin.com/p?342038623.html.
[4] 劉曉東,施艷艷,李淑波.基于SPI接口的凌陽單片機(jī)鍵盤設(shè)計(jì)[J].電測與儀表,2007,44(494):46?49.
[5] 鹿璇,宋曉,杜沖.基于單片機(jī)FPGA的人機(jī)交互系統(tǒng)的設(shè)計(jì)[J].電子設(shè)計(jì)工程,2010,18(9):155?157.
[6] 蘇變玲,朱志平,袁衛(wèi).I2C接口ZLG7289在數(shù)控信號源中的應(yīng)用[J].現(xiàn)代電子技術(shù),2008,31(23):124?126.
[7] 楊恢先,楊穗,王子菡,等.顯示鍵盤智能控制芯片ZLG7289A在數(shù)控切割系統(tǒng)中的應(yīng)用[J].電子器件,2004,27(2):245?249.