1. 準備
本章將介紹使用 RT-Thread 提供的 SPI 驅動框架使能外接以太網設備,實現設備連接網絡。
GD32303E-EVAL 評估板沒有板載以太網模塊,所以需要使用外接以太網設備連接網絡,本文使用的模塊主控芯片型號為 ENC28J60,它可作為任何配備有 SPI 的控制器的以太網接口,兼容 IEEE 802.3 標準,最高傳輸速度可達 10M/s,正常工作電壓為 3.3V,模塊上使用的網絡變壓器型號為 HR911105A,模塊外觀如下:
該模塊主要使用引腳說明如下:
該模塊和 GD32303E-EVAL 開發板連接情況如下:
開發板供電及連接情況:
供電方式:開發板使用 Mini USB 接口或者 DC-005 連接器提供 5V 電源。
下載程序:下載程序到開發板需要一套 JLink 或者使用 GD-Link 工具。
串口連接:使用 USB 轉串口線連接開發板的串口0對應的 PA9 和 PA10 引腳,并連接電腦。
2. 配置工程文件
2.1 開啟 ENV 配置界面
切換到工程目錄下,在ENV工具命令行界面輸入menuconfig命令開啟配置界面。
2.1 使能 ENC28J60 驅動
使用 ENC28j60 需要先使能 ENC28J60 SPI 網絡接口驅動。
2.2 開啟 LWIP2.0.2,優化默認配置
RT-Thread實時操作系統就采用了 LWIP 做為默認的TCP/IP協議棧,設備聯網需要開啟 LWIP,版本使用最新版本LWIP2.0.2,如下圖所示:
LWIP2.0.2 開啟之后內存資源占用比較大,而我們的GD32303E-EVAL 評估板內存資源有限,所以我們要對默認開啟的 LWIP 參數進行優化配置,減小內存占用,下圖為配置方式:
2.3 開啟 DFS_NET,使用 POSIX 標準接口
用戶使用 POSIX 標準網絡接口,需要開啟 DFS_NET,并且配置DFS_FD_MAX用于增大網絡連接數量,如下圖所示:
2.4 保存退出
保存配置,退出配置界面,在ENV工具命令行界面使用 scons--target=mdk5 生成新工程。
3. 運行測試代碼
3.1 初始化以太網設備
打開新生成的 MDK 工程,并添加示例代碼到工程:
在電腦端使用 xshell 打開對應端口,波特率配置為115200,編譯代碼并下載至開發板,然后按 reset 重啟開發板,xshell 會顯示啟動信息,msh中執行app_init命令初始化以太網設備, 顯示如下信息表明以太網設備初始化成功:
|/‐RT‐ThreadOperatingSystem/|3.0.4buildMay920182006‐2018Copyrightbyrt‐threadteamlwIP‐2.0.2initialized![SFUD]FindaGigaDeviceGD25Q16Bflashchip.Sizeis2097152bytes.[SFUD]gd25qflashdeviceisinitializesuccess.msh/>msh/>app_init[INIT]enc28j60deviceinitializesuccess!//以太網設備初始化成功
輸入ifconfig命令查看當前網絡狀態(IP地址、MAC地址、子網掩碼等),如下顯示設備獲取IP地址成功:
msh />ifconfignetwork interface: e0 (Default)MTU: 1500MAC: 00 04 a3 12 34 56 FLAGS: UP LINK_UP ETHARP IGMPip address: 192.168.12.35gw address: 192.168.10.1net mask: 255.255.0.0dns server #0: 192.168.10.1dns server #1: 223.5.5.5
3.1 TCP Client 示例演示
電腦端網絡調試助手開啟 TCP 服務器,設備作為客戶端連接電腦端服務器,msh中執行命令tcpclient [server_ip] [server_port](server_ip 為服務器地址,server_port 為服務器端口號),進行數據交互,說明網絡連接成功,如下圖顯示:
3.1 TCP Server 示例演示
設備開啟 TCP 服務器,msh中執行命令tcpserver(默認端口號為5000),電腦網絡調試助手開啟客戶端連接設備服務器,進行數據交互,說明網絡連接成功,如下圖顯示:
本章節主要介紹了設備通過外接以太網模塊 ENC28J60 連接網絡并且進行數據交互測試的過程,更多源碼請參考測試代碼和 RT-Thread 官方應用筆記。
4. 參考
ENV 工具使用手冊
GD32303E-EVAL 官網
GD32303E-EVAL BSP源碼及資料百度云
ENC28J60 中文數據手冊
玩溜 GD32303E-EVAL BSP 系列(一)----基本系統跑起來
-
控制器
+關注
關注
112文章
16361瀏覽量
178052 -
以太網
+關注
關注
40文章
5425瀏覽量
171723 -
SPI
+關注
關注
17文章
1706瀏覽量
91585
原文標題:【周四RTOS專欄】五分鐘教你實現GD32開發板設備的網絡連接
文章出處:【微信號:elecfans,微信公眾號:電子發燒友網】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論