Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
lwip2.02
RT-Thread 移植使用 webserver (lwip+httpd)
发布于 2023-02-21 15:49:28 浏览:1004
订阅该版
参考正点原子的 **网络实验10 NETCONN_WEBserver实验**和**《lwIP开发指南》**。 开发环境:野火的stm32f407,rt-thread studio版本是版本: 2.2.6,stm32f4的资源包为0.2.2,rt-thread版本为4.0.3。 以**RT-Thread中Lan8720和lwip协议栈的使用**文章创建的工程为基础。 httpd(The Apache HTTP Server)的[官方网址](https://httpd.apache.org/)。 在**rtthread工程**中新建文件夹webserver,存放webserver相关文件。 在正点原子例程**网络实验10 NETCONN_WEBserver实验**中的**`LWIP\lwip_app\web_server_demo`** 文件夹 下的文件拷贝到文件夹webserver。如下图: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20230221/a8471b3cf3f811468d0df5f5244d407e.png) 对工程进行编译,工程报错。根据报错提示进行修改。修改过程如下: * STEP1:错误提示 `httpd.c:86:23: fatal error: lwip_comm.h: No such file or directory`。屏蔽掉头文件 `//#include "lwip_comm.h"` * 保存,编译 * STEP2 :错误提示:`httpd_cgi_ssi.c:5:23: fatal error: lwip_comm.h: No such file or directory`。屏蔽掉头文件 `//#include "lwip_comm.h"`。同时屏蔽掉`//#include "led.h" //#include "tsensor.h" //#include "rtc.h" //#include "lcd.h"` * 修改httpd_cgi_ssi.c文件中的内容,将xxx_Handler函数中内容屏蔽掉,只保留定义。比如RTCdate_Handler函数。LEDS_CGI_Handler函数只保留`return "/STM32_LED_OFF_BEEP_OFF.shtml";` * 编译报错,提示`fsdata.o:(.rodata.file__image_head_jpg+0x0): multiple definition of `file__image_head_jpg' ;fs.o:(.rodata.file__image_head_jpg+0x0): first defined here` * 将fsdata.c 排除构建 * 新建web_server.c文件,添加代码如下: ```f void webserver_start(void) { rt_kprintf("\n\n\tNow, Initializing The WEB File System...\n"); /* Httpd Init */ httpd_init(); /* 配置 SSI 处理程序 */ httpd_ssi_init(); /* 配置 CGI 处理器 */ httpd_cgi_init(); rt_kprintf("\tNow, Starting The WEB Server Thread...\n"); } MSH_CMD_EXPORT(webserver_start, start web server); ``` 编译,下载到开发板。启动后输入webserver_start指令,打开浏览器输入ip地址,效果 如下: ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20230221/95fdb67ee355863c1bdfcc7deb67b5a8.png) ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20230221/baca885e66d843ea0cfd51260f8f05df.png.webp) 工程下载:[lan8720Base.7z](https://club.rt-thread.org/file_download/31039c35bbd8234e)
0
条评论
默认排序
按发布时间排序
登录
注册新账号
关于作者
YZRD
这家伙很懒,什么也没写!
文章
21
回答
217
被采纳
19
关注TA
发私信
相关文章
1
RW007 TCP发送数据出现瞬间卡顿问题,请问是怎么回事?
2
LWIP 在netconn_free函数内报错
3
stm32h743添加lwip2.02报发送错误,ping失败
4
LWIP TCP连接失败
5
STM32H7的LWIP移植, lwip 2.0.2 在pbuf_free出错
6
LWIP移植,控制台一直打印数据
7
使用4G模块,PPP拨号无法获取IP地址,但是打开PPPDebug后就可以。
8
LWIP多网卡设备应用
9
网络编程rt-thread+Lwip2.02+BSD
10
LWIP netif slipif.c 无法添加
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
WIZnet_W5500
UART
ota在线升级
PWM
cubemx
freemodbus
flash
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
编译报错
Debug
SFUD
msh
rt_mq_消息队列_msg_queue
keil_MDK
ulog
MicroPython
C++_cpp
本月问答贡献
出出啊
1517
个答案
342
次被采纳
小小李sunny
1443
个答案
289
次被采纳
张世争
805
个答案
174
次被采纳
crystal266
547
个答案
161
次被采纳
whj467467222
1222
个答案
148
次被采纳
本月文章贡献
出出啊
1
篇文章
4
次点赞
小小李sunny
1
篇文章
1
次点赞
张世争
1
篇文章
1
次点赞
crystal266
2
篇文章
2
次点赞
whj467467222
2
篇文章
1
次点赞
回到
顶部
发布
问题
投诉
建议
回到
底部