智能裝置CAN轉(zhuǎn)以太互連通信方案設(shè)計(jì)
(2)RABBIT2000從處理器
該處理器使用內(nèi)核為RABBIT2000的RCM2100集成卡。其SD0~SD7連接到DSP的GPIOB0-GPIOB7。SA1、SA0用來(lái)選擇從處理器接口的四個(gè)數(shù)據(jù)寄存器中的一個(gè),連接到DSP的GPIOD1、GPIOD0。從芯片選擇管腳連接到DSP芯片的一個(gè)輸出端GPIOD4。連接到DSP的GPIOD3,如果為低,這根線被拉低使地址線所選擇的寄存器的內(nèi)容被放置到總線上,連接到DSP的GPIOD2 ,這根線能夠?qū)?shù)據(jù)總線上的數(shù)據(jù)鎖存進(jìn)入地址線所選擇的寄存器中。連接到DSP的一個(gè)中斷口,在它變低時(shí)向DSP申請(qǐng)中斷。如果從處理器寫(xiě)SPD0R寄存器,這根線置為低電平,聲明從處理器中有可用的數(shù)據(jù);如果主處理器寫(xiě)從處理器狀態(tài)寄存器,這根線變?yōu)楦唠娖健J褂么贏作為編程口,串口B及CLKB作為同步串口和DSP的SPI口相連,組成另一種接口方案。使用PC2作為RABBIT2000運(yùn)行指示燈,以太網(wǎng)模塊(RCM2100自帶RJ-45接口)引出通信指示燈。PE4、本文引用地址:http://cafeforensic.com/article/157798.htm
4.2 協(xié)議轉(zhuǎn)換與以太網(wǎng)通信程序
嵌入式協(xié)議轉(zhuǎn)換程序的設(shè)計(jì)思路為:當(dāng)有以太網(wǎng)應(yīng)用層數(shù)據(jù)發(fā)送到現(xiàn)場(chǎng)智能裝置時(shí),Rabbit把TCP數(shù)據(jù)報(bào)文解析出來(lái)后即發(fā)送給DSP處理,而當(dāng)來(lái)自DSP的裝置內(nèi)部數(shù)據(jù)要發(fā)往以太網(wǎng)應(yīng)用層時(shí)則將其打包成TCP數(shù)據(jù)報(bào)文發(fā)送給目標(biāo)TCP客戶端。該程序由Dynamic C開(kāi)發(fā)環(huán)境開(kāi)發(fā)。Dynamic C是Z-world 公司為其Rabbit系列產(chǎn)品開(kāi)發(fā)的一種改進(jìn)C語(yǔ)言開(kāi)發(fā)系統(tǒng)。它提供豐富的函數(shù)庫(kù),能實(shí)現(xiàn)Socket級(jí)別的TCP/IP編程,并支持各種網(wǎng)絡(luò)協(xié)議(如Http,F(xiàn)tp等)。調(diào)用“dcrtcp.lib”,定義數(shù)據(jù)類型為tcp_Socket的變量,建立TCP套接字,利用其特殊的協(xié)語(yǔ)句(CoState),可以實(shí)現(xiàn)在單一程序中實(shí)現(xiàn)多線程,同時(shí)建立與處理多個(gè)TCP連接,支持多客戶端同時(shí)登入。
4.3 上位機(jī)應(yīng)用層TCP/IP客戶端程序
后臺(tái)接口軟件具有后臺(tái)監(jiān)控軟件的中轉(zhuǎn)代理和智能裝置定值下載、報(bào)文監(jiān)視,以及PC調(diào)試等功能。后臺(tái)接口軟件使用Delphi 6.0快速開(kāi)發(fā)環(huán)境(RAD)開(kāi)發(fā)。利用其自帶的TClientSocket組件建立TCP客戶端,TClientSocket組件封裝了Socket套接字,只要將組件Active屬性設(shè)置為True,那么它就會(huì)自動(dòng)不斷嘗試連接指定IP地址與端口(IEC60870-5-104指定端口為2404)的TCP服務(wù)器。TClientSocket組件自帶的TNMUDP組件與其他應(yīng)用程序(如后臺(tái)監(jiān)控軟件)通信;開(kāi)放原代碼的tmsAdvstring第三方組件包實(shí)現(xiàn)報(bào)表的生成與打印。
本文提出的基于雙處理器的CAN總線與以太網(wǎng)互連方案是一種高性能、可靠快捷的互連方案,已經(jīng)在局地網(wǎng)成功應(yīng)用于智能裝置中,滿足水電站、變電站等工業(yè)場(chǎng)合的應(yīng)用要求。該互連方案使智能裝置與上位機(jī)系統(tǒng)有更深層次的互連,為遠(yuǎn)程管理智能設(shè)備創(chuàng)造條件,具有非常廣闊的應(yīng)用前景。
tcp/ip相關(guān)文章:tcp/ip是什么
評(píng)論