当前位置:   article > 正文

【51单片机】LD3320A语音识别控制设计_普中51单片机开发板可以用语音模块

普中51单片机开发板可以用语音模块


一、主要功能

系统运行后,当对语音模块说出“小易小易”时,收到回复信息后,开始说出控制指令,项目中已设计:开门、关门、开灯、关灯、晚安指令,每当说控制指令前,必须先说“小易小易”,等待回复后才能继续。如果没有回复,系统会提示要说对应的指令。对应指令可控制舵机和LED的开关。


二、硬件资源

1.硬件准备

项目所需要的硬件资源如下:
1、51单片机开发板1个
2、SG90舵机模块1个
3、LD3320A语音识别模块1个
4、USB线1条(用于供电和程序下载)
5、杜邦线若干
6、JQ8900-16P语音模块1个

2.硬件连接

	  SG90舵机模块-->单片机IO
	  MOTOR-->P21
	  VCC-->5V
	  GND-->GND

	  LD3320A语音识别模块-->单片机IO
	  5V-->5V
	  GND-->GND
	  TXD-->P30
	  RXD-->P31

	  JQ8900-16P语音模块-->单片机IO
	  VPP-->P11
	  GND-->GND
	  VCC-->5V
	  SPK-/SPK+-->喇叭
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

三、软件设计

1.软件结构

在这里插入图片描述

2.主要代码

//语音识别控制
void speech_recognition_control(void)
{
	u8 len=0;
	u8 i=0;
	u8 res=0;
	steer_control(0);
	while(1)
	{
		if(UART_RX_STA&0x8000)//判断串口是否接收完数据
		{
			len=UART_RX_STA&0X3FFF;
			for(i=0;i<len;i++)
				UART_SendData(UART_RX_BUF[i]);
			UART_RX_BUF[len]='\0';
			if(strcmp((const char*)UART_RX_BUF,"收到")==0)sys_str.sta=1;
			else if(strcmp((const char*)UART_RX_BUF,"请叫小易小易")==0)sys_str.sta=2;
			else if(strcmp((const char*)UART_RX_BUF,"没听清")==0)sys_str.sta=3;
			else if(strcmp((const char*)UART_RX_BUF,"开门")==0)sys_str.sta=4;	
			else if(strcmp((const char*)UART_RX_BUF,"关门")==0)sys_str.sta=5;
			else if(strcmp((const char*)UART_RX_BUF,"开灯")==0)sys_str.sta=6;
			else if(strcmp((const char*)UART_RX_BUF,"关灯")==0)sys_str.sta=7;
			else if(strcmp((const char*)UART_RX_BUF,"晚安")==0)sys_str.sta=8;				
			memset(UART_RX_BUF,0,len);
			UART_RX_STA=0;//清除标记,等待下次接收
		}
		//根据语音识别播放
		if(sys_str.sta)
		{
			play_song_num(sys_str.sta);
			switch(sys_str.sta)
			{
				case 4: steer_control(1);break;//开门
				case 5: steer_control(0);break;//关门
				case 6: LED=0;break;//开灯
				case 7: LED=1;break;//关灯
			}
			sys_str.sta=0;		
		}
	}	
}


//应用控制系统
void app_control_sys(void)
{
	time0_init();//初始化定时器0
	lcd12864_init();//LCD12864初始化
	UART_Init();
	ES=1;
	
	while(1)
	{
		speech_recognition_control();//语音识别控制										
	}	
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56

四、实验现象

B站演示视频:https://space.bilibili.com/444388619
在这里插入图片描述
在这里插入图片描述


联系作者

作者B站链接:https://space.bilibili.com/444388619
可提供手把手教学服务,资料获取请联系作者QQ:3443792007
专注于51单片机、STM32、国产32、DSP、Proteus、ardunio、ESP32、物联网软件开发,PCB设计,视频分享,技术交流。

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号