821 Star 2.5K Fork 1.2K

GVPHuawei LiteOS/LiteOS

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
.gitee
arch
build
compat
components
ai
bootloader
connectivity
fs
gui
language
lib
media
net
ota
security
sensorhub
utility
apriltag
bidireference
c-algorithms
curl
easyflash
fastlz
freetype
genann
harfbuzz
iconv
inih
iniparser
jsmn
json-c
jsoncpp
libevent
libxml2
minmea
pdfgen
qrencode
regex
sfud
sqlite
thttpd
figures
Kconfig
Makefile
README_CN.md
thttpd.mk
thttpd_shellcmd.c
tinyframe
tinyxml2
uriparser
Kconfig
Makefile
utility.mk
Kconfig
Makefile
components.mk
download.sh
online_components
demos
doc
drivers
include/osdepends
kernel
lib
osdepends
shell
targets
test
tests
tools
.config
.gitignore
LICENSE
Makefile
NOTICE
README.md
README_EN.md
config.mk
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

Thttpd 使用手册

Thttpd是一个由C语言编写的轻量级web server,详情请参考thttpd

目前仅Cloud_STM32F429IGTx_FRIE开发板支持Thttpd,下面以该开发板为例,讲解如何在LiteOSshell命令行运行Thttpd,使客户端浏览器可以访问该web server

使能shell和Thttpd

在LiteOS源码根目录下运行make menuconfig命令,按如下菜单路径使能shellthttpd组件:

1.使能shell

Debug  ---> [*] Enable a Debug Version ---> [*] Enable Shell

2.使能thttpd

Components  ---> Utility ---> [*] Enable Thttpd

使能Thttpd组件后会自动使能所依赖的Lwip组件和FATFS组件,FATFS文件系统默认使用SD卡存储模式。

保存退出后,会从github上自动下载Thttpd源码,并从gitee上下载适配于LiteOS系统的patch包,并打入patch。详细流程在components/download.sh文件中。

注意: 下载需要Linux主机可以访问互联网,并安装git

编译烧录

操作步骤如下:

1.在thttpd-2.27/config.h文件中设置web server端的web根目录(其中/fatfs为FATFS文件系统的挂载点,不支持修改),地址(与开发板的IP地址保持一致),端口(端口范围1-65535,设置其中一个未被占用的端口即可)等信息。本示例设置如下:

#define THTTP_WWWROOT_DIR "/fatfs/wwwroot"
#define THTTPD_IPADDR     (192<<24|168<<16|3<<8|92)
#define THTTPD_PORT       80

2.在SD卡的根目录中新建web根目录,例如根据步骤1中的默认设置,应创建名为wwwroot的文件夹。

3.将thttpd/index.htmlthttpd/favicon.ico文件拷贝到web根目录下。

4.将SD卡插入开发板的卡槽内。

5.将路由器与开发板网口连接。

6.在LiteOS源码根目录下执行make clean ; make -j命令编译LiteOS工程,编译成功后将在out/Cloud_STM32F429IGTx_FIRE/lib目录下生成组件静态库文件libthttpd.a,系统镜像文件为Huawei_LiteOS.bin。 烧录系统镜像文件到开发板后,复位重启开发板,查看Thttpd组件是否已经运行:

使用串口调试工具,进入shell命令行界面,输入help 命令,如果显示thttpd命令,则表示已经生效。

Huawei LiteOS # help
*******************shell commands:*************************

date       free       help       hwi       log        memcheck        swtmr        systeminfo    task       thttpd     uname      watch         

Huawei LiteOS # 

Thttpd测试说明

1.在开发板的shell命令行界面中执行thttpd命令,启动web server,此时可以在开发板串口上看到如下信息输出,表示已经成功启动web server

Huawei LiteOS # thttpd
file system mount success

thttpd/2.27 19Oct2015 starting on port 80
Huawei LiteOS # 

2.打开客户端浏览器请求web server端目标页面(本示例为 192.168.3.92:80/index.html),浏览器获取页面如下:

马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C
1
https://gitee.com/LiteOS/LiteOS.git
git@gitee.com:LiteOS/LiteOS.git
LiteOS
LiteOS
LiteOS
master

搜索帮助