基于国产语音芯片KT142A加灵动微的MM32F031K8T6组成的语音提示器

本文详细介绍了基于国产语音芯片KT142A和灵动微MM32F031K8T6单片机开发语音提示器的全过程。作者首先探讨了两种设计方案,并选择了使用现成语音芯片的方案,减少了技术难度和不确定性。硬件设计中,通过简单的串口连接实现控制,虽然初期遇到脚位错误但很快解决。程序开发仅花费了半天时间,最终在一周内完成了项目。
摘要由CSDN通过智能技术生成

基于国产语音芯片KT142A加灵动微的MM32F031K8T6组成的语音提示器

项目简介

前不久,我们公司里面有个项目,需要在现有的产品基础上,增加一些操作的语音提示,这个也是终端的客户提出来的,毕竟有声音提醒,产品的操作体验肯定要好很多,
所以我就在网上到处找相关的方案,以前没接触过这一块,也是新手,所以踩了很多很多的坑。项目也基本开发完毕了,所以就此做总结来记录一下这个开发

详细记录–网上找资料

经过一天网上的查阅资料,发现网上的资料导向,基本只有2种方式去选
方案一:直接用我们的主控芯片,灵动微的MM32F031K8T6 ,用内置的PWM,外挂一个spiflash把预存的声音文件wav格式的,自己解码输出,外围加RC电路再加功放去实现
方案二:直接购买现成的语音芯片,通过串口或者一线串口去控制播放

目前我个人的结论就是选用方案二,我的考虑就是
1、其实选用方案一,是最好的选择,但是奈何网上找了好久,都没有找到合适的例子,自己的思路呢,也只是停留在知道怎么实现,但是需要的技术点非常的多,需要搞掂外挂flash的文件管理,需要搞掂wav的解码,速度还要快,慢了声音效果很差,还有不可预知的稳定性,以及可生产性等等
2、最终网上找了一款芯片,KT142A,深圳市清月电子的,成本也合适,芯片使用起来也很简单。
外围就两颗105电容搞掂
芯片也可以直接驱动扬声器,买回来的样品测了一下,声音还是挺大,挺清晰的

在这里插入图片描述

硬件设计

在这里插入图片描述
实际打板子回来,还是弄错了脚位,不得不单独的跳线,到KT142A芯片的测试板上面去测试

反正也简单,就一个串口搞掂所有的事情

在这里插入图片描述
调好之后,再改一下板子,就可以完成任务了

打板测试,4天,这个也不得不得赞美一下嘉立创,20块钱包邮还能做到48小时发货,太厉害了

程序部分

由于我们产品的保密性,所以我们产品内部的程序细节,不方便暴露,这里就以官方的例程进行说明,其实移植还是非常简单的额

#include "STK6037.h"

//运行晶振:11.05926MHZ
#define TIMER0_H   (65536-1800)/256//定时2Ms
#define TIMER0_L   (65536-1800)%256

#define SYS_Fosc        11059200  //晶振频率			   
#define COMM_BAUD_RATE  9600      //串口波特率

#define OSC_FREQ        11059200  //11059200  
static INT8U Send_buf[10] = {
   0} ;
static INT8U Recv_buf[10] = {
   0} ;

static INT8U SendDataLen = 0 ;
static INT8U ResendDataLen = 0 ;

/******************************串口1的波特率********************************/
//T1作波特率发生器
//在波特率加倍情况下 
#define BAUD_57600    			256 - (OSC_FREQ
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值