<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于A(yíng)RM9 的嵌入式多串口服務(wù)器設計

基于A(yíng)RM9 的嵌入式多串口服務(wù)器設計

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

摘要:以20T 為內核的S3C2440A 作為主控制器和以太網(wǎng)控制芯片DM9000AEP 硬件平臺; 構建并移植適合系統的Linux 操作系統,利用Linux 完善的TCP/IP 協(xié)議ARM 端的多線(xiàn)程網(wǎng)絡(luò )程序。實(shí)現RS-232C 與以太網(wǎng)口數據的雙向傳輸,使現有的智能儀器設備成功接入以太網(wǎng)。

本文引用地址:http://dyxdggzs.com/article/148006.htm

隨著(zhù)計算機網(wǎng)絡(luò )的發(fā)展和物聯(lián)網(wǎng)的興起,將智能儀器接入網(wǎng)絡(luò )已成為一種趨勢,以實(shí)現數據的共享與遠程管理。但是目前大多智能儀器使用的是異步串行通信接口RS-232C /485 /422,因此迫切需要一種能將異步串行通信協(xié)議轉換為以太網(wǎng)TCP /IP 協(xié)議的協(xié)議轉換器,使現有的串行通信設備方便地接入以太網(wǎng),而不需要改變原有儀器設備的硬件。為此,筆者研究設計了微處理器和Linux 操作系統的。

1 系統總體思路

采用以20T 為內核的S3C2440A 微處理器運行Linux 操作系統,使用100MBase-T 網(wǎng)絡(luò )在串行設備與遠端主機之間有效地進(jìn)行傳輸數據,這樣通過(guò)串口服務(wù)器使串行設備快速接入以太網(wǎng),利用以太網(wǎng)的TCP /IP 協(xié)議進(jìn)行串口數據包的傳輸。嵌入式串口服務(wù)器作為以太網(wǎng)數據與串口數據之間交互的中間橋梁,負責數據的雙向透明傳送。服務(wù)器端的主要任務(wù)是在A(yíng)RM 處理器中實(shí)現RS-232C /485 /422 轉TCP /IP 協(xié)議網(wǎng)關(guān),完成對各端口的監聽(tīng)和數據的雙向傳輸,當端口有數據產(chǎn)生或客戶(hù)端有數據請求時(shí)啟動(dòng)獨立線(xiàn)程,保證實(shí)時(shí)而又不丟失地進(jìn)行數據傳輸。上述要求系統必須具備: 一套對網(wǎng)絡(luò )支持良好的嵌入式操作系統,并且可根據專(zhuān)用的硬件平臺進(jìn)行裁剪; 微處理器的運行速度與處理數據的能力優(yōu)秀,外圍芯片接口友好。

筆者選用Linux 作為實(shí)時(shí)操作系統,并進(jìn)行移植與配置使其可以運行在以ARM9 為核心的硬件平臺上。S3C2440A 自帶三路串行通信口,完全能夠滿(mǎn)足多串口服務(wù)器的設計要求,但考慮到網(wǎng)絡(luò )數據傳輸與串口數據傳輸速率不匹配,需要在硬件板卡上擴展SDRAM 和NORFLASH,另外系統還需擴展以太網(wǎng)控制器芯片。系統的總體設計框架如圖1 所示。

2 硬件電路

系統可同時(shí)獨立地與兩路串行端口通信,當數據由以太網(wǎng)傳送給串口服務(wù)器時(shí)完成數據的存儲與數據格式的轉換與處理,為數據傳向指定的串行口做準備。當系統解包處理完成后,根據TCP /IP 協(xié)議的數據幀的幀頭信息就能獲得該數據包的發(fā)送目標串口,這樣就完成了從以太網(wǎng)到串行口數據的傳輸; 當數據由串口設備傳送到串口服務(wù)器時(shí)完成數據的分析、處理與格式轉換,為數據傳向以太網(wǎng)口做準備,當數據打包結束后將其從以太網(wǎng)口發(fā)送出去,這樣就完成了串行口到以太網(wǎng)數據的傳輸。

2.1 S3C2440A 擴展以太網(wǎng)模塊電路

DM9000AEP 是一款高集成度且成本較低的單片快速以太網(wǎng)媒體介質(zhì)訪(fǎng)問(wèn)層MAC 控制器,上有通用處理器接口,10M/100M 物理層和16KbyteSRAM,低功耗、高性能IO 管腳兼容3. 3 /5. 0V 電壓。DM9000AEP 合成了以太網(wǎng)MAC、物理層PHY 和MMU,內置AUTOMDI2X 功能10 /100MPHY,芯片可以根據處理器提供8 /16 /32bit 3 種連接方式實(shí)現以太網(wǎng)MAC 層和PHY 層) 的功能。

在如圖2 所示的電路中, IOR#管腳接處理器的LnOE 讀信號端, IOW#接處理器的LnWE 寫(xiě)信號端,CS#片選信號端接處理器的nGCS4 片選信號,SD0 ~ SD15 分別接處理器的數據總線(xiàn),中斷信號INT 接處理器的EINT18 管腳,RX +、RX -、TX + 和TX – 分別是兩對差分收發(fā)信號線(xiàn)接帶有隔離變壓器的HR911105A 的RJ45 座連接,如圖3 所示。訪(fǎng)問(wèn)網(wǎng)卡以總線(xiàn)形式實(shí)現,網(wǎng)卡的IO 基址為300H,片選信號接在了NGCS4 上,所以網(wǎng)卡IO 的基址為0x20000300H.由“DM9000 地址端口= 高位片選地址+ 300H + 0; DM9000 數據端口= 高位片選地址+ 300H + 4”可知,DM9000 端口的端口地址為0×20000300,DM9000 數據的端口地址為0×20000304.S3C2440 通過(guò)數據端口與地址端口并結合讀/寫(xiě)信號線(xiàn)就可以對DM9000 進(jìn)行讀、寫(xiě)操作了。圖2 中只用了一根地址線(xiàn)LADDR2,這是由DM9000AEP 的特性決定的,DM9000AEP 的地址信號和數據信號復用,使用CMD 引腳來(lái)區分它們( CMD 為低時(shí)數據總線(xiàn)上傳輸的是地址信號,CMD 為高電平時(shí)傳輸的是數據信號) .訪(fǎng)問(wèn)DM9000AEP 內部寄存器時(shí),需要將CMD 置為低電平,發(fā)出地址信號; 然后將CMD置為高電平,讀/寫(xiě)數據。另外,總數位寬16 位,兩對差分接收與發(fā)送信號線(xiàn),特別要注意的是:

在PCB 布線(xiàn)時(shí)這兩對線(xiàn)必須走差分線(xiàn),否則接收和發(fā)送數據將不穩定,模擬地與數字地也要處理好。

圖2 網(wǎng)卡接口電路

2.2 S3C2440 串口模塊電路

S3C2440 本身自帶三路獨立的UART 接口,在設計嵌入式串口服務(wù)器系統時(shí),應用了S3C2440 串口模塊的兩路UART 接口,另外一路UART 接口做開(kāi)發(fā)時(shí)的打印控制臺用。這兩路串行口用三線(xiàn)通信,采用MAX3232 作為電平轉換芯片,分別配置處理器的GPH2、CPH3、CPH4 和CPG5,4 個(gè)GPIO 口為T(mén)XD0、RXD0、TXD1 和RXD1 串口收發(fā)信號線(xiàn)。RS-232C 接口電路如圖4 所示。

3 系統軟件

系統軟件的設計目標: 嵌入式串口服務(wù)器能夠接收來(lái)自以太網(wǎng)的數據流,將以太網(wǎng)數據流轉換為串行口數據流發(fā)送給指定串口; 實(shí)現串口數據流到以太網(wǎng)數據流的逆過(guò)程。軟件平臺采用擁有完備TCP /IP 協(xié)議棧和豐富源碼資源的Linux作為串口服務(wù)器的操作系統,在A(yíng)RM9 上移植并裁剪Linux 系統,同時(shí)移植完善根文件系統,為應用層軟件開(kāi)發(fā)提供平臺。應用程序軟件的主要任務(wù)如圖5 所示,通過(guò)Linux 系統調用接口、調用串口函數讀取數據,并將數據通過(guò)socket 接口發(fā)往以太網(wǎng)口; 接收socket 端數據、調用串口設備函數,將數據發(fā)往指定串口。

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)

linux相關(guān)文章:linux教程


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



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

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>