新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > CAN總線的嵌入式Web服務(wù)器設(shè)計(jì)

CAN總線的嵌入式Web服務(wù)器設(shè)計(jì)

作者: 時(shí)間:2011-04-29 來(lái)源:網(wǎng)絡(luò) 收藏

摘要:本文設(shè)計(jì)并實(shí)現(xiàn)一種可以將基于TCP/IP協(xié)議的計(jì)算機(jī)網(wǎng)絡(luò)設(shè)備,與基于CAN總線協(xié)議的底層現(xiàn)場(chǎng)網(wǎng)絡(luò)連通的嵌入式Web服務(wù)器。

本文引用地址:http://m.butianyuan.cn/article/150817.htm

關(guān)鍵詞:嵌入式Web服務(wù)器 嵌入式Internet TCP/IP協(xié)議 CAN總線

引言

嵌入式系統(tǒng)指被嵌入到各種產(chǎn)品或工程應(yīng)用中的,,,提出以低價(jià)位單片機(jī)作為微處理器,使嵌入式設(shè)備而非PC系統(tǒng)直接接入Internet。在本文中,采用Ubicom公司的SX52單片機(jī)外接以太網(wǎng)控制芯片RTL8019AS實(shí)現(xiàn)嵌入式Web服務(wù)器硬件結(jié)構(gòu)和軟件功能。傳統(tǒng)的基于DCS結(jié)構(gòu)工控系統(tǒng)向嵌入式Web結(jié)構(gòu)轉(zhuǎn)移,可有效降低成本,這是因?yàn)闆](méi)有必要開發(fā)專有的GUI,還可以方便最終用戶,并改善故障檢測(cè)和設(shè)備維護(hù)的遠(yuǎn)程訪問(wèn)能力。



1 嵌入式Web服務(wù)器硬件設(shè)計(jì)與實(shí)現(xiàn)

通常嵌入式系統(tǒng)硬件包括微控制器、存儲(chǔ)器外設(shè)器件和I/O端口等,其核心是嵌入式微控制器。為適應(yīng)上網(wǎng)需求,嵌入式微控制器不僅要能執(zhí)行傳統(tǒng)的控制功能,還要能執(zhí)行與連接因特網(wǎng)相關(guān)的功能,而Ubicom公司的SX52芯片能比較容易地實(shí)現(xiàn)TCP/IP協(xié)議,所以我們選擇它作為微控制器。

實(shí)現(xiàn)嵌入式設(shè)備接入Internet,從原則上來(lái)講最關(guān)鍵的就是要實(shí)現(xiàn)TCP/IP協(xié)議,還有一人關(guān)鍵的問(wèn)題就是傳輸信息媒質(zhì)的選擇。我們采用最常用的連接模式,即通過(guò)以太網(wǎng)連接Internet,利用網(wǎng)絡(luò)接口控制器來(lái)實(shí)現(xiàn)數(shù)據(jù)鏈路層協(xié)議。嵌入式系統(tǒng)應(yīng)用最廣泛的網(wǎng)絡(luò)驅(qū)動(dòng)芯片就是NE2000兼容系列網(wǎng)絡(luò)芯片,它具有接口方便、驅(qū)動(dòng)簡(jiǎn)單、占用資源少等優(yōu)點(diǎn),特別適合嵌入式系統(tǒng)。我們選用其中性能較了,供貨比較穩(wěn)定的RTL8019AS芯片。嵌入式Web服務(wù)器硬件結(jié)構(gòu)框圖如圖1所示。

嵌入式Web服務(wù)器用SX52微控制器作為處理器,以太網(wǎng)驅(qū)動(dòng)芯片RTL8019AS經(jīng)耦合隔離濾波器HR61101G和RJ45接口接入以太網(wǎng),配有RS232和CAN總線兩個(gè)擴(kuò)展接口,可以將具有RS232接口的設(shè)備或采用CAN總線協(xié)議通信的設(shè)備連到以太網(wǎng)上。RS232接口采用MAX232CPE芯片,CAN總線控制器采用Philips公司的SJA1000芯片,CAN收發(fā)器則采用了Philips公司的PCA82C250。

數(shù)據(jù)的流向?yàn)椋赫?qǐng)求和控制信息從局域網(wǎng)中來(lái),通過(guò)RJ45送到RTL8019AS,RTL8019AS負(fù)責(zé)將以太網(wǎng)幀的首部和尾部信息剝離,將處理后的數(shù)據(jù)包送入SX52的TCP/IP協(xié)議棧,由協(xié)議棧對(duì)數(shù)據(jù)報(bào)進(jìn)行解析,得到原始的請(qǐng)求和控制信息。請(qǐng)求和控制信息再經(jīng)過(guò)SJA1000進(jìn)行CAN協(xié)議格式的數(shù)據(jù)封裝,再和現(xiàn)場(chǎng)的CAN總線設(shè)備進(jìn)行通信。請(qǐng)求和控制的回復(fù)領(lǐng)先局域網(wǎng)的過(guò)程與上面正好相反。圖2為Web服務(wù)器主要芯片連接電路簡(jiǎn)圖。

SX52有5個(gè)I/O口,共40個(gè)引腳。在設(shè)計(jì)中,利用SX52的C口的RC0~RC7連接RTL8019AS的數(shù)據(jù)口SD0~SD7;SX52的B口兼顧選址和讀寫控制功能,在開發(fā)中用它與RTL8019AS的地址及讀寫控制引腳連接。在確保通信功能順利實(shí)現(xiàn)的同時(shí),充分利用了SX52芯片I/O口靈活配置的特點(diǎn),最大程序地節(jié)約了微控制器SX52的硬件資源。

圖2

RTL8019AS基地址選擇引腳IOS0~I(xiàn)OS3接地,此時(shí)I/O基地址為300H,即0011 00000 000,所以地址線SA9、SA8接+5V。因?yàn)榧拇嫫鞯刂菲屏繛?0H~1FH共32個(gè),對(duì)應(yīng)地址從300H到31FH,所以只需將地址線SA0~SA4接SX52的RB0~RB4,其余地址線接地即可。芯片IORB、IOWB引腳為讀寫信號(hào)線,接SX52的RB6、RB5讀寫控制引腳。 2.3 嵌入式Web服務(wù)器應(yīng)用程序的實(shí)現(xiàn)

RTL8019AS可以兼容8位和16位操作。圖2中IOCS16是16位I/O的選擇腳。當(dāng)RTL8019AS上電復(fù)位的時(shí)候,如果這個(gè)腳為低電平,RTL8019AS將選擇8位模式;如果這個(gè)腳為高電平,RTL8019AS將選擇16位的模式。由于SX52是8位的數(shù)據(jù)總線,因此要用8位總線模式(每次讀入或?qū)懭?個(gè)字節(jié),只需8根數(shù)據(jù)線SD0~SD7),所以將這個(gè)腳接地。

RTL8019AS有3種工作方式:第一種為跳線方式,芯片的I/O和中斷由跳線決定;第二種即插即用方式,由軟件進(jìn)行自動(dòng)配置;第三種為免跳線方式,芯片的I/O和中斷由外接的93C46里的內(nèi)容決定。常用網(wǎng)卡上的RTL8019AS一般只支持第二種和第三種方式。在嵌入式應(yīng)用的場(chǎng)合,為降低成本,同時(shí)又減少連線,不使用93C46。本設(shè)計(jì)中使用第一種方式,此時(shí)JP引腳接高電平。

AUI引腳決定使用AUI還是BNC接口。高電平時(shí)使用AUI接口,低電平時(shí)使用BNC接口,支持8線雙絞線或同軸電纜。本設(shè)計(jì)中采用雙絞線為通信介質(zhì),將該引腳接地。

RTL8019AS使用引腳TPIN+、TPIN-、TPOUT+和TPOUT-連接耦合隔離濾波器HR61101G,利用RJ45插頭實(shí)現(xiàn)與以太網(wǎng)的連接。

SJA1000是獨(dú)立的CAN通信控制器,支持CAN2.0B協(xié)議,其工作頻率為6~24MHz。它的AD0~AD7為地址數(shù)據(jù)復(fù)用線,與SX52的D口RD0~RD7相連。當(dāng)遠(yuǎn)端用戶通過(guò)Web服務(wù)器查詢現(xiàn)場(chǎng)的CAN總線數(shù)據(jù)時(shí),SJA1000負(fù)責(zé)將現(xiàn)場(chǎng)控制單元的CAN總線數(shù)據(jù)解析,發(fā)送到SX52,再傳到網(wǎng)上。

PCA82C250是CAN協(xié)議控制和物理總線的接口,它對(duì)總線提供發(fā)送能力,并對(duì)CAN控制器提供接收能力,它支持1Mbps速度。為保證SX52與SJA1000協(xié)同工作,在硬件設(shè)計(jì)中們將兩個(gè)芯片共同一個(gè)硬件復(fù)位線,確保SX52與SJA1000硬件同步復(fù)位。

AT24C256是I2C總線的EEPROM,通常可以用來(lái)存儲(chǔ)用戶的一些設(shè)置,比如IP地址、網(wǎng)關(guān)等。在本設(shè)計(jì)用它存儲(chǔ)靜態(tài)網(wǎng)頁(yè)。SCL接SX52的RA4腳,SDA接SX52的RA5腳。

MAX232CPE完成232電平與TTL電平轉(zhuǎn)換,提供一個(gè)本地接口,為調(diào)試和維護(hù)提供方便。TXD接SX52的RA5腳。

MAX232CPE完成232電平與TTL電平轉(zhuǎn)換,提供一個(gè)本地接口,為調(diào)試和維護(hù)提供方便。TXD接SX52的RA2腳,RXD接SX52的RA3腳,RS-RXD和RS-TXD是RS232電平,為標(biāo)準(zhǔn)串口電平。數(shù)據(jù)可以從串口輸入到單片機(jī)SX52,SX52再把數(shù)據(jù)送到RTL8019AS傳出去。

tcp/ip相關(guān)文章:tcp/ip是什么



上一頁(yè) 1 2 3 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉