引言
在原有的測控系統(tǒng)中,通常不僅需要顯示其工作狀態(tài)或測量的數(shù)據(jù),而且要管理鍵盤,若采用常規(guī)的顯示方式,則需用的元器件多且控制復(fù)雜,從而導(dǎo)致系統(tǒng)可靠性降低,成本增加。尤其在繁忙數(shù)據(jù)處理任務(wù)系統(tǒng)中的處理器不堪重負(fù)。因此,本文介紹一種基于ARM處理器的智能測量系
統(tǒng)的接口技術(shù)[1-3]。該系統(tǒng)采用具有I2C總線接口的顯示及鍵盤管理芯片CH452與處理器連接[4-5],實(shí)現(xiàn)顯示和對鍵盤的管理,使系統(tǒng)簡單、可靠。在大量數(shù)據(jù)處理的系統(tǒng)中,其優(yōu)勢尤為突出。
系統(tǒng)構(gòu)成與功能
本系統(tǒng)主要由測量轉(zhuǎn)換電路、ARM控制器、顯示電路和鍵盤等組成。通過測量轉(zhuǎn)換電路把被測量轉(zhuǎn)換為數(shù)字量,然后輸入至由LM3S2110組成的ARM控制器處理所測量的被
測量數(shù)據(jù),并將其送顯示器LED1、LED2、LED3、LED4顯示。系統(tǒng)硬件結(jié)構(gòu)圖如圖1所示。
系統(tǒng)整體硬件設(shè)計(jì)
系統(tǒng)硬件由測量轉(zhuǎn)換電路和信號控制電路兩部分組成。其中,信號控制電路由ARM處理器控制電路、顯示電路和鍵盤等組成[6]。信號控制電路如圖2所示。
CH452作為控制面板接口的連接器件,圖中的4位LED作為智能控制器面板的顯示部分,鍵盤矩陣完成智能控制器面板的參數(shù)設(shè)定、修改等功能按鍵,實(shí)現(xiàn)人機(jī)交
互功能[7]。
ARM處理器
處理器控制電路的核心是LM3S2110。作為嵌入式處理器的LM3S2110采用為小封裝應(yīng)用方案而優(yōu)化的32位ARM?Cortex?-M3 v7M架構(gòu),是德州儀器公司Stellaris?系列基于ARM Cortex-M3的處理器。其具有高性能的32位運(yùn)算能力。如圖2所示,ARM處理器控制電路的作用是協(xié)調(diào)信號控制電路的正常工作。
LM3S2110微控制器具有以下特點(diǎn):32位RISC性能;看門狗定時(shí)器;內(nèi)部64KB單周期Flash;通用定時(shí)器;控制器局域網(wǎng)(CAN),比特率高達(dá)1Mbps;3個(gè)獨(dú)立的集成模擬比較器;脈沖寬度調(diào)制器(PWM);I2C接口。
測量轉(zhuǎn)換電路
測量轉(zhuǎn)換電路對被測量進(jìn)行測量,并轉(zhuǎn)換為數(shù)字信號。測量轉(zhuǎn)換電路示意圖如圖3所示。
鍵盤顯示電路
鍵盤顯示部分采用數(shù)碼顯示,利用具有I2C總線接口的顯示及鍵盤管理芯片CH452與LM3S2110控制系統(tǒng)的I2C總線接口連接[8-9],以顯示被測值
等信息,并對鍵盤進(jìn)行管理。如圖2所示。
CH452的特點(diǎn)
CH452具有以下特點(diǎn):I2C接口;驅(qū)動能力大;鍵盤中斷;動態(tài)顯示掃描控制;可驅(qū)動8位共陰數(shù)碼管或64只獨(dú)立的LED和64個(gè)按鍵;可控掃描位數(shù)或任意數(shù)碼管的閃爍;內(nèi)置振蕩電路、上電復(fù)位和休眠電路。
CH452的工作原理
A 顯示的驅(qū)動
CH452內(nèi)部具有8個(gè)8位的數(shù)據(jù)寄存器,用于保存8個(gè)字?jǐn)?shù)據(jù),分別對應(yīng)于CH452所驅(qū)動的8個(gè)數(shù)碼管或8組每組8個(gè)的發(fā)光二極管。
CH452
對數(shù)碼管和發(fā)光管采用動態(tài)掃描驅(qū)動,順序?yàn)镈IG0至DIG7,當(dāng)其中一個(gè)引腳灌入電流時(shí),其它引腳則不灌入電流。段驅(qū)動引腳SEG6~SEG0分別對應(yīng)數(shù)碼管的段G~段A,段驅(qū)動引腳SEG7對應(yīng)數(shù)碼管的小數(shù)點(diǎn),字驅(qū)動引腳DIG7~DIG0分別連接8個(gè)數(shù)碼管的陰極;也可驅(qū)動8×8矩陣的發(fā)光二級管LED陣列或者64個(gè)獨(dú)立發(fā)光管或64級光柱。
通過占空比設(shè)定可實(shí)現(xiàn)對亮度16級控制。CH452有兩種控制方式:不譯碼方式和BCD譯碼方式。
不譯碼方式時(shí),8個(gè)數(shù)據(jù)寄存器中字?jǐn)?shù)據(jù)的位7~位0分別對應(yīng)8個(gè)數(shù)碼管的小數(shù)點(diǎn)和段G~段A,對于發(fā)光二極管陣列,則每個(gè)字?jǐn)?shù)據(jù)的數(shù)據(jù)位唯一地對應(yīng)一個(gè)發(fā)光二級管。當(dāng)數(shù)據(jù)位為1時(shí),對應(yīng)的數(shù)碼管的段或者發(fā)光管就會點(diǎn)亮;當(dāng)數(shù)據(jù)位為0時(shí),則對應(yīng)的數(shù)碼管的段或者發(fā)光管就會熄滅。
通過設(shè)定,CH452還可以工作于BCD譯碼方式,該方式主要應(yīng)用于數(shù)碼管驅(qū)動,單片機(jī)只要給出二進(jìn)制數(shù)BCD碼,由CH452將其譯碼后直接驅(qū)動數(shù)碼管顯示對應(yīng)的字符。BCD譯碼方式是指對數(shù)據(jù)寄存器中字?jǐn)?shù)據(jù)的位4~位0進(jìn)行BCD譯碼,控制段驅(qū)動引腳SEG6~SEG0的輸出,對應(yīng)于數(shù)碼管的段G~段A,同時(shí)用字?jǐn)?shù)據(jù)的位7控制段驅(qū)動引腳SEG7的輸出,對應(yīng)于數(shù)碼管的小數(shù)點(diǎn),字?jǐn)?shù)據(jù)的位6和位5不影響B(tài)CD譯碼。
顯示器是共陰極四位連體紅光LED數(shù)字顯示器(TLR4125)。
B 鍵盤的管理
CH452的鍵盤掃描功能支持8×8矩陣的64鍵鍵盤。在鍵盤掃描期間,DIG7~DIG0引腳用于列掃描輸出,SEG7~SEG0引腳都帶有內(nèi)部下拉電阻,用于行掃描輸入。當(dāng)啟用鍵盤掃描功能后,4線串行接口中的DOUT引腳的功能由串行接口的數(shù)據(jù)輸出變?yōu)殒I盤中斷輸出以及按鍵數(shù)據(jù)輸出。
CH452定期在顯示驅(qū)動掃描過程中插入鍵盤掃描。在鍵盤掃描期間,DIG7~DIG0引腳按照DIG0至DIG7的順序依次輸出高電平,其余7個(gè)引腳輸出低電平;SEG7~SEG0引腳的輸出被禁止,當(dāng)沒有鍵被按下時(shí),
SEG7~SEG0都被下拉為低電平。
系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)充分利用芯片硬件資源與軟件配合,完成信號測量轉(zhuǎn)換、信號處理和顯示,這樣電路結(jié)構(gòu)簡單、體積小、可靠性高、穩(wěn)定性好。系統(tǒng)軟件采用模塊化結(jié)構(gòu),由系統(tǒng)初始化、測量轉(zhuǎn)換、數(shù)據(jù)處理、顯示和鍵盤等組成[10-11]。系統(tǒng)程序控制框圖如圖4所示。
系統(tǒng)初始化包含對CH452的初始化。即對CH452的設(shè)置,如開顯示、鍵盤功能、設(shè)置BCD譯碼方式等。顯示部分對4個(gè)數(shù)碼管動態(tài)顯示,通過加載字?jǐn)?shù)據(jù)命令來顯示每個(gè)數(shù)碼管的數(shù)字。
結(jié)束語
采用鍵盤及顯示管理器件CH452與單片微處理器的連接,可以使硬件接口和軟件編程都簡化,有效地提高了系統(tǒng)的可靠性。運(yùn)用CH452與ARM的接口技術(shù),可以充分利用ARM處理器強(qiáng)大的處理能力用于數(shù)據(jù)的處理,達(dá)到智能測控的目的。應(yīng)用此接口技術(shù)的系統(tǒng),實(shí)際運(yùn)行穩(wěn)定可靠,達(dá)到預(yù)期。