ENC28J60的初始化
LPC2294。對ENC28J60的各種操作均通過SPI接口進行,包括寄存器的設置、數據的發送和接收。LPC2294的SPI工作在主動方式,即ENC28J60的SPI時鐘信號由LPC2294提供。
TCP/IP協議
該設計采用嵌入式系統中廣泛應用的LwIP協議棧。LwIP TCP/IP實現的特點是在保持協議主要功能的基礎上減少對RAM的占用,這使協議棧LwIP適合在低端嵌入式系統中使用。
LwIP協議棧應用到的協議有ARP,IP,IcMP,TCP,UDP,其具有滑動窗口、擁塞控制和接收分片的分組功能。在LwIP中可以有多個網絡接口,每個網絡接口都對應一個strut netif()。
netif包含了相應網絡接口的屬性、收發函數。采取調用netif的方法netif→inpln()及netif→output()進行以太網PACket的收、發等操作。
以太網/CAN雙向協議轉換
整個設計中最為關鍵的就是CAN協議與TCP/IP協議的相互轉換。協議轉換流程圖如圖6所示。
其具體過程如下:當網關接收到數據,首先判斷數據類型,如果是從CAN接口接收CAN協議報文,便分離出數據部分,再將報文數據部分按系統規定的應用層格式進行封裝,然后將應用層數據存入以太網接口發送緩沖區,由該接口在數據前面依次添加TCP或UDP頭、IP頭、以太幀頭,最后封裝成以太幀后,通過以太網接口發往以太網。
若接收到的以太網數據,數據轉換過程相反,依次去掉IP頭、TCP或UDP頭和應用層頭,再將應用層數據按CAN報文格式封裝好后存入CAN接口發送緩沖區,由CAN接口發往CAN網絡中相應設備。若應用層數據長度大于8 B,則還需將數據以8 B為一組進行拆分。
-
網關
+關注
關注
9文章
4587瀏覽量
51498 -
軟件設計
+關注
關注
3文章
58瀏覽量
17819
原文標題:基于嵌入式的網關軟硬件設計
文章出處:【微信號:eda365wx,微信公眾號:EDA365電子論壇】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
運用設計模式改進軟件設計質量的研究
軟件設計師教程_陳平
![<b class='flag-5'>軟件設計</b>師教程_陳平](https://file.elecfans.com/web2/M00/49/20/pYYBAGKhtDqAXRe9AAAQJF29CN4623.jpg)
基于UML對象建模的財務軟件設計研究
![基于UML對象建模的財務<b class='flag-5'>軟件設計</b>研究](https://file.elecfans.com/web2/M00/49/53/poYBAGKhwKCAWmjYAAATsvVAq0A326.jpg)
CapTIvateTM軟件設計平臺的應用介紹(2)
CapTIvateTM軟件設計平臺的應用介紹(3)
MVB-CAN通信網關的硬件設計框圖、軟件設計和系統性能測試詳細介紹
![MVB-CAN通信<b class='flag-5'>網關</b>的硬件設計框圖、<b class='flag-5'>軟件設計</b>和系統性能測試詳細介紹](https://file.elecfans.com/web1/M00/67/D4/o4YBAFu-ycWAOCS2AACeqHFz2LQ379.png)
評論