基于ARM嵌入式智能控制器的設(shè)計(jì)與實(shí)現(xiàn)
0 背景
本文引用地址:http://m.butianyuan.cn/article/152499.htm利用嵌入式技術(shù),給工業(yè)系統(tǒng)安裝智能控制器,對(duì)其進(jìn)行在線(xiàn)監(jiān)控和檢測(cè),就能及時(shí)發(fā)現(xiàn)故障并處理,從而不但保證工業(yè)系統(tǒng)始終處于良好的運(yùn)行狀態(tài),同時(shí)也減輕值機(jī)維護(hù)人員的負(fù)擔(dān)。面向工業(yè)應(yīng)用的智能控制系統(tǒng)一般包括如下功能:多路模擬量和開(kāi)關(guān)量的實(shí)時(shí)采集并顯示、通過(guò)控制器或上位機(jī)進(jìn)行啟停等命令控制、工作狀態(tài)采集并記錄、數(shù)據(jù)上傳、故障記錄并報(bào)警、歷史數(shù)據(jù)保存、定時(shí)開(kāi)關(guān)機(jī)等,同時(shí)還應(yīng)具有網(wǎng)絡(luò)數(shù)據(jù)傳輸與控制和軟件升級(jí)功能。傳統(tǒng)的智能控制器一般多采用8位單片機(jī)實(shí)現(xiàn),但隨著實(shí)際功能復(fù)雜度的增加,尤其是實(shí)現(xiàn)大量數(shù)據(jù)采集和保存、彩色圖形交互和網(wǎng)絡(luò)通信等,單片機(jī)已很難滿(mǎn)足實(shí)時(shí)控制的要求。因此,采用32位ARM處理器來(lái)實(shí)現(xiàn)的方案是較為理想的選擇。
1 智能控制器硬件平臺(tái)
根據(jù)功能需求,系統(tǒng)主控芯片采用S3C44B0X。該處理器是基于ARM7TDMI內(nèi)核SOC
芯片,片內(nèi)集成LCD控制器、SDRAM控制器、RTC、UART和ADC等模塊,這為硬件系統(tǒng)的設(shè)計(jì)帶來(lái)方便同時(shí)也提供系統(tǒng)可靠性。除此之外,硬件上還需擴(kuò)展存儲(chǔ)系統(tǒng)、鍵盤(pán)液晶、CPLD芯片、串口通信、網(wǎng)卡通信等模塊。存儲(chǔ)系統(tǒng)選用較大容量的Nor Flash來(lái)存放代碼和工作過(guò)程中需記錄的數(shù)據(jù)。LCD采用320×240的STN彩色液晶屏幕,模擬量數(shù)
據(jù)采集采用內(nèi)部ADC和外擴(kuò)多路選擇器,開(kāi)關(guān)量采集與控制采用CPLD芯片來(lái)實(shí)現(xiàn)I/O口的擴(kuò)展。系統(tǒng)硬件總體框圖如圖1所示:
圖1 系統(tǒng)硬件框圖
2 智能控制器軟件總體方案概述
智能控制器軟件部分主要包括啟動(dòng)模塊、系統(tǒng)初始化模塊實(shí)時(shí)時(shí)鐘顯示、IIC鍵盤(pán)、
串口通信、液晶顯示、網(wǎng)絡(luò)通信、數(shù)據(jù)采集及控制、數(shù)據(jù)保存及故障記錄和自動(dòng)升級(jí)等模塊.軟件系統(tǒng)流程圖見(jiàn)圖2。
3 軟件主要設(shè)計(jì)方法
3.1 IIC鍵盤(pán)和開(kāi)關(guān)量處理
本系統(tǒng)采用一片CPLD來(lái)擴(kuò)展I/O端口,并利用S3C44B0X處理器的PF1和PF5等IO
端口來(lái)模擬IIC協(xié)議完成數(shù)據(jù)通信。首先使用vhdl硬件描述語(yǔ)言設(shè)計(jì)IIC協(xié)議的硬件電路,并下載到CPLD芯片中,主要完成對(duì)外部端口的輸入采集和輸出控制以及與主處理器的通信。按照此協(xié)議標(biāo)準(zhǔn),編寫(xiě)數(shù)據(jù)傳輸?shù)膯?dòng)停止、數(shù)據(jù)接收發(fā)送以及確認(rèn)位接收等子程序。調(diào)試時(shí)應(yīng)注意SDA和SCL信號(hào)的時(shí)序關(guān)系。由于此種方式下處理器只能通過(guò)查詢(xún)方式才能判斷是否有鍵按下,因此本設(shè)計(jì)采用定時(shí)器定時(shí)幾毫秒來(lái)讀IIC接口片內(nèi)數(shù)據(jù),主程序判斷按鍵標(biāo)記。此外,系統(tǒng)的32路開(kāi)關(guān)量實(shí)時(shí)控制也是通過(guò)此接口來(lái)實(shí)現(xiàn)。
3.2 GUI顯示
linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論