找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3305|回复: 4
收起左侧

STM32单片机+LD3320语音识别模块+MP3或nsy8266语音合成模块制作的语音插座程序PCB

[复制链接]
ID:188940 发表于 2022-2-28 12:58 | 显示全部楼层 |阅读模式
自己利用空闲时间,用32单片机和一些模块做了一个语音插座,既有12V直流电输出,也有两路220交流输出(其中一路可以支持高低档切换,实现原理就是在两个继电器中间串一个1N5408二极管)。本制作语音插座,有PCB、原理图,PCB印制电路板都是原创,还有预留了两个DS18b20温度传感器的焊盘位置和两个按键,一个可以探测5V和3.3V芯片的工作温度,另一个可以探测外部温度,然后配合预留继电器12V供电,可以实现温度控制。除了这些已经连接好了的电路,还把剩余的其他IO口引出,有一组spi协议(后期可以添加显示屏)、3.3v、5v、12v的电源。毕竟是业余时间做的,可能在有些方面不是很完善。
一、资料展示
1.原理图
2.PCB印制电路板
因为自己做的板,所以在布线的时候那那么专业,能用就好。

3.实物图
外观大概就这样,工作状态

4、说明
外壳使用3D打印的,就是第一次使用,建模这些不是很好,打出6面后用热熔枪连接·······
5、代码
代码太多了,我就不写出来咯,自行可以去程序里面看。在资料里有单独的nsy6288、MP3、LD3320的一些单一代码,直接修改一下就能移植。有些代码的注释没有修改到,是错误的。看的时候注意一下就好。


6、视频
https://www.bilibili.com/video/BV1Fq4y147Rm/  哔哩哔哩

制作出来的实物图如下:
实物图.JPG

Altium Designer画的原理图和PCB图如下:(51hei附件中可下载工程文件)
原理图.jpg 底层PCB覆铜.jpg 顶层PCB覆铜.jpg

单片机源程序如下:
  1. #include "stm32f10x.h"
  2. #include "delay.h"
  3. #include "usart.h"
  4. #include "led.h"
  5. #include "buzzer.h"
  6. #include "Relay.h"
  7. #include "time.h"
  8. #include "syn6288.h"
  9. #include "LD3320.h"       
  10. #include "stdio.h"

  11. /**************芯片设置命令*********************/
  12. u8 SYN_StopCom[] = {0xFD, 0X00, 0X02, 0X02, 0XFD}; //停止合成
  13. u8 SYN_SuspendCom[] = {0XFD, 0X00, 0X02, 0X03, 0XFC}; //暂停合成
  14. u8 SYN_RecoverCom[] = {0XFD, 0X00, 0X02, 0X04, 0XFB}; //恢复合成
  15. u8 SYN_ChackCom[] = {0XFD, 0X00, 0X02, 0X21, 0XDE}; //状态查询
  16. u8 SYN_PowerDownCom[] = {0XFD, 0X00, 0X02, 0X88, 0X77}; //进入POWER DOWN 状态命令


  17. int main(void)
  18. {
  19.         delay_init();
  20.         LED_init();
  21.         buzzer_init();
  22.         Relay_init();
  23.         LD3320_START();
  24.         uart_init(9600);
  25.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
  26.         Flashing();
  27.         buzzer_On_off();
  28.         //选择背景音乐2。(0:无背景音乐  1-15:背景音乐可选)
  29.                 //m[0~16]:0背景音乐为静音,16背景音乐音量最大
  30.                 //v[0~16]:0朗读音量为静音,16朗读音量最大
  31.                 //t[0~5]:0朗读语速最慢,5朗读语速最快
  32.                 //其他不常用功能请参考数据手册
  33.         SYN_FrameInfo(0, "[v10][m0][t5]主人你好,我是您的语音助手,随时听候您的差遣!");
  34.         while(1)
  35.         {
  36.                 LD3320_main();
  37.                
  38.                
  39.                 //暂停合成,此时没有用到,用于展示函数用法
  40.                 //YS_SYN_Set(SYN_SuspendCom);
  41.         }

  42. }


复制代码
51hei.png
51hei.png

Keil代码下载与原理图和PCB文件:
智能插座.7z (1.11 MB, 下载次数: 96)

评分

参与人数 1黑币 +90 收起 理由
admin + 90 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:207943 发表于 2022-3-2 10:38 | 显示全部楼层
这个对手脚不便人士是个福音,感谢分享!
回复

使用道具 举报

ID:188940 发表于 2022-3-2 13:16 | 显示全部楼层
tian_000 发表于 2022-3-2 10:38
这个对手脚不便人士是个福音,感谢分享!

如果再添加一个红外收发模块,还可以遥控控制红外家电
回复

使用道具 举报

ID:430492 发表于 2022-3-2 13:41 | 显示全部楼层
如果再添加一个红外接收模块就更好了!
回复

使用道具 举报

ID:188940 发表于 2022-3-3 08:21 | 显示全部楼层
cooleaf 发表于 2022-3-2 13:41
如果再添加一个红外接收模块就更好了!

是的,可以一试。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表