STM32使用ASR01语音播报模块

这篇具有很好参考价值的文章主要介绍了STM32使用ASR01语音播报模块。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

这里使用的asr01语音播报模块是模块化编程

先下载天问block软件

点击这里下载天问block

 选上设备:

基于stm32的语音播报,stm32,单片机,嵌入式硬件

 添加扩展:基于stm32的语音播报,stm32,单片机,嵌入式硬件

 

自己再根据鹿小班模块进行操作进行相关操作,先接上usb数据线

记得先生成模型再去编译下载

 

基于stm32的语音播报,stm32,单片机,嵌入式硬件

 发送给单片机通信时只需要vcc gnd 还有tx接上单片机rx,如果想用stm32控制语音模块,可以接线,让asr01读取单片机引脚。

基于stm32的语音播报,stm32,单片机,嵌入式硬件

这里提供一套修改好的天问程序模板和stm32f103模板

链接: 天问模板链接 提取码: ytie文章来源地址https://www.toymoban.com/news/detail-588045.html

main.c

#include "stm32f10x.h"
#include "led.h"
#include "delay.h"
#include "beep.h"
#include "key.h"
#include "Usart.h"

 int main(void)
 {	
	 vu8 k=0;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//选择第二组
	led_init();
	beep_init();
	key_init();
	delay_init();
	usat2_init();
led0=1;
	 led1=1;
	while(1)
	{
		if(USART_ReceiveData(USART1)=='A')led1=0; 
		if(USART_ReceiveData(USART1)==2)led1=1; 
		if(USART_ReceiveData(USART1)==5)BEEP =1;
    if(USART_ReceiveData(USART1)==6)BEEP =0;
		
		k=ks(0); 
		if(k)
		{
			switch(k)
			{
				case sup:led0=!led0;USART_SendData(USART1,0x01);break;
				case s0:USART_SendData(USART1,0x04);led0=!led0;led1=!led1;break;
				case s1:USART_SendData(USART1,0x02);led1=!led1;break;
				case s2:USART_SendData(USART1,0x03);led1=!led1;break;
				
			}
		}
		else delay_ms(10);
	}
 }
 

Usart.c

#include "Usart.h"

void usat2_init(void)
{
	GPIO_InitTypeDef uart;
	USART_InitTypeDef uart1;
	NVIC_InitTypeDef uart2;

	RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);//使能相应时钟
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);	//串口时钟

	uart.GPIO_Mode=GPIO_Mode_AF_PP;//复用推挽输出
	uart.GPIO_Pin=GPIO_Pin_9;//输出引脚
	uart.GPIO_Speed=GPIO_Speed_10MHz;
	GPIO_Init(GPIOA,&uart);

	uart.GPIO_Mode=GPIO_Mode_IN_FLOATING;//浮空输入
	uart.GPIO_Pin=GPIO_Pin_10;
	uart.GPIO_Speed=GPIO_Speed_10MHz;
	GPIO_Init(GPIOA,&uart);//模式设置
	
	uart1.USART_BaudRate=9600;//比特率
	uart1.USART_HardwareFlowControl=USART_HardwareFlowControl_None;//不使用yingjianliu
	uart1.USART_Mode=USART_Mode_Rx|USART_Mode_Tx;//使能发送与接收
	uart1.USART_Parity=USART_Parity_No;//奇偶校验
	uart1.USART_StopBits=USART_StopBits_1;//停止位
	uart1.USART_WordLength=USART_WordLength_8b;//字长		
	USART_Init(USART1,&uart1);//初始化串口,并进行配置
	
	
	USART_Cmd(USART1,ENABLE);//使能串口
	//以上为串口
	
	//之后为中断
	USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);//(中断使能函数)开启接收中断;串口端选择,方式,使能{EA}
	
	uart2.NVIC_IRQChannel=USART1_IRQn;
	uart2.NVIC_IRQChannelCmd=ENABLE;
	uart2.NVIC_IRQChannelPreemptionPriority=1;//抢占优先级
	uart2.NVIC_IRQChannelSubPriority=1;//响应优先级
	NVIC_Init(&uart2);//NVIC中断优先级
	
}

void USART1_IRQ(void)//中断服务函数
{
	u8 res;
	if(USART_GetITStatus(USART1,USART_IT_RXNE))
	{
		res=USART_ReceiveData(USART1);//接收
		USART_SendData(USART1,res);//发送
	}
}

Usart.h

#ifndef __chaunkou_h
#define __chaunkou_h
#include "stm32f10x.h"

void usat2_init(void);
#endif

到了这里,关于STM32使用ASR01语音播报模块的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • STM32控制JQ8400语音播报模块

    时间记录:2024/2/7 标示 说明 ONE LINE 一线操作引脚 BUSY 忙信号引脚,正在播放语音时输出高电平 RX 串口两线操作接收引脚 TX 串口两线操作发送引脚 GND 电源地引脚 DC-5V 电源引脚,3.3-5V DAC-R DAC输出右声道引脚 DAC-L DAC输出左声道引脚 SPK- 喇叭-引脚 SPK+ 喇叭+引脚 (1)时序图 (

    2024年04月11日
    浏览(41)
  • STM32系列——手把手教你将SYN6288语音播报模块的标准库程序转为hal库使用

    目录 前言 1. 原理 2. Cubmx配置 3. keil5编写代码 3.1 main.c 3.2 syn6288.c 3.3 syn6288.h 本教程基于 stm32f103c8t6 最小系统板, hal库 开发。 操作简单,讲解直接清楚,旨在让大家少走弯路。 SYN6288就是用到一个串口资源即可,用STM32开发起来不难。 配置串口3为异步通信模式 ,注意波特率

    2024年02月07日
    浏览(81)
  • 基于STM32 + SYN6288语音播报

    完整代码下载 https://download.csdn.net/download/zhouml_msn/85592868 1:5V供电 ,功耗约120mA (带图中小喇叭); 2:最少接3根线:5V,  GND,  RXD,TXD-可不接,BY-可不接 3:两种音源输出接口,排针、标准3.5mm接口,接小喇叭和普通音箱都无压力。 4:每次最多可转换200字节文本; 1:串口配置波

    2024年02月13日
    浏览(38)
  • 单片机设计:基于stm32智能语音识别蓝牙音响(ld3320语音识别模块+mp3模块+喇叭+点阵屏+OLED+蓝牙+手机app)

    单片机设计:基于stm32智能语音识别蓝牙音响(ld3320语音识别模块+mp3模块+喇叭+点阵屏+OLED+蓝牙+手机app) 一、主要功能: 1.手机app播放内存卡的音乐、同时点阵屏随音乐进行跳动 2.0LED、手机app显示当前音量以及当前状态 3.手机app远程调节音量阈值,可以切换上一首、下一首,音乐

    2024年02月07日
    浏览(52)
  • 通过串口中断的方式进行ASR-01S模块与STM32通信(问题与解决)

    最近在做一个智能家居的项目,需要实现语音控制的功能,于是我选用了ASR-01S模块与STM32通信,这个模块最大的好处在于有配套的编程软件和语音库,不用自己训练且编程简单(少儿编程的程度)。ASR-01S的代码架构在这不多说,总之在收到语音后它会通过串口发送一串命令给

    2024年04月22日
    浏览(49)
  • STM32单片机与LD3320语音模块的交互方法

    在嵌入式系统中,STM32单片机广泛应用于各种应用领域。而LD3320语音模块是一种常用的语音识别与合成模块。本文将介绍如何在STM32单片机上与LD3320语音模块进行交互,并提供相应的源代码。 硬件连接 首先,我们需要将STM32单片机与LD3320语音模块进行正确的硬件连接。以下是

    2024年03月13日
    浏览(53)
  • STM32+JR6001语音播报

      文章目录 前言 一、JR6001怎么用? 二、使用步骤 1.合成语音 2.STM32代码 总结   最近在做一个利用STM32最小系统实现语音播报的小项目,加入到智能家居远程控制系统中,用来提示上位机对应操作的播报,于是就选择了JR6001作为语音播报模块,接下来就是学习过程。 提示:

    2024年02月06日
    浏览(162)
  • LU_ASR01语音模块使用

    平时用语音助手饱受折磨,今天安利一个好东西,LU_ASR01模块,语音识别播报一体,还省了32。 语音识别 一共 8 个 I/O,1 路串口 TXD,1 路传感器接口。其中 I/O1-I/O6 可以输出 PWM 信 号,I/O7、I/O8 不能输出 PWM 信号。DHT 接口可接 DHT11 模块或 DS18B20 模块,对应的软件上要选对传感

    2024年02月11日
    浏览(41)
  • 毕业设计|基于STM32单片机的语音识别控制智能停车场设计

    演示视频 https://www.bilibili.com/video/BV1bC4y1579d/?spm_id_from=333.999.0.0vd_source=0fb8a603c3cd84c0c72e5fa5d4201605 本系统采用stm32f103c8t6单片机+晶振电路+复位电路+电源电路+车位检测电路+OLED显示电路+继电器控制电路+语音识别电路构成。 1,通过红外对管模块实时检测车位是否占用,车位分为

    2024年02月04日
    浏览(81)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包