blob: ac726651928f5763638a6463e47eb686e1094e40 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
/*
* Copyright (c) 2022-2024, Xiaohua Semiconductor Co., Ltd.
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
* 2024-12-30 CDT first version
*/
/*
* 程序清单:ETH设备使用例程,例程导出了eth_webserver命令到控制终端
* 命令调用格式:eth_webserver
*
* ************************** 测试case 1 **************************
* 1)网线连接目标板和PC的网络端口,设置PC的对应网卡的IP地址,如下:
* IPv4地址:192.168.1.10
* 子网掩码: 255.255.255.0
* 默认网关: 192.168.1.1
* 2)配置RTT工程
* menuconfig:
* RT-Thread Componets ---> Network ----> LwIP ----> lwIP version(lwIP v2.1.2)
* Static IPv4 Address,按照如下配置IP:
* IP address : 192.168.1.30
* Gateway address : 192.168.1.1
* Mask address : 255.255.255.0
* Enable alloc ip address through DHCP,取消该选项
* Hardware Drivers Config ---> Onboard Peripheral Drivers ----> Enable Ethernet: ETH PHY USING RTL8201F
* ETH Communication USING MII
* 3)拨码开关J33拨到MII端,编译下载、运行代码
* 4)等待msh>
* 5)msh>窗口输入命令:ping 192.168.1.10,显示连接正常(60 bytes from 192.168.1.120 icmp_seq=0 ttl=128 time=1 ms)
* 6)msh>窗口输入命令:eth_webserver
* 7)PC打开浏览器,输入IP地址:192.168.1.30再按回车键,显示lwip的简介网页(lwIP - A Lightweight TCP/IP Stack),
* 表示成功访问目标板的HTTP服务器。
*
* ************************** 测试case 2 **************************
* 1)网线连接目标板和PC的网络端口,维持测试case 2配置
* 2)配置RTT工程,在测试case 1的基础上,使能Enable ETH PHY interrupt mode
* menuconfig:
* Hardware Drivers Config ---> Onboard Peripheral Drivers ----> Enable ETH PHY interrupt mode: (16) ETH PHY Interrupt pin number
* 3)拨码开关J33拨到MII端,编译下载、运行代码
* 4)等待msh>
* 5)msh>窗口输入命令:ping 192.168.1.10,显示连接正常(60 bytes from 192.168.1.120 icmp_seq=0 ttl=128 time=1 ms)
* 6)msh>窗口输入命令:eth_webserver
* 7)PC打开浏览器,输入IP地址:192.168.1.30再按回车键,显示lwip的简介网页(lwIP - A Lightweight TCP/IP Stack),
* 表示成功访问目标板的HTTP服务器。
*
* ************************** 测试case 3 **************************
* 1)网线连接目标板和PC的网络端口,维持测试case 2配置
* 2)配置RTT工程,在测试case 2的基础上,ETH Communication USING MII改为ETH Communication USING RMII
* Hardware Drivers Config ---> Onboard Peripheral Drivers ----> Enable Ethernet: ETH Communication USING RMII
* 3)拨码开关J33拨到RMII端,编译下载、运行代码
* 4)等待msh>
* 5)msh>窗口输入命令:ping 192.168.1.10,显示连接正常(60 bytes from 192.168.1.120 icmp_seq=0 ttl=128 time=1 ms)
* 6)msh>窗口输入命令:eth_webserver
* 7)PC打开浏览器,输入IP地址:192.168.1.30再按回车键,显示lwip的简介网页(lwIP - A Lightweight TCP/IP Stack),
* 表示成功访问目标板的HTTP服务器。
*/
#include <rtthread.h>
#if defined(BSP_USING_ETH) && defined(RT_USING_LWIP)
extern void httpd_init(void);
void eth_webserver(void)
{
rt_kprintf("Initialize the httpd...... \r\n");
httpd_init();
}
MSH_CMD_EXPORT(eth_webserver, eth: start web server);
#endif
|