isme
isme - 认证专家
冰镇大西瓜

注册于 3年前

回答
315
文章
20
关注者
27

1.主动联网切换WIFI时可以先调用tls_wifi_disconnect();接口断开网络。
2.我看你现在这个流程不是很合理,正常情况下,模块最好通过类似按键的触发机制让模块进入配网模式,配网成功后打开自动重连功能,模块断开连接或者重新上电是能够自动重新连接上WIFI,而当想切换WIFI网络时,重新通过按键或其他触发机制进入配网模式即可。

目前W806不支持OTA升级,如果需要升级,可以通过下拉芯片bootloader脚进入烧录模式,然后通过串口xmodem协议向芯片发送固件升级。

W800默认所有函数都是xip运行,xip相比于ram运行速率更低,如果算法对算力有要求,可以指定一些函数在ram运行,实现方法如下:
  1. 给函数设置attribute
__attribute__((section(".sram.text")))
int TestSram(void)
{
    return 0;
}
  1. 修改gcc_csky.ld,在.data中添加如下一行
  *(.sram.text)
W800还支持某些文件或者某些库的代码段都在ram运行,实现方法如下:
  1. 修改gcc_csky.ld,在.text把下面三行
  *(.text)
  *(.text*)
  *(.text.*)

替换为

  *(EXCLUDE_FILE (*libuser.a *wm_diy_demo.o).text*)
  1. 修改gcc_csky.ld,在.data中添加如下一行
  *(.text*)
W800支持一些只读全局变量加载到ram,实现方法如下
  1. 给全局变量设置attribute
 __attribute__((section(".sram.data")))
char sram_buf[16] = "hello";
  1. 修改gcc_csky.ld,在.data中添加如下一行
  *(.sram.data)

以上内容来源于大神@Alex

目前我们AP+Web配网方式有用到webserver,不过也是文件方式访问,sdk\src\app\web目录下。

W801 作为AP模式,客户端需要先加入W801创建的热点,使客户端和W801处于同一局域网,同时要保证客户端链接的socket server的ip地址和端口号是否正确。

目前还没有,SPI驱动SD网上有很多开源教程,鼓励小伙伴们自行移植并分享到问答社区哦。

目前W806 SDK还没有移植SDIO驱动,可以参考W800 SDK驱动例程。

1.标准SDK可以自行裁剪WIFI BT等射频功能,或者QQ群里已经有小伙伴干过这个事情了。RTOS_W806_SDK(W800FreeRTOS).zip
image.png
2.这个建议很好,我会向公司请示,谢谢。

可以看官网资料文档《WM_W800_固件升级指导_V1.1.pdf》
image.png

发布
问题