【摘 要】近年來(lái),隨著以太網(wǎng)的應(yīng)用與推廣,將以太網(wǎng)技術(shù)用于樓宇自動(dòng)化和信息家電甚至工業(yè)控制領(lǐng)域,也越來(lái)越受到人們的重視, 本文論述了一種基于 ARM 和 ZLG/IP 的嵌入式通信控制器的軟、硬件設(shè)計(jì)方法。該控制器可以靈活的將串口設(shè)備連接到以太網(wǎng),與其它網(wǎng)絡(luò)設(shè)備通信,以供大家交流探討。
【關(guān)鍵詞】ARM;嵌入式通信控制器;設(shè)計(jì);應(yīng)用
目前,隨著先進(jìn)的微控制器技術(shù)、計(jì)算機(jī)技術(shù)和通信技術(shù)的發(fā)展,采用如下接入方式正逐漸發(fā)展起來(lái):微控制器+局部專用網(wǎng)絡(luò)+局部通信控制器(網(wǎng)關(guān))。采用專用網(wǎng)絡(luò),如 RS-232、 RS-485,CANBus、BlueTooth 等方式,將多個(gè)微控制器連接在一起,然后將該專用網(wǎng)絡(luò)連接到一個(gè)通信控制器(過(guò)去一般采用桌面計(jì)算機(jī)實(shí)現(xiàn)),該控制器負(fù)責(zé)將室內(nèi)專用網(wǎng)絡(luò)上的信息轉(zhuǎn)換為 TCP/IP 協(xié)議數(shù)據(jù)包,然后發(fā)到以太網(wǎng)上實(shí)現(xiàn)信息的傳輸,適合于將小到一戶家庭、一幢大樓、大到一個(gè)工廠內(nèi)部的微控制器網(wǎng)絡(luò)接入以太網(wǎng)。本控制器依據(jù)目前樓宇自動(dòng)化和信息家電的要求,針對(duì)前者實(shí)現(xiàn)方式的缺點(diǎn),結(jié)合目前先進(jìn)的微控制器產(chǎn)品、計(jì)算機(jī)技術(shù)和通信技術(shù),實(shí)現(xiàn)了高性能、低成本、低功耗、小體積的先進(jìn)嵌入式通信控制器。
一、ARM 微處理器
ARM 公司于 1990年 9 月在英國(guó)成立。ARM 公司在32位RISC CPU開發(fā)領(lǐng)域不斷取得突破,其結(jié)構(gòu)已經(jīng)從 V3 發(fā)展到 V6。由于 ARM 公司自成立以來(lái),一直以 IPIntelligence Property提供者的身份向各大半導(dǎo)體制造商出售知識(shí)產(chǎn)權(quán),而本身不介入芯片的生產(chǎn)銷售, 加上其設(shè)計(jì)的芯核具有功耗低、成本低和功能強(qiáng)等顯著優(yōu)點(diǎn),因此獲得眾多的半導(dǎo)體廠家和整機(jī)廠商的大力支持,在 32 位嵌入式應(yīng)用領(lǐng)域獲得了巨大的成功,目前已經(jīng)占有75%以上的32位 RISC 嵌入式產(chǎn)品市場(chǎng),幾乎成為了事實(shí)上的標(biāo)準(zhǔn)。在所有 ARM 微處理器系列中, ARM7 微處理器系列應(yīng)用最廣,采用 ARM7 微處理器作為內(nèi)核生產(chǎn)芯片的公司最多。本文所討論的嵌入式通信控制器的硬件核心 LPC2214 微處理器就是一款由 Philips 公司生產(chǎn)的 ARM7TDMI微處理器。
二、硬件平臺(tái)設(shè)計(jì)
(一)LPC2214
LPC2214是基于一個(gè)支持實(shí)時(shí)仿真和跟蹤的16/32位ARM7TDMICPU的微控制器,并帶有16K字節(jié)片內(nèi)靜態(tài)RAM和256 KB嵌入的高速Flash存儲(chǔ)器。 128位寬度的存儲(chǔ)器接口和獨(dú)特的加速結(jié)構(gòu)使32位代碼能夠在最大時(shí)鐘速率下運(yùn)行。對(duì)代碼規(guī)模有嚴(yán)格控制的應(yīng)用可使用16 位Thumb模式將代碼規(guī)模降低超過(guò)30%,而性能的損失卻很小。 由于LPC2214較小的144腳封裝、極低的功耗、多個(gè)32位定時(shí)器、8路10位ADC(64腳和144腳封裝)以及多達(dá)9個(gè)外部中斷使它們特別適用于工業(yè)控制、醫(yī)療系統(tǒng)、訪問控制和POS機(jī)??墒褂玫腉PIO高達(dá)76(使用了外部存儲(chǔ)器)~112個(gè)(單片應(yīng)用)。由于內(nèi)置了寬范圍的串行通信接口,它們也非常適合于通信網(wǎng)關(guān)、協(xié)議轉(zhuǎn)換器、嵌入式軟modern以及其它各種類型的應(yīng)用。
(二)系統(tǒng)存儲(chǔ)器
作為32位的微處理器,LPC2214支持8位、16位和32位尋址方式,具有較強(qiáng)的尋址能力, 可方便的構(gòu)建較大的存儲(chǔ)空間。由于芯片自身帶有256KB的高速FLASH,對(duì)于采用uc/os-II和 ZLG/IP設(shè)計(jì)嵌入式通信控制器已經(jīng)足夠,無(wú)需再在外部掛接FLASH存儲(chǔ)器。系統(tǒng)選用 IS61LV25616AL作為SRAM存儲(chǔ)器,用于滿足嵌入式操作系統(tǒng)及通信控制器中的內(nèi)存塊拷貝運(yùn)行要求。
(三)調(diào)試接口
LPC2214 支持 JTAG協(xié)議,JTAGJoint Test Action Group,聯(lián)合測(cè)試行動(dòng)小組是一種國(guó)際標(biāo)準(zhǔn)測(cè)試協(xié)議,主要用于芯片內(nèi)部測(cè)試及對(duì)系統(tǒng)進(jìn)行仿真、調(diào)試,通過(guò) JTAG接口,可對(duì)芯片內(nèi)部的所有部件進(jìn)行訪問,因而是開發(fā)調(diào)試嵌入式系統(tǒng)的一種簡(jiǎn)潔高效的手段。目前 JTAG接口的連接有兩種標(biāo)準(zhǔn),即14針接口和20針接口,筆者選用的是20 針的接口。
(四)外設(shè)
LPC2214 內(nèi)部集成了兩個(gè) UART 通道,我們通過(guò)電平轉(zhuǎn)換芯片 MAX3232 實(shí)現(xiàn)了一個(gè) RS-232 串口接口;利用 MAX489 實(shí)現(xiàn)了RS-422 通信接口,以便于接受遠(yuǎn)距離下位機(jī)傳過(guò)來(lái)的數(shù)據(jù)。 利用 RTL8019AS芯片和 RJ-45網(wǎng)絡(luò)接口, 實(shí)現(xiàn)了以太網(wǎng)模塊的硬件單元。LPC2214 提供了多達(dá) 76 個(gè)可編程的 I/O端口,由片內(nèi)的相關(guān)寄存器控制。在該系統(tǒng)的設(shè)計(jì)中, P0.23 和 P0.24 外接兩個(gè) LED 指示燈,用作程序運(yùn)行狀態(tài)的顯示,其它數(shù)據(jù)總線和地址總線及部分 GPIO在系統(tǒng)板上引出,以供擴(kuò)展之用。
三、軟件平臺(tái)設(shè)計(jì)及其在考勤系統(tǒng)中的應(yīng)用
(一)軟件平臺(tái)設(shè)計(jì)
軟件平臺(tái)上采取了源代碼開放的嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-II和周立功公司的TCP/IP 協(xié)議棧ZLG/IP(其本身基于μC/OS-II)。 μC/OS-II是一個(gè)完整的、可移植、固化、裁剪的占先式實(shí)時(shí)多任務(wù)內(nèi)核。μC/OS-II最大的特點(diǎn)就是它的源代碼開放,這是其它商業(yè)實(shí)時(shí)內(nèi)核無(wú)法比擬的。它是針對(duì)嵌入式應(yīng)用而設(shè)計(jì)的,而且,在設(shè)計(jì)之初就充分考慮到了它的可移植性,它的大部分源代碼都是用高可移植性的ANSIC編寫的。目前,μC/OS-II已經(jīng)應(yīng)用在很多領(lǐng)域,比如醫(yī)療設(shè)備,發(fā)動(dòng)機(jī)控制,網(wǎng)絡(luò)設(shè)備,自動(dòng)提款機(jī)及工業(yè)機(jī)器人等。ZLG/IP 提 供實(shí)現(xiàn)Internet 網(wǎng)絡(luò)上IP 接點(diǎn)的功能,是個(gè)高性能的嵌入式TCP/IP 協(xié)議棧軟件。它使用μC/OS-II 實(shí)時(shí)操作系統(tǒng)的信號(hào)機(jī)制來(lái)實(shí)現(xiàn)一個(gè)多任務(wù)并行并可重入的協(xié)議棧,完全使用 ANSIC 進(jìn)行編寫,可以像μC/OS-II 那樣支持多種CPU,ZLG/IP帶有 Socket API接口函數(shù), 方便使用者進(jìn)行應(yīng)用層協(xié)議的開發(fā)。ZLG/IP 還具有層次清晰,易于升級(jí)和修改等特點(diǎn)。
(二)在校園考勤系統(tǒng)中的應(yīng)用
在校園考勤系統(tǒng)中,需要有一個(gè)嵌入式通信控制器完成如下功能:將教務(wù)處發(fā)下來(lái)的數(shù)據(jù)和命令信息傳送給下面各個(gè)教學(xué)樓的考勤機(jī)終端,然后將考勤機(jī)終端存儲(chǔ)的考勤數(shù)據(jù)傳送到教務(wù)處的服務(wù)器。采用我們?cè)O(shè)計(jì)的控制器在教學(xué)樓內(nèi)采用 RS-422 通信方式,一主多從, 一臺(tái)通信控制器對(duì)多臺(tái)考勤終端,在教學(xué)樓和教務(wù)處之間采用TCP 通信方式,幾乎沒有了距離的限制,能很好地解決遠(yuǎn)距離可靠的通信傳輸問題。
總之,由于ARM微處理器的優(yōu)越性能和軟件的可移植性,該控制器可以很容易的嵌入到其他系統(tǒng)中,能夠應(yīng)用于樓宇自動(dòng)化和信息家電等諸多領(lǐng)域。
參考文獻(xiàn):
[1]賈祥正.ARM嵌入式系統(tǒng)的LCD驅(qū)動(dòng)設(shè)計(jì)[J]. 中國(guó)高新技術(shù)企業(yè). 2010(27).
[2]耿新民.基于ARM和GPRS的無(wú)線通信系統(tǒng)設(shè)計(jì)[J]. 儀表技術(shù). 2009(01).