当前核心板更新为第二版,修改如下:修改FPC(间距0.5mm)封装;
修改焊盘封装,使得方便串口选择下载固件还是与STM32串口通信;
改进Wifi下载方式,改为贴片拨动开关(核心板右侧),相比跳帽,更为简洁方便;
增加esp8266按键,用于机智云代码远程控制开发时,进入wifi自动配对路由器或无线热点;
增加龟仔贴片按键(核心板下侧背面)。用于esp8266复位;
底板核心资源:
两路USB+继电器+KF301
一路NTC二分法测温
MP3控制与播放WIFI远程控制
软件核心思路:
stm32-usb-fatfs-spi_flash
ld3320-语音识别-QJ004 mp3数据输入解码 && LD3320本身mp3解码
stm32--串口--esp8266-对接机智云-手机app远程控制
整个软件框架采用 动态链表+任务方式实现管理,类似嵌入式操作系统的任务管理部分。
特点(详细远程控制和语音控制功能介绍见附件):
基于LD3320的语音识别;
基于LD3320的mp3播放(实测128kbps无压力,更高的没测了,应该也没问题);
基于STM32和SPI FLash芯片的虚拟U盘修改语音识别词条;
基于ESP8266和机智云(采用eclipse开发,文档对linux下和eclipse下开发均有详细介绍)的远程控制
FPC接口引出了剩余的MCU引脚到底板。
底板接串口模块,系统会实时输出当前一些信息,细节见底下开发文档。
增加了四路输出控制接口(目前提供了四路的简单控制)
支持U盘拖入固件在线升级并自动重启(2019/01/12)
固件拖入升级思路如下,详细实现,见提供的源码即可:
keil中修改中断向量位置,主程序中修改中断向量起始地址;
app程序承担固件接收处理;
BootLoader程序负责写入并自动重启进入新app中;
具体使用方法:
firmware文件夹若不存在,则自动生成,bin文件升级完成后,将自动删除;
将app程序生成的bin文件放入虚拟U盘firmware文件夹,重上电,闪烁3次后即自动进行固件更新;
说明:
误识别无法避免,我们做了两个方面努力尽量减少其发生的概率:
添加了垃圾词汇,见虚拟U盘一图,xiao xing 对应多个垃圾词语,买家不要删除
唤醒词尽量避免了使用常见的短语
使用方法(见附件):
只通电,上电准备就绪后,喇叭播放 “系统正在运行中”语音;
先说唤醒词 “小星”,识别正确,则回复“小星在”;
随后可以说出setup.ini配置文件中对应的词条,识别成功,则闪烁一次,回答“好的”,串口输出指定格式的数据帧“AT+??+END\r\n”,四路控制接口中指定接口执行相应命令;
有一个mp3歌曲播放范例,说“音乐”,则开始播放mp3歌曲,播放完才能回到正常的语音识别;
只需要开机说一次唤醒词,后面直接说出命令即可。容易增加误识别现象;
若识别失败,LED闪烁两次,提示需要注意发音/环境嘈杂等;
注意:
若需要修改词条,通过USB接口接入电脑,打开setup.ini配置文件,修改词条即可,前面5条不
要轻易动,最好从第6条开始修改相应的识别句子。此外,CH1~CH4四路控制接口的高低电平可
以自行更改,这样,识别成功则取反相应的输出电平。(wifi默认使能);
当前第二版本的词条内容如下,由买家根据实际情况自行设计(音乐在播放时,ld3320不可进行语音识别):
当前支持ini格式配置文件,软件目前支持20条语音控制命令(音乐相关,控制相关,最多支持50条)
代码上经过几次升级,目前软件支持以下扩展用的功能(底板预留IO可扩展的功能):
OLED 128*32屏幕
XN297无线模块
完整功能演示(wifi的见文档即可):视频链接地址: https://pan.baidu.com/s/1mHhrHqAfB5fW7N8HnGbTfQ
1