嵌入式多功能控制器0P7200及應(yīng)用
近年來,電子裝備自動測試系統(tǒng)進(jìn)入了以小型化、智能化、綜合化、信息化為發(fā)展方向的新時期,同時兼顧實(shí)用、可靠、經(jīng)濟(jì)等要求。0P7200是一款新型嵌入式多功能控制器,它具有可靠性高、體積小、經(jīng)濟(jì)實(shí)用等優(yōu)點(diǎn),滿足便攜式測試系統(tǒng)的要求,同時具有以太網(wǎng)接口,便于組建大型分布式測控系統(tǒng)。以0P7200在應(yīng)答機(jī)自動測試系統(tǒng)的應(yīng)用為例,詳細(xì)介紹了0P7200的接口應(yīng)用和軟件開發(fā)。該系統(tǒng)利用0P7200豐富的接口簡化了總體設(shè)計,并且通過使用觸摸屏簡化了測試操作,提高了測試效率。
1 0P7200多功能控制器簡介
1.1 外觀
0P7200具有9個薄膜按鍵,1/4 VGA(320×240像素)帶程控開關(guān)的白色背光LCD和4 096×4 096模擬量觸摸屏,如圖1所示。0P7200外形尺寸為144 mm×112 mm×43 mm,已通過CE認(rèn)證,可在惡劣的工作環(huán)境中穩(wěn)定工作。
1.2 內(nèi)部結(jié)構(gòu)
0P7200多功能控制器的內(nèi)核是Rabbit 2000微處理器,它以CPLD作為譯碼單元,同時擴(kuò)充片外Flash存儲器和SRAM存儲器。在接口方面,微處理器Rabbit 2000直接控制RS485、RS232、以太網(wǎng)等接口,同時利用CPLD可實(shí)現(xiàn)對其他接口的控制,如數(shù)字輸入/輸出接口、模數(shù)轉(zhuǎn)換控制接口,LCD顯示控制接口、鍵盤控制接口、觸摸屏控制接口等。其內(nèi)部結(jié)構(gòu)如圖2所示。
1.3 引腳功能描述
0P7200的引腳配置如圖3所示,各引腳功能描述如下:1)19路開關(guān)量輸入通道,輸入電壓范同為±36 V且?guī)в羞^壓保護(hù)功能;2)8路開關(guān)量輸出通道,每路可以用軟件進(jìn)行單獨(dú)配置,且每個通道在有源時最大可輸出電壓40V、電流350 mA,無源時最大可輸出電壓40 V、電流250 mA,三態(tài)時最大輸出電壓40 V;3)模擬量采集通道,單端輸入時提供8路11位分辨率的模擬輸入通道,差分輸入時提供4路12位分辨率的模擬輸入通道,且輸入信號可用軟件設(shè)定增益,單端輸入時在0~20.0 V范圍內(nèi)有8種選擇,差分輸入時在0~±20.0 V范圍內(nèi)也有8種選擇;4)10Base T以太網(wǎng)接口,帶RJ-45接口;5)3個串口,其中包括1個RS485接口,2個3線的RS232接口;6)復(fù)位引腳,低電平有效;7)2個外部電源接口,可使用9~40 V的直流電源或24 V的交流電源,且內(nèi)部具有穩(wěn)壓電路。同時,OP7200內(nèi)部有可更換的3 V硬幣型鋰電池,用于保持實(shí)時時鐘和SRAM。
1.4 軟件開發(fā)環(huán)境
OP7200的編程使用Z-World工業(yè)級的Dynamic C(或動態(tài)C)軟件開發(fā)平臺,它是一套用于編寫嵌入式應(yīng)用軟件的開發(fā)系統(tǒng),專為Z-World控制器和基于Rabbit微處理器的控制器而設(shè)計的。
Dynamic C開發(fā)平臺集成了編輯、編譯、鏈接、裝載和調(diào)試等功能,還帶有許多函數(shù)庫,用來支持實(shí)時編程、芯片級I/O,支持國際字符、位圖圖像以及圓、線、矩形等圖形結(jié)構(gòu)的顯示。它還具有以下功能:1)函數(shù)串,這是一個動態(tài)C特有的概念,它允許在一個或多個函數(shù)中包含特殊的代碼塊。當(dāng)程序執(zhí)行到指定的函數(shù)串時,將執(zhí)行該串中所有的代碼塊。函數(shù)串支持軟件初始化、數(shù)據(jù)恢復(fù)以及其他多種任務(wù)的請求;2)互聯(lián)語句,它可以實(shí)現(xiàn)在一個程序中模擬多個并發(fā)事件;3)公有函數(shù),允許在一個程序中模擬協(xié)作事件;4)部分聲明支持單個程序中的搶先事件;5)中斷關(guān)鍵字允許程序員使用標(biāo)準(zhǔn)C來編寫中斷服務(wù)程序;6)共享和保護(hù)關(guān)鍵字,主要用于實(shí)現(xiàn)受保護(hù)的數(shù)據(jù)在不同區(qū)域的實(shí)現(xiàn)共享或?qū)⑵浯鎯υ陔姵毓╇姷拇鎯ζ髦校?)動態(tài)C的特征之一,允許程序員最大限度地使用擴(kuò)展內(nèi)存。
Dynamic C還支持協(xié)作多任務(wù)處理和搶先多任務(wù)處理。協(xié)作多任務(wù)處理是一種同時執(zhí)行多種不同任務(wù)的方法,當(dāng)不需執(zhí)行任何立即任務(wù)時,每一個單獨(dú)任務(wù)都會自動遵守其運(yùn)行時間。搶先多任務(wù)處理是一種優(yōu)先處理優(yōu)先級較高的任務(wù),一般程序通過中斷,強(qiáng)制執(zhí)行優(yōu)先級較高的任務(wù)。
評論