发帖
7 0 0

安信可Ai-WV01-32S模组通过UART-MCP实现简单开关灯

zzbinfo
论坛元老

14

主题

51

回帖

4357

积分

论坛元老

积分
4357
小安AI 211 7 2025-10-24 09:54:58

更新UART-MCP固件

这里还是烧录2.4版本的固件,虽说还有一些问题,暂时还能满足简单的开关需求。

2.4版本的固件

首先下载并烧录固件,具体过程参看安信可操作说明。

固件列表.png

烧录新固件.png

出现绿色完成提示,表示烧录成功。

我们通过串口和电脑连接进行简单的设置。

baudrate-set {"role":"MCU","msgType":"status","status":9600}吧默认的115200波特率修改成9600。

连接STC15W408AS单片机

我这里采用手边最便宜的STC15W408AS单片机来实现控制io口的led。

1.jpg

固件内置的MCP控制可以实现对灯的开关控制,串口输出信息:

[14:30:12.491]收←◆{"role":"AI board","LED":true,"msgType":"status","status":"OK"}

[14:30:36.679]收←◆{"role":"AI board","LED":false,"msgType":"status","status":"OK"}

我们解析串口数据,实现对单片机io口的开关控制。

void checkRecBuff(BYTE *Buff,BYTE len)
{
  char *p=NULL;
  UART1_SendString(Buff);
  p = strstr(Buff,"\"LED\":true"); 
  if(p)
   {
	LED = 1;
   }else {
  p = strstr(Buff,"\"LED\":false");
  LED = 0; 
  }
  
}


完整的单片机代码我附在最后面。实现的效果如下:

总结

通过UART-MCP可以实现简单的灯开关操作,最新版的固件已经可以支持更多MCP交互,大家有时间可以深入探索。我这里用的单片机资源受限。从这几天的试用有几点汇集如下:

1、模组的3.3V供电电流要足够,如果采用常用的1117-3.3,容易产生不停重启故障,电流不够。

2、目前2.4和几个测试的固件版本都存在一定概率的进不去配网模式,就是刷了固件后,能正常唤醒,但是进不去配网模式。只有重新加电重试。

3、这几个版本的固件也同时遇到了唤醒后,在一秒后就进入到休眠状态。特别是通过wake-up {"role":"MCU","msgType":"wake-up","wake-up":}唤醒后,容易复现。采用指令唤醒后,极短时间内就休眠了,不管后续是语音唤醒还是指令唤醒。(2.4版本的固件对指令唤醒好像不支持)

upload 附件:stc15w408as单片机代码.rar

──── 0人觉得很赞 ────

使用道具 举报

2025-10-24 10:38:22
优秀~
2025-10-24 12:58:12
点赞
2025-10-24 13:54:17
真棒
2025-10-24 21:31:24
感谢分享~😃
2025-10-26 11:44:21
厉害
我在2.7版本又修复了一些bug,资源问题我在想办法解决,尽量让STC单片机也能用
5 天前
起个名字好难啊 发表于 2025-10-29 09:32
我在2.7版本又修复了一些bug,资源问题我在想办法解决,尽量让STC单片机也能用 ...

期待你得佳作,辛苦辛苦。有时间我再试试2.7的固件。
您需要登录后才可以回帖 立即登录
高级模式
返回
统计信息
  • 会员数: 30064 个
  • 话题数: 44099 篇