《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于ARM和CPLD的溫度控制器的設(shè)計(jì)
基于ARM和CPLD的溫度控制器的設(shè)計(jì)
國外電子元器件
宋曉茹,畢雪芹,王航宇
摘要: 基于ARM和CPLD的溫度控制器的設(shè)計(jì),1 引言 隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,,在日常生活和生產(chǎn)中,,人們要求更精確測量和控制溫度等模擬物理量,不僅滿足工業(yè)現(xiàn)場實(shí)時(shí)監(jiān)控,,上位PC機(jī)遙觀、遙測和遙控等,,而且要求連-接互聯(lián)網(wǎng),,以實(shí)現(xiàn)遠(yuǎn)程監(jiān)控和訪問數(shù)字化
關(guān)鍵詞: ARM 溫度控制器 CPLD
Abstract:
Key words :

1 引言
    隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,在日常生活和生產(chǎn)中,,人們要求更精確測量和控制溫度等模擬物理量,,不僅滿足工業(yè)現(xiàn)場實(shí)時(shí)監(jiān)控,,上位PC機(jī)遙觀、遙測和遙控等,,而且要求連-接互聯(lián)網(wǎng),,以實(shí)現(xiàn)遠(yuǎn)程監(jiān)控和訪問數(shù)字化、智能化的傳感器功能,。
    這里提出一種以ARM微控制器為核心,,結(jié)合CPLD技術(shù)的溫度控制系統(tǒng)。該系統(tǒng)將溫度傳感器采集的信息A/D轉(zhuǎn)換后傳輸至微處理器處理,,其處理數(shù)據(jù)再經(jīng)網(wǎng)絡(luò)接121遠(yuǎn)程傳輸,。或通過RS232串行接口與上位機(jī)PC機(jī)通信實(shí)現(xiàn)分布式溫度監(jiān)控系統(tǒng),。

2 系統(tǒng)硬件設(shè)計(jì)
    該系統(tǒng)設(shè)計(jì)主要是針對工業(yè)控制領(lǐng)域現(xiàn)場儀器儀表開發(fā)的,,其硬件設(shè)計(jì)框圖如圖1所示,該框圖包括ARM微處理器,、電源,、監(jiān)控復(fù)位、存儲(chǔ)器擴(kuò)展(RAM,、Flash和EEPROM),、人機(jī)交換接口(LED)、網(wǎng)絡(luò)通信,、溫度檢測電路,、A/D轉(zhuǎn)換、 D/A轉(zhuǎn)換輸出,、RS232通信和CPLD控制電路(外圍設(shè)備的譯碼,、配置,實(shí)現(xiàn)系統(tǒng)的硬件軟件化)等模塊,。


    溫度傳感器測量外部溫度信息,,在CPLD的控制下,把A/D轉(zhuǎn)換后的數(shù)字信號(hào)送入ARM微處理器中進(jìn)行處理,,同時(shí)通過LCD顯示處理信息,,由網(wǎng)絡(luò)接121 遠(yuǎn)程監(jiān)控。當(dāng)然,,現(xiàn)場也可由鍵盤實(shí)時(shí)人工干預(yù),。經(jīng)ARM微處理器處理的數(shù)據(jù)通過RS232串口傳送到上位機(jī)進(jìn)行顯示存儲(chǔ)。當(dāng)然,,工作過程中若出現(xiàn)錯(cuò)誤,,會(huì)產(chǎn)生聲光報(bào)警等。同時(shí),,鍵盤還可現(xiàn)場干預(yù)設(shè)置,,處理故障等,。

    這里ARM微處理器選用ATMEL公司32位的AT91M40800。AT91M40800除具有ARM7TDMI內(nèi)核外,,其內(nèi)部還集成有許多外圍設(shè)備,,大量內(nèi)部寄存器可快速完成中斷處理。由于AT91M40800微處理器通過可編程的EBI與片外存儲(chǔ)器相連,,使其具有較快的訪問速度,;同時(shí)它還具有8個(gè)優(yōu)先級(jí)向量中斷控制器與外部數(shù)據(jù)控制器連接,,進(jìn)而提高中斷響應(yīng)速度,。因此,AT91M40800微處理器非常適用于工業(yè)實(shí)時(shí)控制領(lǐng)域,,是嵌入式工業(yè)控制器中處理器的最佳選擇,。
2.1 網(wǎng)絡(luò)通信接口電路設(shè)計(jì)
    AT91M40800本身無ETHERNET接口,需通過外接以太網(wǎng)控制器實(shí)現(xiàn)網(wǎng)絡(luò)功能,??紤]到性價(jià)比,系統(tǒng)選用ReaItek公司生產(chǎn)的RTL8019AS型以太網(wǎng)控制器,,外擴(kuò)一個(gè)ETHER,,NET接口。RTL8019AS連接電路如圖2所示,。

    RTL8019AS的JP引腳接VCC使其工作在jumper(配置模式)模式下,,以I/O方式進(jìn)行讀寫操作。NETCS為AT91M40800對 RTL8019AS的片選信號(hào),,地址為0x03000300~0x0300031FLED0,、LED1各接一只發(fā)光二極管以指示通訊狀態(tài)。
    采用10BASE-T布線標(biāo)準(zhǔn)通過雙絞線實(shí)現(xiàn)以太網(wǎng)通訊,,由于RTL8019AS內(nèi)置10BASE-T收發(fā)器,,所以網(wǎng)絡(luò)接口電路較簡單。只需外接一個(gè)隔離低通濾波器(LPF)20F-01與外部網(wǎng)絡(luò)相連,。TPIN±為接收線,,TPOUT±為發(fā)送線,經(jīng)隔離后分別與RJ-45接口的RX±,、TX±端相連,。
    RTL8019AS工作在中斷方式下,當(dāng)接收到數(shù)據(jù)包時(shí).NETINT(中斷信號(hào))輸出低電平,,并通知處理器讀取數(shù)據(jù),。CPU啟動(dòng)遠(yuǎn)端DMA,NETCS (片選信號(hào))和NETRD(讀信號(hào))有效,,進(jìn)而從RTL8019AS內(nèi)部RAM讀取數(shù)據(jù),。NETRST(復(fù)位信號(hào))由控制電路CPLD產(chǎn)生,,高電平有效,保證RTL8019AS可靠復(fù)位,。
2.2 CPLD控制電路
    CPLD主要對RTL8019AS以太網(wǎng)控制器,、LCD液晶顯示和MAX197的控制電路譯碼,選用Altera公司的CPLDEPM7032A,。該器件具有600個(gè)可用門,,32個(gè)宏單元,38個(gè)用戶I/O引腳,,采用3.3 V CMOS工藝,,具有5 V容限輸入。應(yīng)用MAX+PLUSII開發(fā)平臺(tái),,在圖形編輯器中完成所需設(shè)計(jì),。EPM7032A的內(nèi)部設(shè)計(jì)實(shí)現(xiàn)如圖3所示。

 

 

    網(wǎng)絡(luò)接口模塊也是該設(shè)計(jì)重點(diǎn),,其主程序負(fù)責(zé)完成系統(tǒng)參數(shù)的初始化和實(shí)時(shí)調(diào)用任務(wù),。主程序采用輪詢方式不斷檢測狀態(tài)字和功能函數(shù)返回值,判斷某事件是否發(fā)生,,如果發(fā)生就處理該事件,,處理完畢后返回主程序,繼續(xù)執(zhí)行后面的程序,。網(wǎng)絡(luò)接口模塊主程序流程如圖5所示,。
    程序首先進(jìn)行系統(tǒng)初始化,分配內(nèi)存緩沖池用于處理TCP/IP協(xié)議,;接著網(wǎng)絡(luò)參數(shù)初始化,;然后依次完成串口、定時(shí)器,、ARP緩沖和RTL8019AS等的初始化工作,;最后由一個(gè)while死循環(huán)檢測狀態(tài)字,由各子程序進(jìn)行相關(guān)處理,。

4 系統(tǒng)調(diào)試
    系統(tǒng)調(diào)試主要包括硬件調(diào)試,、軟件調(diào)試和系統(tǒng)仿真綜合調(diào)試三部分。首先,,實(shí)驗(yàn)板接通電源,,通過其相應(yīng)的ARM和CPLD的JTAG接口與計(jì)算機(jī)并口相連,然后把相應(yīng)的已編譯,、仿真的程序分別下載燒寫到ARM和CPLD中,,依次調(diào)試各個(gè)模塊,基本滿足溫度信號(hào)采集,、處理等功能,,調(diào)試后的參數(shù)結(jié)果符合要求,,運(yùn)行狀態(tài)良好。

5 結(jié)束語

    以嵌入式系統(tǒng)為研究方向,,面向工業(yè)控制領(lǐng)域,,以儀器儀表為應(yīng)用對象,構(gòu)建并開發(fā)基于ARM和CPLD的嵌入式工業(yè)控制器通用平臺(tái),,完成基于ARM處理器的嵌入式工業(yè)控制器的具體設(shè)計(jì),。系統(tǒng)測試效果良好,性能穩(wěn)定,,達(dá)到預(yù)期的設(shè)計(jì)目標(biāo),。基于ARM和CPLD的嵌入式工業(yè)控制器通用平臺(tái)具有廣闊的應(yīng)用前景,,可廣泛用于工農(nóng)業(yè)檢測,、智能控制等控制領(lǐng)域,,為以后系統(tǒng)升級(jí)提供有益參考,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。