800|1

1558

帖子

1

TA的资源

五彩晶圆(初级)

楼主
 

【 CH32X035 DIY】+语音模块的控制 [复制链接]

 
本帖最后由 jinglixixi 于 2024-1-23 20:37 编辑

KT148A语音芯片是一种受MCU 控制的功能器件,并以单线通讯的方式工作,俗称一线串口,但可不是 UART 那样的通信呦。其通信协议是非标准化的,需按其标准来生成。

该芯片各引脚的作用如表1所示:

   

 

以该芯片制作的功能模块如图1所示,图2是其电路原理图。在使用时,需通过SPK接口来外接一个8欧姆的扬声器。

   

图1 功能模块

 

   

图2原理图

 

在进行语音播放前,需使用USB转TTL通讯模块来下载语音片段,然后即可通过TRIG键来进行播放测试。每按下一次,即播放一段,并自动指向下一段语音片段。

在下载语音片段时,需将USB转TTL通讯模块的TX引脚连接到语音模块的PB1,并按下DOWN下载键以进入语音下载模式。

语音片段下载的软件如图3所示,需注意的是语音片段的文件格式为*.f1a,普通格式的MP3文件需通过软件来完成转换。

   

图3 软件界面

 

有了前面的准备工作,就可以在CH32X035上编程进行单线通讯了。通过程序的控制,可任意指定播放的语音片段。整个电路的硬件构成见图4所示,测试是通过开发板上的按键来触发语音段的播放,在实际应用中,则是根据工作的进程来自动触发相应语音段的播放,以起到操作提示的效果。

 

图4 硬件构成

 

在PB8连接语音模块PB1的情况下,相应的软件设计如下。

将PB8配置成数据发送引脚及PB7配置按键检测引脚的函数为:

实现高低电平输出的语句定义为:

#define IO1_HIGH()      GPIO_WriteBit(GPIOB, GPIO_Pin_8, Bit_SET);

#define IO1_LOW()       GPIO_WriteBit(GPIOB, GPIO_Pin_8, Bit_RESET);

播放指定语音段的函数为:

 

语音播放的测试主程序为:

  • int main(void)
  • {
  • u8 i=0;
  • int n=1,M=6;
  • NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
  • SystemCoreClockUpdate();
  • Delay_Init();
  •      BSP_LED_Init();
  •      BSP_LED_On();
  • GPIO_Toggle_INIT();
  • BSP_TX_Init();
  • while(1)
  •     {
  •         if(GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_7)==1)
  •         {
  •              GPIO_WriteBit(GPIOA, GPIO_Pin_0, Bit_SET);
  • oneline_send_one_data(n);
  • if(n<M) n=n+1;
  • else
  •             n=1;
  •         }
  •         else
  •         {
  • GPIO_WriteBit(GPIOA, GPIO_Pin_0, Bit_RESET);
  •         }
  •      }
  • }

 

经程序的编译和下载,证明程序正确且有效。

 

演示视频:

播放器加载失败: 未检测到Flash Player,请到安装
语音播报

 

查看本帖全部内容,请登录或者注册

最新回复

语音片段的文件格式为*.f1a需要提前转换才能进行语音模块的控制,,,,   详情 回复 发表于 2024-1-24 07:30
点赞 关注
 
 

回复
举报

6931

帖子

0

TA的资源

五彩晶圆(高级)

沙发
 

语音片段的文件格式为*.f1a需要提前转换才能进行语音模块的控制,,,,

 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条
电源解决方案和技术 | DigiKey 应用探索站
当月好物、电源技术资源、特色活动、DigiKey在线实用工具,干货多多~

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表