300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 单片机设计:基于stm32智能语音识别蓝牙音响(ld3320语音识别模块+mp3模块+喇叭+点阵屏+

单片机设计:基于stm32智能语音识别蓝牙音响(ld3320语音识别模块+mp3模块+喇叭+点阵屏+

时间:2023-01-22 12:02:23

相关推荐

单片机设计:基于stm32智能语音识别蓝牙音响(ld3320语音识别模块+mp3模块+喇叭+点阵屏+

单片机设计:基于stm32智能语音识别蓝牙音响(ld3320语音识别模块+mp3模块+喇叭+点阵屏+OLED+蓝牙+手机app)

一、主要功能:

1.手机app播放内存卡的音乐、同时点阵屏随音乐进行跳动

2.0LED、手机app显示当前音量以及当前状态

3.手机app远程调节音量阈值,可以切换上一首、下一首,音乐播放结束后自动下一首

4.语音模块通过识别人的声音来控制蓝牙音响的状态(上一首,下一首,暂停,播放,音量加,音量减)

当然也可以添加其他功能~

定制可赠送资料:

1.实物

2.源码以及手机app

3.原理图

4.售后线上服务(代码讲解)

二、实物图:

三、部分源码:

主函数部分:

while (1)

{

key = RX;//手机按键值

MP3(key);

if(flag_song==1)//按键的值不等于1 1即为暂停(点阵屏)

{

for(i=1;i<9;i++)

{

num = rand()%10;//随机值

MAX7219_WRITE(i,disp1[num][0]);

}

HAL_Delay(200);

}

if(led_flag==1)

{

HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_RESET);

HAL_Delay(1000);

HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_SET);

led_flag = 0;

}

}

语音识别部分:

void USART3_IRQHandler(void)

{

if(__HAL_UART_GET_FLAG(&huart3, UART_FLAG_IDLE) != RESET) // 空闲中断标记被置位

{

__HAL_UART_CLEAR_IDLEFLAG(&huart3); // 清楚中断标记

HAL_UART_DMAStop(&huart3);// 停止DMA接收

UART_RX_STA3 = UART_RX_LEN3 - __HAL_DMA_GET_COUNTER(huart3.hdmarx); // 总数据量减去未接收到的数据量为已经接收到的数据量

UART_RX_BUF3[UART_RX_STA3] = 0; // 添加结束符

UART_RX_STA3 |= 0X8000;// 标记接收结束

// if(strcmp((char *)UART_RX_BUF3,"1111")==0){RX=2;led_flag=1;HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_RESET);}//播放

// if(strcmp((char *)UART_RX_BUF3,"2222")==0){RX=1;led_flag=1;HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_RESET);}//暂停

// if(strcmp((char *)UART_RX_BUF3,"3333")==0){RX=4;led_flag=1;HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_RESET);}//上一首

// if(strcmp((char *)UART_RX_BUF3,"4444")==0){RX=3;led_flag=1;HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_RESET);}//下一首

// if(strcmp((char *)UART_RX_BUF3,"5555")==0){RX=5;led_flag=1;HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_RESET);}//音量加

// if(strcmp((char *)UART_RX_BUF3,"6666")==0){RX=6;led_flag=1;HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_RESET);}//音量减

if(strcmp((char *)UART_RX_BUF3,"1111")==0){RX=2;led_flag=1;}//播放

if(strcmp((char *)UART_RX_BUF3,"2222")==0){RX=1;led_flag=1;}//暂停

if(strcmp((char *)UART_RX_BUF3,"3333")==0){RX=4;led_flag=1;}//上一首

if(strcmp((char *)UART_RX_BUF3,"4444")==0){RX=3;led_flag=1;}//下一首

if(strcmp((char *)UART_RX_BUF3,"5555")==0){RX=5;led_flag=1;}//音量加

if(strcmp((char *)UART_RX_BUF3,"6666")==0){RX=6;led_flag=1;}//音量减

UART_RX_STA3=0;

HAL_UART_Receive_DMA(&huart3, UART_RX_BUF3, UART_RX_LEN3); // 重新启动DMA接收

}

HAL_UART_IRQHandler(&huart3);

}

四、原理图:

以下是整个工程各个模块的原理图:

五、更多:

如果想要更加详细的了解整个工程的话可以去b站看这个视频演示,下面为视频链接:

单片机设计:基于stm32智能语音识别蓝牙音响(ld3320语音识别模块+mp3模块+喇叭+点阵屏+OLED+蓝牙+手机app)_哔哩哔哩_bilibili

给个免费的三连哦!!!

单片机设计:基于stm32智能语音识别蓝牙音响(ld3320语音识别模块+mp3模块+喇叭+点阵屏+OLED+蓝牙+手机app)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。