在收到板卡后就对官方的在线文档(WM IoT SDK编程指南)进行详细的阅读,文档写得非常详细,到目前为止还未看完。不过有以下几点建议和疑问:
建议1、W800有多个硬件版本,但是在线文档的图片用的是V2的,资料下载链接只有V3和V4的;
2、希望添加以图片的形式区分V3和V4板卡。
疑问:1、通过原理图查看K1是负责三色灯的控制引脚的通断,但是在多处其他的地方提到若连接串口需要将K1拨到ON处,不知道K1是如何影响串口。
板卡上电
板卡在出厂时就有程序,通过Type-C数据线连接板卡后,若电脑有CH342的驱动的话,可以在我的电脑下管理中的端口看到有两个串口。如下图所示

通过串口软件打开串口A(在这里是COM6),波特率是115200,数据位是8位,1位停止位,无奇偶校验。可以看到板卡上电后的打印,如下图

可以在交互界面按下回车键出现w800:,这样就可以通过指令控制板卡。简单的指令操作如下

详细的指令可以参考在线文档,链接为演示固件的使用文档。所用的例程源码在wm_iot_sdk\examples\ref_design\w800_arduino文件夹下,文档下载和程序烧写可以参考后面的内容。
环境搭建
W800支持多种开发环境,我选择的是VSCode添加插件作为开发环境。这也是多种开发环境中搭建最快的一种,对网络的要求也是比较低的。需要下载的文件链接为WM IoT SDK。需要下载的文件为下图红框

在打开SDK下载链接后的第一眼就感觉文档比较多,也很难区分要下载哪个,但是详细看了发现因版本不一样而有这么多文件。所以红框选择最新的版本下载。下载的文件一个为.exe可执行文件,需要进行安装,默认安装位置为D盘,但是不知道如果没有D盘会如何;另外一个为SDK压缩包,下载后需要进行解压,解压位置建议最好没有中文或空格。
然后是在VSCode安装插件,插件安装方式也非常简单。在扩展中搜索WM-IDE进行安装。如下图所示

安装后在左侧有WinnerMicro的图标,点击该图标后需要进行一些配置,主要是告诉之前下载的两个文件的安装位置和解压位置,配置如下图所示

配置完之后就可以创建工程或导入之前的工程。这些功能的按钮如下图

在这里可以先导入SDK的例程,先学习一下例程源码。在导入SDK文件夹后找到wm_iot_sdk\examples\hello_world例程或者之前的出厂例程,找到main.c文件。右键main.c文件可以按照如下的步骤进行编译

编译后会在控制台打印编译结果。烧写方式是同样的方式点击Flash进行烧写。点击Flash后会出现串口烧写软件,软件也是能自动识别到对应的串口,不过也需要确认一下串口号对应的是串口A,如下图

点击start后会提示需要按Rst按键,若果串口被占用会提示连接失败。提示按Rst按键如下

烧写成功后的提示如下,这里我烧写的是Hello World的例程。

因为V4的板卡有烧写后自动复位功能,所以烧写成功后可以不需要按Rst按键程序就可以直接执行。Hello World例程会向串口发送Hello World,执行结果如下
