@armink
2017-08-20T08:44:50.000000Z
字数 2828
阅读 1855
其他开源
ART_WiFi 是一套由 RT-Thread 团队发布的,使用 STM32F205RG 为微控制器的开发板,可以只需要一条 Micro-B 的 USB 线连接 PC 而进行云端到设备端的编程开发…………
项目采用 Scons 构建系统,支持 IAR 、MDK 及 Eclipse 三款 IDE ,主要功能如下:
git clone https://gitee.com/rtthread/ART_wifi --recursive
打开 /firmware/app/rtconfig.py
,修改其中的工具链配置,然后保存。再在此目录下执行以下命令中的其中一种,以生成指定的项目工程。
scons --target=iar
scons --target=mdk4
scons --target=mdk5
命令执行完毕后,在此目录即可看到新生成的项目工程,打开项目工程,build & download 固件至你的 ART_WiFi 开发板。
完成后,电脑端通过打开串口终端软件(例如:putty/xshell),设置串口信息 115200 8 1 N
即可连接到板子的 Finsh/MSH 控制台。
本项目使用 EasyFlash 的 ENV(环境变量,与 uboot 的环境变量概念及操作均一致)功能完成产品的参数存储,WiFi 的配置信息也是如此。学会如何通过 Finsh/MSH 操作环境变量,即可修改 WiFi 配置信息
msh />printenv
iap_need_copy_app=0
iap_need_crc32_check=0
iap_copy_app_size=0
stop_in_bootloader=0
wifi_ssid=rtthread
wifi_password=www.rt-thread.org
wifi_dhcp_enabled=1
wifi_ip=192.168.0.100
wifi_net_mask=255.255.255.0
wifi_gateway=192.168.0.1
wifi_dns=192.168.0.1
ENV size: 276/2048 bytes, write bytes 552/8192, saved count: 2, mode: power fail safeguard.
msh />
这里可以看到全部的环境变量配置,我们比较此时关心的 wifi_
前缀开头的环境变量
msh />setenv wifi_ssid my_router_ssid
msh />setenv wifi_password my_router_password
如上所示,通过 setenv
命令即可修改环境变量的值,设置完后,也可以通过 printenv
进行查看确认。最后,务必记得使用如下命令,将新修改的环境变量保存至 Flash ,这样下次重启就无需再修改参数了。
msh />saveenv
WiFi 参数配置完成后,ART_WiFi 会自动连接到热点,可以通过 Finsh/MSH 控制台看到具体连接信息。
首次下载固件后,需在 Finsh/MSH 命令行使用如下命令,完成对 SPI Flash 的 fatfs 分区的格式化,类似于电脑硬盘使用前的首次格式化。
msh />mkfs fatfs
新建并进入 web_root
文件夹
msh />mkdir web_root
msh />cd web_root
启动 TFTP 服务器
msh /web_root>tftp_server
安装并打开 /tools/Tftpd64-4.60-setup.exe
这款 TFTP 工具,然后选择 Tftp Client 功能,如下图。(PS:如果电脑上有多个网卡,务必记得网卡也要选择)
然后选择 /firmware/app/applications/web_root
下的资源文件,挨个进行上传。(PS:由于固件开启了 DFS_USING_WORKDIR
,所以当前 Finsh/MSH 在哪个文件目录位置, TFTP 就会把文件保存在那里。TFTP 时请勿切换目录)
首先要保证 Finsh/MSH 控制台当前的目录位于根目录。然后在浏览器中打开 http://art_wifi.ip.put.here/web_finsh.html 即可看到 Web Finsh 真容。如果不知道 ART_WiFi 当前的 IP 地址,可以在 Finsh/MSH 控制台输入如下命令查看。
msh />ifconfig
network interface: w0 (Default)
MTU: 1024
MAC: 02 0a f7 fe 86 1c
FLAGS: UP LINK_UP ETHARP IGMP
ip address: 192.168.0.109
gw address: 192.168.0.1
net mask : 255.255.255.0
dns server #0: 192.168.0.1
dns server #1: 0.0.0.0
msh />
打开网页后的效果如下,现在即可畅快地在网页中输入各种命令操作开发板了,自动补全也支持的。(PS:手机上也一样可以打开 Web Finsh,现在 Finsh/MSH 已被你随时随地的掌控了)
最后,需要注意,当 Web Finsh 网页打开后, 串口的 Finsh/MSH 就不可使用了。如果想要继续使用,则关闭 Web Finsh 网页即可。