这是我见过的全网最便宜的开发板。功能一点儿也不弱,带蓝牙和wifi功能,竟只要9.9元还包邮,果断的买了块儿研究研究。它还支持HarmonyOS和freeRTOS嵌入式操作系统,也可以接入鸿蒙生态。
不得不说这么亲民的价格 ,没理由不尝试尝试。
比起stm32来虽然没有强大的集成开发环境、仿真调试器和生态资源,但毕竟价格便宜。
刚开始开发起来是有点儿麻烦,有点儿像是刀耕火种。需在linux系统上搭建开发环境,使用工具链交叉编译,然后再通过工具下载烧录进去。总结下大致分三步,环境搭建、编译代码、固件烧录。
但是对于要做产品和降低成本来说,环境的搭建,或用记事本(notepad,sublinetext,uedit32,vscode等)开发,用工具链编译,这些都算不上什么难事。
也可以尝试选用其他的一些IDE如QTCreater,Eclipse或vscode,把工具链集成进去搭建自己的IDE。
后续会单独的把这部分代码给摘出来,方便环境的搭建和编译。照目前这种环境搭建办法真不靠谱。直接换装Ubutu20系统吗?那么大的镜像包也不合适。对开发者不友好,那么多文件夹显得结构和目录有点儿乱,编译过程不清晰,有待整理。
光看这个如果不加以说明,一下子扎进去你都找不到北,main函数入口在哪里都得找一找。
这个不得不吐槽下对于开发者太不友好,不过这得靠大家努力把这开发流程梳理梳理才能好用。
或者,建议访问w800的官方网站,上面有详细的w800芯片的开发文档。比润和的这套代码工程靠谱,润和的这个板子一个文档指导都没有,就一个产品介绍文档。
w800是在2019年阿里云栖大会上,联盛德微电子(Winner Micro)联合平头哥共同发布了新一代安全IoT Wi-Fi/蓝牙双模SoC芯片W800。W800作为一颗极具市场竞争力,高性价比的SoC芯片。
芯片外观:QFN32封装,4mm * 4mm
MCU 特性:
集成平头哥XT804 CPU 处理器,最高工作频率240MHz,内置DSP、浮点运算单元与TEE安全引擎.
内置2MB QFlash,288KB RAM
集成5路高速UART接口,最高支持2Mbps
集成2路16比特 ADC,最高采样率1KHz
集成1个I2C控制器
集成GPIO控制器
集成5路PWM接口
集成1路 Duplex I2S控制器
集成7816(SIM卡)接口
安全特性:
MCU内置 Tee 安全引擎,代码可区分安全世界/非安全世界
集成 SASC/TIPC,内存及内部模块/接口可配置安全属性,防止非安全代码访问
启用固件签名机制,实现安全Boot/升级
具备固件加密功能,增强代码安全
固件加密密钥使用非对称算法分发,增强密钥安全性
集成硬件加解密模块:RC4 256、AES 128、DES/3DES、SHA1/MD5、CRC32、TRNG、2048 RSA
Wi-Fi特性:
支持IEEE802.11 b/g/n
支持Wi-Fi WMM/WMM-PS/WPA/WPA2/WPS
支持20/40M带宽工作模式
支持IEEE802.11n MCS 0~7、MCS32物理层传输速率档位,传输速率最高到150Mbps
支持STA、AP、APSTA功能等
蓝牙特性:
集成蓝牙基带处理器/协议处理器,支持传统蓝牙与BLE工作模式,支持BT/BLE4.2 协议
支持蓝牙配网
电源管理:
3.3V单电源供电
支持Wi-Fi节能模式功耗管理
Standby 模式,<10μA
这是W800芯片产品的官网地址:
WinnerMicro 联盛德微电子
或者在这里找资料下载,不用润和Neptune开发板的那个鸿蒙Neptune-HarmonyOS-IOT-master代码工程。平头哥芯片开放社区(OCC)
从这里直接下载w800的资料,搭建环境超简单:
下载cygwin4wm_setup_v1.1.1.exe在windows上搭建cygwin的交叉编译环境。直接安装即可。
下载SDK代码并解压。开始编译应用,清晰明了:
参考 WM_W800_快速入门_mysys_V0.2.pdf文档,几分钟就能上手编译和下载烧录固件。
不过w800芯片官网联盛德微电子这个使用的不是openharmony(liteos-m内核),是使用的ucos-II或freeRTOS内核,可配置切换,官方也有其他os的移植指导文档,用于入门够用了。等熟悉了这个再去看那个Neptune-HarmonyOS-IOT-master工程代码吧。
使用工具串口烧录,注意这个是w800官方的工具,是使用QT做的,估计是他们考虑体积有点儿大使用了压缩加壳,会被360软件报病毒。可以暂时关闭360继续使用该工具。
烧录方法,不用按板子上的什么组合键,直接在这工具上选中要下载的文件w800.fls,点击下载按钮即可。下载完成后,按板子上的reset按钮即可看到如下信息:烧录成功并运行起来啦:
可以执行里面的几个测试demo验证下;
购买链接:生态市场 - 应用软件_服务市场_建站_应用开发_众包平台-华为开发者联盟
开发板长这样,注意别买错买成单个的模组了。
Neptune是一款基于w800芯片的开发板,w800是由“北京联盛德微电子有限责任公司(Winner Micro)”推出的一款芯片,基于C-SKY架构的用于物联网的32位芯片。
C-SKY是RISC-V基金会成员,C-SKY架构是由“杭州中天微系统有限公司”自主设计的,所以C-SKY是土生土长的由国人设计的CPU架构。C-Sky自己的嵌入式CPU的生产工艺从0.13毫米到28纳米不等。C-SKY还有望被添加进LInux内核,成为Linux内核原生支持的CPU架构。阿里巴巴在2017年入股了“杭州中天微系统有限公司”。
在Neptune上开发应用,与基于Hi3861芯片的开发板基本类似。
TypeC的接口线一条。该线可供电,同时充当usb转串口用,插到电脑上会显示串口。前提是电脑安装好ch340的usb转串口驱动。该驱动可以网上下载安装或通过驱动精灵安装。若电脑以前用过usb转串口线,可能已安装有此驱动,ch340或PL2303是常用的usb转串口芯片。
板子上电后通过串口看到默认的应用启动日志,LED灯闪烁。
W800芯片是一款RISC-V指令集架构的芯片,需要使用C-SKY指令集,所以需要到下面的地址下载支持C-SKY架构的交叉编译器,下载地址:
平头哥芯片开放社区(OCC)
没有账号的需要先注册个账号下载。
编译Neptune源代码
下载OpenHarmony源代码,编译源代码以及烧录编译生成的固件。
Neptune开发板使用的OpenHarmony源代码需要特殊适配,目前已经升级为最新的OpenHarmony 1.1,可以在下面的网址下载。
https://gitee.com/hihopeorg_group/neptune-harmony-os1.1-iot/tree/master
下载完源代码后,在Ubuntu Linux中解压,然后在终端进入。
接下来执行hb set命令,然后在Input code path:后面输入一个点(.),在出现的列表中,通过上下箭头选择最后一个,如下图所示:
(吐槽:编译内核这么个搞法没问题,搞应用开发每次也得这么干开发应用是不行的,做实验还行。太繁琐了有木有,你都不知道应用改动和编译了哪些代码,有没有没用的代码也编译了进去,不容易看到全貌,不够直观。)
最后按回车键,将当前编译版本切换到Neptune,如下图所示:
编译源代码需要使用hb build -f命令。
如果输出wifiiot_neptune build success,表示编译成功,如下图所示:
源代码编译成功后,进入下面的目录:
/device/winnermicro/neptune/sdk_liteos/bin/w800
在该目录中有一个w800.img文件,如下图所示。该文件就是要刷的固件。
刷固件需要在Windows下完成,在刷固件前,配置好虚拟机的共享目录。virtual box或VMWare Ubuntu Linux虚拟机配置好共享目录,这样编译好后的w800.img固件在windows下设置的目录中就能找到了。
烧录步骤
这款板子是使用串口烧录的,并使用了串口的Xmodem协议。
Xmodem是一种简单的串口协议,不了解的可以百度下,同样的还有ymodem和zmodem串口文件传输协议。可以选用SecureCRT或超级终端,或者MobarXtem等工具,这些工具上自带Xmodem协议。或者自己造个串口小工具也可以。
第一步先连接上板子,打开SecureCRT工具,设置串口波特率115200,停止位1,数据位8,校验位None,然后打开串口。
第二步,让开发板进入刷固件模式,首先按住键盘的ESC键,然后再按开发板的RST键,软件中就会连续输出C,如下图所示。这表明开发板已经进入了刷固件模式。
第三步选择固件文件,开始烧录点击Transfer->Send Xmodem菜单项,选择w800.img文件,开始刷固件。
最后,重启完成刷固件。再次按开发板的RST键,重启开发板,运行新的固件,刷固件完成,重启会输出如下信息:
引用来源
XModem协议_Tracy Mcgrady的专栏-CSDN博客_xmodem
震惊!全球最便宜的鸿蒙(OpenHarmony)开发板Neptune问世,只需9.9元,就可搞定一切,后续开发课程正在不断涌来_一个被知识诅咒的人-CSDN博客