1 引言
隨著計算機技術(shù)的飛速發(fā)展,在日常生活和生產(chǎn)中,,人們要求更精確測量和控制溫度等模擬物理量,,不僅滿足工業(yè)現(xiàn)場實時監(jiān)控,上位PC機遙觀,、遙測和遙控等,,而且要求連-接互聯(lián)網(wǎng),以實現(xiàn)遠程監(jiān)控和訪問數(shù)字化,、智能化的傳感器功能。
這里提出一種以ARM微控制器為核心,,結(jié)合CPLD技術(shù)的溫度控制系統(tǒng),。該系統(tǒng)將溫度傳感器采集的信息A/D轉(zhuǎn)換后傳輸至微處理器處理,其處理數(shù)據(jù)再經(jīng)網(wǎng)絡(luò)接121遠程傳輸,?;蛲ㄟ^RS232串行接口與上位機PC機通信實現(xiàn)分布式溫度監(jiān)控系統(tǒng)。
2 系統(tǒng)硬件設(shè)計
該系統(tǒng)設(shè)計主要是針對工業(yè)控制領(lǐng)域現(xiàn)場儀器儀表開發(fā)的,其硬件設(shè)計框圖如圖1所示,,該框圖包括ARM微處理器,、電源、監(jiān)控復(fù)位,、存儲器擴展(RAM,、Flash和EEPROM)、人機交換接口(LED),、網(wǎng)絡(luò)通信,、溫度檢測電路、A/D轉(zhuǎn)換,、 D/A轉(zhuǎn)換輸出,、RS232通信和CPLD控制電路(外圍設(shè)備的譯碼、配置,,實現(xiàn)系統(tǒng)的硬件軟件化)等模塊,。
溫度傳感器測量外部溫度信息,在CPLD的控制下,,把A/D轉(zhuǎn)換后的數(shù)字信號送入ARM微處理器中進行處理,,同時通過LCD顯示處理信息,由網(wǎng)絡(luò)接121 遠程監(jiān)控,。當(dāng)然,,現(xiàn)場也可由鍵盤實時人工干預(yù)。經(jīng)ARM微處理器處理的數(shù)據(jù)通過RS232串口傳送到上位機進行顯示存儲,。當(dāng)然,,工作過程中若出現(xiàn)錯誤,會產(chǎn)生聲光報警等,。同時,,鍵盤還可現(xiàn)場干預(yù)設(shè)置,處理故障等,。
這里ARM微處理器選用ATMEL公司32位的AT91M40800,。AT91M40800除具有ARM7TDMI內(nèi)核外,其內(nèi)部還集成有許多外圍設(shè)備,,大量內(nèi)部寄存器可快速完成中斷處理,。由于AT91M40800微處理器通過可編程的EBI與片外存儲器相連,使其具有較快的訪問速度,;同時它還具有8個優(yōu)先級向量中斷控制器與外部數(shù)據(jù)控制器連接,,進而提高中斷響應(yīng)速度。因此,,AT91M40800微處理器非常適用于工業(yè)實時控制領(lǐng)域,,是嵌入式工業(yè)控制器中處理器的最佳選擇,。
2.1 網(wǎng)絡(luò)通信接口電路設(shè)計
AT91M40800本身無ETHERNET接口,需通過外接以太網(wǎng)控制器實現(xiàn)網(wǎng)絡(luò)功能,??紤]到性價比,系統(tǒng)選用ReaItek公司生產(chǎn)的RTL8019AS型以太網(wǎng)控制器,,外擴一個ETHER,,NET接口。RTL8019AS連接電路如圖2所示,。
RTL8019AS的JP引腳接VCC使其工作在jumper(配置模式)模式下,,以I/O方式進行讀寫操作。NETCS為AT91M40800對 RTL8019AS的片選信號,,地址為0x03000300~0x0300031FLED0,、LED1各接一只發(fā)光二極管以指示通訊狀態(tài)。
采用10BASE-T布線標(biāo)準(zhǔn)通過雙絞線實現(xiàn)以太網(wǎng)通訊,,由于RTL8019AS內(nèi)置10BASE-T收發(fā)器,,所以網(wǎng)絡(luò)接口電路較簡單。只需外接一個隔離低通濾波器(LPF)20F-01與外部網(wǎng)絡(luò)相連,。TPIN±為接收線,,TPOUT±為發(fā)送線,經(jīng)隔離后分別與RJ-45接口的RX±,、TX±端相連,。
RTL8019AS工作在中斷方式下,當(dāng)接收到數(shù)據(jù)包時.NETINT(中斷信號)輸出低電平,,并通知處理器讀取數(shù)據(jù),。CPU啟動遠端DMA,NETCS (片選信號)和NETRD(讀信號)有效,,進而從RTL8019AS內(nèi)部RAM讀取數(shù)據(jù),。NETRST(復(fù)位信號)由控制電路CPLD產(chǎn)生,高電平有效,,保證RTL8019AS可靠復(fù)位,。
2.2 CPLD控制電路
CPLD主要對RTL8019AS以太網(wǎng)控制器、LCD液晶顯示和MAX197的控制電路譯碼,,選用Altera公司的CPLDEPM7032A,。該器件具有600個可用門,32個宏單元,,38個用戶I/O引腳,,采用3.3 V CMOS工藝,具有5 V容限輸入,。應(yīng)用MAX+PLUSII開發(fā)平臺,,在圖形編輯器中完成所需設(shè)計。EPM7032A的內(nèi)部設(shè)計實現(xiàn)如圖3所示,。
網(wǎng)絡(luò)接口模塊也是該設(shè)計重點,,其主程序負責(zé)完成系統(tǒng)參數(shù)的初始化和實時調(diào)用任務(wù)。主程序采用輪詢方式不斷檢測狀態(tài)字和功能函數(shù)返回值,,判斷某事件是否發(fā)生,,如果發(fā)生就處理該事件,處理完畢后返回主程序,,繼續(xù)執(zhí)行后面的程序,。網(wǎng)絡(luò)接口模塊主程序流程如圖5所示。
程序首先進行系統(tǒng)初始化,,分配內(nèi)存緩沖池用于處理TCP/IP協(xié)議,;接著網(wǎng)絡(luò)參數(shù)初始化;然后依次完成串口,、定時器,、ARP緩沖和RTL8019AS等的初始化工作;最后由一個while死循環(huán)檢測狀態(tài)字,,由各子程序進行相關(guān)處理,。
4 系統(tǒng)調(diào)試
系統(tǒng)調(diào)試主要包括硬件調(diào)試、軟件調(diào)試和系統(tǒng)仿真綜合調(diào)試三部分,。首先,,實驗板接通電源,通過其相應(yīng)的ARM和CPLD的JTAG接口與計算機并口相連,,然后把相應(yīng)的已編譯,、仿真的程序分別下載燒寫到ARM和CPLD中,依次調(diào)試各個模塊,,基本滿足溫度信號采集,、處理等功能,調(diào)試后的參數(shù)結(jié)果符合要求,,運行狀態(tài)良好,。
5 結(jié)束語
以嵌入式系統(tǒng)為研究方向,面向工業(yè)控制領(lǐng)域,,以儀器儀表為應(yīng)用對象,,構(gòu)建并開發(fā)基于ARM和CPLD的嵌入式工業(yè)控制器通用平臺,完成基于ARM處理器的嵌入式工業(yè)控制器的具體設(shè)計,。系統(tǒng)測試效果良好,,性能穩(wěn)定,達到預(yù)期的設(shè)計目標(biāo),?;贏RM和CPLD的嵌入式工業(yè)控制器通用平臺具有廣闊的應(yīng)用前景,,可廣泛用于工農(nóng)業(yè)檢測、智能控制等控制領(lǐng)域,,為以后系統(tǒng)升級提供有益參考,。