龙空技术网

Neptune HarmonyOS物联网开发板试用小计

程序猿老欧 232

前言:

现在小伙伴们对“win10dsp下载”可能比较注重,我们都需要剖析一些“win10dsp下载”的相关文章。那么小编也在网摘上汇集了一些有关“win10dsp下载””的相关资讯,希望咱们能喜欢,同学们快快来了解一下吧!

Neptune HarmonyOS物联网开发板试用小计

最近华为的鸿蒙系统宣传得很火,因此淘宝上也出现了一些搭载鸿蒙系统的芯片和开发板。

我今天要推荐的是润和退出的一款低价的开发板,Neptune物联网开发板,产品描述如下:

这款开发板同时支持蓝牙和wifi,但价格只需要9.9,这在同类产品中,简直是性价比的存在,必须盘它。

开发板淘宝地址:

以下是它的一些功能简介:

芯片外观

✓ QFN32 封装,4mm x 4mm

◼ MCU 特性

✓ 集成 32 位 XT804 处理器,工作频率 240MHz,内置 DSP、浮点运算单元与安全引擎

✓ 内置 2MB Flash,288KB RAM

✓ 集成 5 路 UART 高速接口

✓ 集成 2 路 16 比特 SD-ADC,最高采样率 1KHz

✓ 集成 1 个 I2C 控制器

✓ 集成 GPIO 控制器,最多支持 18 个 GPIO

✓ 集成 5 路 PWM 接口

✓ 集成 1 路 Duplex I2S 控制器

◼ 安全特性

✓ MCU 内置 Tee 安全引擎,代码可区分安全世界/非安全世界

✓ 集成 SASC/TIPC,内存及内部模块/接口可配置安全属性,防止非安全代码访问

✓ 启用固件签名机制,实现安全 Boot/升级

✓ 具备固件加密功能,增强代码安全

✓ 固件加密密钥使用非对称算法分发,增强密钥安全性

✓ 硬件加密模块:RC4256、AES128、DES/3DES、SHA1/MD5、CRC32、2048 RSA,真随机数发生器

◼ Wi-Fi 特性

✓ 支持 GB15629.11-2006,IEEE802.11 b/g/n

✓ 支持 Wi-Fi WMM/WMM-PS/WPA/WPA2/WPS

✓ 支持 EDCA 信道接入方式

✓ 支持 20/40M 带宽工作模式

✓ 支持 STBC、GreenField、Short-GI、支持反向传输

✓ 支持 AMPDU、AMSDU

✓ 支持 IEEE802.11n MCS 0~7、MCS32 物理层传输速率档位,传输速率最高到 150Mbps

✓ 2/5.5/11Mbps 速率发送时支持 Short Preamble

✓ 支持 HT-immediate Compressed Block Ack、Normal Ack、No Ack 应答方式

✓ 支持 CTS to self

✓ 支持 Station、Soft-AP、Soft-AP/Station 功能

◼ 蓝牙特性

✓ 集成蓝牙基带处理器/协议处理器,支持 BT/BLE 双模工作模式,支持 BT/BLE4.2 协议

◼ 电源管理

✓ 3.3V 单电源供电

✓ 支持 Wi-Fi 节能模式功耗管理

✓ 支持工作、睡眠、待机、关机工作模式

✓ 待机功耗小于 10uA

买来后,上网查看了一些资料,基本都是教你如何烧写鸿蒙系统到开发板上的,至于鸿蒙的系统代码,在gitee.com上也能下载到。

但通过查看鸿蒙的开源代码,发现只有一些基础功能,而且文档非常不完善。

但通过对这款开发板进行了解,发现它使用的是联盛德的w800芯片,至于这个联盛德和它的w系列芯片。这个公司还有一款比较出名的wifi芯片w600,也是性价比杀手。

联盛德关于w800的详细介绍:

通过它的官网了解到,这款芯片的资料和开发工具是及其完善的,而润和提供的鸿蒙系统也是建立在它提供的SDK之上。

如果你按照网上提供的教程,我觉得你会走很多弯路,我这里讲解如何通过联盛德提供SDK和工具来玩转这块开发板。

准备工作

首先,我们要安装w800的编译工具,它可以在windows和linux下编译,官方建议在linux上开发,效率会比windows下快很多,我们这里是在windows测试的。

在“开发工具”栏下载cygwin4wm_setup_v1.1.1.rar,然后进行安装。

编译工具安装完成后,下载SDK:

请下载最新版本的。

然后需要下载一个烧录工具,虽然官方提供了一个,但我没用烧录成功过,查看官网文档,它也建议你使用SecureCRT。

这个工具可以在百度找到,下载下来就可以使用了。

让我们点亮一展小灯吧

在这个例子中,我们将打开芯片的蓝牙功能,然后通过手机发送指令给芯片,然后芯片控制灯的开关。

首先,我们找到一张ardunio控制小灯的连线图:

我们开发板的实际连线图:

我们用VS.CODE打开w800的SDK目录像下面这样:

关于w800SDK的目录和详细功能,请参考它的文档,我们这里不在描述,我们这里直接讲解要修改哪些地方来完成我们的功能。

首先,我们打开app/main.c文件,屏蔽掉CreateDemoTask()这段代码,这段代码是它原来测试芯片所有功能的。

我们这里只需要开启蓝牙功能就可以了,于是添加

Demo_bt_enable()

蓝牙开启后,我们需要建立一个蓝牙服务器来接收手机发送过来的指令,而蓝牙是否建立成功的状态返回是在/src/app/bleapp/wm_bt_app.c文件中:

将tls_ble_server_demo_api_init的注释去掉,另外它的参数是一个回调函数,用于出来手机发送过来的消息,因此我们这里要编写自己的回调函数,像下面这样:

在这段代码中,我们使用了芯片的PB2,然后设置它为输出,如果蓝牙收到的指令为0x11就关闭灯,其它就开启灯。

到这里,我们的代码就改完了。

代码编译和烧录

代码编译分成两部分,一种是应用级的,一种是它的lib的编译。这里有一些区别,首先是lib的编译,如果你修改了src/app下的东西,它会编译成lib文件,然后应用层会加载这些lib进行编译。

因此像我们上面这种就是修改了lib,因此需要在src/app目录上点击右键,然后选择cygwin进行编译,这些编译好的lib在下面这个路径:

而我们应用程序加载的目录在这里:

因此,我们需要将我们刚才编译好的libapp.a拷贝到后面这目录中,这样我们的程序修改才能成功。

烧写开发板程序

安装完烧写工具后,下面我们开始来进行烧录工作,大概烧写步骤如下:

4.1 打开烧录工具SecureCRT:

4.2 配置烧录工具:

【注意事项】

●在Protocal选择Serial(选Serial表示串口烧录)

●Flow Control不要勾选(勾选了不能显示烧录过程)

●确保左侧“设备管理器”的USB-SERIAL和右侧“SecureCRT”的Port保持一致。(不一致就无法打开指定的串口)

●另外,Baud rate选115200(代表该串口的烧录速率)

看图配置更清晰。配置完成后,点击Connect,如图:

4.3 确认烧录工具与开发板连接:

4.4 测试开发板连接情况:鼠标点击SecureCRT窗口,后续“ESC + 开发板复位键RST”才能被捕获。

4.5 开始烧录:先按住电脑上的“ESC”键不放。单击Neptune开发板的复位(RST)键。

当如下图所示 “cccccccccc”时,表示进入烧录状态,可松开电脑键盘的“ESC”键。

选择“Transfer ->Send Xmodem”,进入烧录界面,如图:

选择之前下载的压缩包中的“bin/w800/w800.fls”,点击“Send”,如图:

烧录过程中,如下图所示,会显示烧录进度。

【请注意】过程中不要随便点击该页面以免过程中断

烧录完成后,如图所示,进度100%,表示烧录成功:

单击Neptune开发板的复位(RST)键,退出烧录模式:

至此,我们已经完成了所有烧录操作。

手机安装 nRF Connect(从应用商店下载即可),手机打开蓝牙,使用 nRF connect 扫描到设备(名称默认为WM-XX:XX:XX,即模块 mac 后六位),App 连接设备。

App 点击查看 service:

App 点击向上箭头,写特征值

点击 SEND 后,uart0 打印 app 发的数据:###write cb12;

参考资料

标签: #win10dsp下载