基于ARM9的測(cè)控系統(tǒng)通信接口設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:控制終端是測(cè)控裝置中不可缺少的主要組成部分,目前應(yīng)用的許多測(cè)控系統(tǒng)都具有規(guī)模大、控制點(diǎn)分散、大多控制點(diǎn)計(jì)算密度較低、受控體及接口種類繁多等特點(diǎn)。文章設(shè)計(jì)了ARM9S3C2440處理器下的RS485、RS232、CAN、IO輸入/輸出、IIC等通信控制接口,本文重點(diǎn)介紹其設(shè)計(jì)方法和過(guò)程。
關(guān)鍵詞:ARM9;S3C2440;系統(tǒng)接口;控制終端;控制器
0 引言
控制終端是測(cè)控裝置中不可缺少的主要組成部分,是測(cè)控系統(tǒng)存在的基礎(chǔ),目前應(yīng)用的許多測(cè)控系統(tǒng)都具有規(guī)模大、控制點(diǎn)分散、大多控制點(diǎn)計(jì)算密度較低、受控體及接口種類繁多等特點(diǎn)。
近年來(lái)嵌入式系統(tǒng)以體積小、功耗低、控制功能較強(qiáng)、能夠嵌入操作系統(tǒng)、易于擴(kuò)展外圍接口(包括各種現(xiàn)場(chǎng)總線和百兆網(wǎng)等)等優(yōu)點(diǎn),很適合計(jì)算密度較低的分布式控制終端的應(yīng)用。本設(shè)計(jì)采用ARM9 3C2440來(lái)開(kāi)發(fā)測(cè)控終端,完成了測(cè)控裝置中的RS485、RS232、CAN、IO輸入/輸出、IIC通信控制接口設(shè)計(jì)。下面重點(diǎn)介紹其設(shè)計(jì)方法和過(guò)程。
1 系統(tǒng)設(shè)計(jì)
圖1系統(tǒng)總體結(jié)構(gòu)是采取核心板跟底板的結(jié)構(gòu)。核心板的資源包括S3C2440A的基于ARM920T核的處理器,其內(nèi)部集成了許多外設(shè),可以很容易地對(duì)處理器進(jìn)行擴(kuò)展,形成各種不同的控制/通信接口。存儲(chǔ)系統(tǒng)方面核心板上擴(kuò)展了64M的SDRAM,256M的NAND FLASH,以及2M的NOR FLASH,能夠滿足一般的工業(yè)控制需求。另外核心板上還集成著DM9000以太網(wǎng)控制芯片。在底板上利用S3C2440處理器上的功能模塊,再加上外圍電路,形成各種接口的擴(kuò)展,其中包括有半雙工的RS485、RS232、CAN通信模塊、IO數(shù)字量口輸入、IO口數(shù)字量輸出。
2 模塊硬件配置
2.1 RS-485總線接口的設(shè)計(jì)
S3C2440片內(nèi)集成的三路UART接口,UART接口通過(guò)電平轉(zhuǎn)換芯片可以很方便地轉(zhuǎn)換為485接口。UARTO作為嵌入式LINUX的控制臺(tái)(conso le)接口,UART1用作RS485擴(kuò)展,UART2作為RS232擴(kuò)展。我們用到的是UART1。由于ARM處理器的引腳電平和EIA規(guī)定的電氣標(biāo)準(zhǔn)不一樣,所以必須要外接電平轉(zhuǎn)換芯片,利用片內(nèi)UART外接不同的轉(zhuǎn)換芯片可以輕松地實(shí)現(xiàn)RS485或者RS232串行協(xié)議標(biāo)準(zhǔn)。RS485采用差分信號(hào)負(fù)邏輯,為了達(dá)到RS485總線的電氣特性標(biāo)準(zhǔn),設(shè)計(jì)中用到的是Analog Devices公司的半雙工RS-485隔離收發(fā)器。
ADM2483是帶隔離的增強(qiáng)型RS485收發(fā)器,它包括一個(gè)三通道隔離器,一個(gè)帶三態(tài)輸出的差分驅(qū)動(dòng)器和一個(gè)帶三態(tài)輸入的差分接收器,允許多達(dá)256個(gè)收發(fā)器接入總線,最高傳輸速率為500kb/s,邏輯端兼容3V/5V工作電源??偩€端5V供電。
圖2為系統(tǒng)中利用S3C2440中的ART1實(shí)現(xiàn)半雙工的RS-485總線的原理圖,其中的引腳RE’與DE分別為接收使能和發(fā)送使能端,現(xiàn)在將其并聯(lián)起來(lái)接到S3C2440的nCTS0引腳,由該引腳的電平控制芯片數(shù)據(jù)的方向。要發(fā)送數(shù)據(jù)時(shí)要叫其置1,接收數(shù)據(jù)時(shí)要將其清0。
2.2 CAN總線接口的設(shè)計(jì)Microchip
公司推出的MCP2515是一款獨(dú)立控制器局域網(wǎng)絡(luò)協(xié)議控制器,完全支持CAN V2.0B技術(shù)規(guī)范。該器件能發(fā)送和接收標(biāo)準(zhǔn)和擴(kuò)展數(shù)據(jù)幀以及遠(yuǎn)程幀。MCP2515自帶的兩個(gè)驗(yàn)收屏蔽寄存器和六個(gè)驗(yàn)收濾波寄存器可以過(guò)濾掉不想要的報(bào)文,因此減少了主單片機(jī)的開(kāi)銷。MCP2515與MCU的連接是通過(guò)業(yè)界標(biāo)準(zhǔn)串行外設(shè)接口(SPI)來(lái)實(shí)現(xiàn)的。在S3C2440處理器上片內(nèi)集成了兩個(gè)SPI控制器,可以通過(guò)SPI總線與MCP2515的控制線連接,進(jìn)而對(duì)MCP2515進(jìn)行控制和配置等各項(xiàng)操作。此外要組成CAN網(wǎng)絡(luò),仍需要一個(gè)與具體物理線路連接的CAN收發(fā)器,本設(shè)計(jì)中采用了Microc hip公司的MCP2551。MCP2551是一個(gè)可容錯(cuò)的高速CAN器件,可作為CAN協(xié)議控制器與物理線路之間的接口,為CAN控制器起差分收發(fā)能力,能夠把CAN控制器生成的數(shù)字信號(hào)轉(zhuǎn)化成為適合總線上傳輸?shù)男盘?hào)。
2.3 RS232接口的設(shè)計(jì)
RS232適于本地的設(shè)備之間的通信。利用S3C2440片內(nèi)的UART可以輕松地實(shí)現(xiàn)串行數(shù)據(jù)的傳輸,MAX232采用單電壓5V供電,可以輕松地實(shí)現(xiàn)電平轉(zhuǎn)換,特別是在沒(méi)有12V電源的情況下。該芯片采用DIP封裝,集成了2個(gè)電壓轉(zhuǎn)換器,連線簡(jiǎn)單而方便使用。
2.4 數(shù)字量輸入/輸出接口的設(shè)計(jì)
數(shù)字量的輸入輸出可以直接控制ARM的引腳為GPIO功能而實(shí)現(xiàn),輸入和輸出具有相同的原理。一般控制系統(tǒng)需要工作在惡劣的環(huán)境中,電壓值會(huì)產(chǎn)生突變,而且一般都高于ARM處理器可接受的范圍,所以必須采取一定隔離措施,需要外接隔離芯片。隔離芯片在電路中起到三方面的作用:1)隔離了破壞電壓,防止處理器受到破壞性損壞;2)完成邏輯電平的轉(zhuǎn)換,將工業(yè)控制中的信號(hào)邏輯電平轉(zhuǎn)換為嵌入式處理器所允許的邏輯電平;3)隔離噪聲,抑制共模信號(hào)。在本設(shè)計(jì)中采用的是ADI公司的ADuM1200數(shù)字隔離器。這款數(shù)字隔離器采用的是iCoupler磁隔離技術(shù),無(wú)論在性能、工號(hào)體積等各方面都有傳統(tǒng)的光電隔離器無(wú)法比擬的優(yōu)勢(shì),具有比光電耦合器更高的數(shù)據(jù)傳輸速率,時(shí)序精度和瞬態(tài)共模抑制能力。在一個(gè)芯片上集成了兩個(gè)獨(dú)立的隔離通道,兩端工作電壓為2.7V~5.5V,每個(gè)隔離通道具有很低的脈寬失真,而且還具有直流校正功能。綜合上述各優(yōu)勢(shì),是本設(shè)計(jì)中采取該隔離芯片的原因。
3 結(jié)束語(yǔ)
本設(shè)計(jì)成功應(yīng)用在中微子實(shí)驗(yàn)室的環(huán)境測(cè)量系統(tǒng)中,實(shí)現(xiàn)了工業(yè)現(xiàn)場(chǎng)的嵌入操作系統(tǒng)、網(wǎng)絡(luò)互聯(lián)功能、微型化、高可靠性設(shè)計(jì),運(yùn)行穩(wěn)定可靠、效果良好。但存在遠(yuǎn)距離通信時(shí)速度不高的缺陷,具體解決方法有待進(jìn)一步研究。