新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > CAN總線的嵌入式Web服務器設計

        CAN總線的嵌入式Web服務器設計

        作者: 時間:2011-04-29 來源:網絡 收藏

        摘要:本文設計并實現一種可以將基于TCP/IP協議的計算機網絡設備,與基于CAN總線協議的底層現場網絡連通的嵌入式Web服務器。

        本文引用地址:http://www.104case.com/article/150817.htm

        關鍵詞:嵌入式Web服務器 嵌入式Internet TCP/IP協議 CAN總線

        引言

        嵌入式系統指被嵌入到各種產品或工程應用中的,,,,提出以低價位單片機作為微處理器,使嵌入式設備而非PC系統直接接入Internet。在本文中,采用Ubicom公司的SX52單片機外接以太網控制芯片RTL8019AS實現嵌入式Web服務器硬件結構和軟件功能。傳統的基于DCS結構工控系統向嵌入式Web結構轉移,可有效降低成本,這是因為沒有必要開發專有的GUI,還可以方便最終用戶,并改善故障檢測和設備維護的遠程訪問能力。



        1 嵌入式Web服務器硬件設計與實現

        通常嵌入式系統硬件包括微控制器、存儲器外設器件和I/O端口等,其核心是嵌入式微控制器。為適應上網需求,嵌入式微控制器不僅要能執行傳統的控制功能,還要能執行與連接因特網相關的功能,而Ubicom公司的SX52芯片能比較容易地實現TCP/IP協議,所以我們選擇它作為微控制器。

        實現嵌入式設備接入Internet,從原則上來講最關鍵的就是要實現TCP/IP協議,還有一人關鍵的問題就是傳輸信息媒質的選擇。我們采用最常用的連接模式,即通過以太網連接Internet,利用網絡接口控制器來實現數據鏈路層協議。嵌入式系統應用最廣泛的網絡驅動芯片就是NE2000兼容系列網絡芯片,它具有接口方便、驅動簡單、占用資源少等優點,特別適合嵌入式系統。我們選用其中性能較了,供貨比較穩定的RTL8019AS芯片。嵌入式Web服務器硬件結構框圖如圖1所示。

        嵌入式Web服務器用SX52微控制器作為處理器,以太網驅動芯片RTL8019AS經耦合隔離濾波器HR61101G和RJ45接口接入以太網,配有RS232和CAN總線兩個擴展接口,可以將具有RS232接口的設備或采用CAN總線協議通信的設備連到以太網上。RS232接口采用MAX232CPE芯片,CAN總線控制器采用Philips公司的SJA1000芯片,CAN收發器則采用了Philips公司的PCA82C250。

        數據的流向為:請求和控制信息從局域網中來,通過RJ45送到RTL8019AS,RTL8019AS負責將以太網幀的首部和尾部信息剝離,將處理后的數據包送入SX52的TCP/IP協議棧,由協議棧對數據報進行解析,得到原始的請求和控制信息。請求和控制信息再經過SJA1000進行CAN協議格式的數據封裝,再和現場的CAN總線設備進行通信。請求和控制的回復領先局域網的過程與上面正好相反。圖2為Web服務器主要芯片連接電路簡圖。

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

        圖2

        RTL8019AS基地址選擇引腳IOS0~IOS3接地,此時I/O基地址為300H,即0011 00000 000,所以地址線SA9、SA8接+5V。因為寄存器地址偏移量為00H~1FH共32個,對應地址從300H到31FH,所以只需將地址線SA0~SA4接SX52的RB0~RB4,其余地址線接地即可。芯片IORB、IOWB引腳為讀寫信號線,接SX52的RB6、RB5讀寫控制引腳。 2.3 嵌入式Web服務器應用程序的實現

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

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

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

        RTL8019AS使用引腳TPIN+、TPIN-、TPOUT+和TPOUT-連接耦合隔離濾波器HR61101G,利用RJ45插頭實現與以太網的連接。

        SJA1000是獨立的CAN通信控制器,支持CAN2.0B協議,其工作頻率為6~24MHz。它的AD0~AD7為地址數據復用線,與SX52的D口RD0~RD7相連。當遠端用戶通過Web服務器查詢現場的CAN總線數據時,SJA1000負責將現場控制單元的CAN總線數據解析,發送到SX52,再傳到網上。

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

        AT24C256是I2C總線的EEPROM,通??梢杂脕泶鎯τ脩舻囊恍┰O置,比如IP地址、網關等。在本設計用它存儲靜態網頁。SCL接SX52的RA4腳,SDA接SX52的RA5腳。

        MAX232CPE完成232電平與TTL電平轉換,提供一個本地接口,為調試和維護提供方便。TXD接SX52的RA5腳。

        MAX232CPE完成232電平與TTL電平轉換,提供一個本地接口,為調試和維護提供方便。TXD接SX52的RA2腳,RXD接SX52的RA3腳,RS-RXD和RS-TXD是RS232電平,為標準串口電平。數據可以從串口輸入到單片機SX52,SX52再把數據送到RTL8019AS傳出去。

        tcp/ip相關文章:tcp/ip是什么



        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 五原县| 凭祥市| 肇庆市| 五指山市| 凤凰县| 逊克县| 马关县| 江城| 昆山市| 青海省| 东乡| 台中县| 晋州市| 塘沽区| 台北市| 株洲市| 广德县| 阿图什市| 抚顺市| 秀山| 安阳市| 西乌珠穆沁旗| 曲靖市| 闵行区| 永清县| 高唐县| 托里县| 集贤县| 咸丰县| 拜城县| 青阳县| 梧州市| 昌宁县| 榆树市| 金山区| 镇江市| 政和县| 永安市| 洪洞县| 铁岭市| 报价|