新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于LPC2364的串口轉網(wǎng)口專用協(xié)議卡的研制

基于LPC2364的串口轉網(wǎng)口專用協(xié)議卡的研制

作者: 時間:2010-04-23 來源:網(wǎng)絡 收藏

摘要:給出了采用芯片為處理器,并利用以太網(wǎng)中TCP來設計轉網(wǎng)口模塊,從而實現(xiàn)數(shù)據(jù)傳輸方式轉換的一種設計方法。該方法中的軟件采用FreerRtos實時多任務嵌入式系統(tǒng)和uIP棧來實現(xiàn)數(shù)據(jù)通訊和網(wǎng)口數(shù)據(jù)通訊兩項任務。文中同時給出了系統(tǒng)框圖和主程序流程圖。
關鍵詞:TCP/IP;uIP;FreeRTOS;轉網(wǎng)口

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

O 引言
串口轉網(wǎng)口模塊是一個可以讓串口設備立即具備聯(lián)網(wǎng)能力的設備聯(lián)網(wǎng)服務器。它具有1個可選擇界面串口和1個TCP/IP網(wǎng)絡接口,可讓串口設備立即連接網(wǎng)絡。從而實現(xiàn)工業(yè)設備完全自動化聯(lián)網(wǎng)管理。該模塊體積小,非常容易整合在系統(tǒng)或設備內,而且可以適應復雜的網(wǎng)絡。為此,本文給出了采用、DP83848C、SP3485和H2019等芯片構成一個串口轉網(wǎng)口模塊的軟硬件實現(xiàn)方法。

1 uIP介紹
uIP是由瑞典計算機科學學院(網(wǎng)絡嵌入式系統(tǒng)小組)的Adam Dunkels開發(fā)的一種軟件協(xié)議棧。該協(xié)議棧的源代碼由C語言編寫,并完全公開。uIP協(xié)議棧去掉了完整的TCP/IP中不常用的功能,簡化了通訊流程,但保留了網(wǎng)絡通信必須使用的協(xié)議。它把設計重點放在了IP/TCP /ICMP/UDP/ARP這些網(wǎng)絡層和傳輸層協(xié)議上,故可保證其代碼的通用性和結構的穩(wěn)定性。
由于uIP協(xié)議棧是專門為嵌入式系統(tǒng)而設計的。因此,uIP還具有如下優(yōu)越功能:
◇代碼非常少,其協(xié)議棧代碼不到6K,很方便閱讀和移植。
◇占用的內存數(shù)非常少,RAM占用僅幾百字節(jié)。
◇其硬件處理層、協(xié)議棧層和應用層共用一個全局緩存區(qū),且不存在數(shù)據(jù)的拷貝,發(fā)送和接收都是依靠這個緩存區(qū),故可極大地節(jié)省空間和時間。
◇支持多個主動連接和被動連接并發(fā)。
◇源代碼中提供的實例程序包括web服務器、web客戶端、電子郵件發(fā)送程序(SMTP客戶端)、Telnet服務器、DNS主機名解析程序等。而且通用性強,移植后基本不用修改就可以通過。
◇對數(shù)據(jù)的處理采用輪循機制,不需要操作系統(tǒng)的支持。
由于uIP對資源的需求較少且移植很容易,因此,大部分具有小RAM的微控制器都可以使用uIP協(xié)議棧。

2 FreeRTOS介紹
FreeRTOS是一款可移植且源代碼開放的微型實時內核。可為多種不同的處理器架構和開發(fā)工具提供移植包。每個官方移植包都包含一個配置好的應用范例,可用來展示內核特性,加快學習進程。
FreeRTOS是一種專為小型嵌入式系統(tǒng)設計的,可擴展的實時內核。其亮點在于其設計遵循小型、簡單、易用的原則,同時可支持任務(tasks)和協(xié)程(co-routines)以及隊列、二進制信號量、計數(shù)信號量、遞歸信號量和互斥量等,可用于任務之間、任務和中斷之間的通信和同步。

3 串口轉網(wǎng)口模塊的硬件實現(xiàn)
串口轉網(wǎng)口模塊使用到的芯片有LPC2364、DP83848C、SP3485和H2019,其系統(tǒng)的硬件電路圖如圖1所示。

4 串口轉網(wǎng)口模塊的軟件實現(xiàn)
本串口轉網(wǎng)口模塊的軟件需要建立兩個任務,一是初始化,二是任務調度。其中初始化包括時鐘初始化,協(xié)議棧初始化,IP地址初始化,網(wǎng)關地址初始化,子網(wǎng)掩碼初始化,網(wǎng)口初始化。串口初始化等。其主函數(shù)代碼如下:


上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉