📄 main.c
字号:
#include "bsrSD.h" //包含语音识别库的头文件
#define P_Watchdog_Clear (unsigned int*)0x7012
void Delay(unsigned int Timers);
void Play_Sound(unsigned int Index); //在Sound.c中定义
void ReTrainBS(void); //在Sound.c中定义
int main(void)
{
unsigned int uiTemp=0,Loop_Counter=0;
int res;
ReTrainBS(); //调用语音识别的训练程序,在Sound.c中定义
Play_Sound(12); //..........开始识别命令.......
BSR_InitRecognizer(BSR_MIC); //辨识器初始化
while(1)
{
res = BSR_GetResult(); //获取语音识别结果,在库中定义
switch(res) //根据识别的结果进行分支跳转
{
case 0x100: //name ID
Play_Sound(7); //播放:lalalalala
Loop_Counter = 0; //计数清零
break;
case 0x101: //命令一 ID
Play_Sound(5); //播放:I`m fine
Loop_Counter = 0; //计数清零
break;
case 0x102: //命令二 ID
Play_Sound(8); //播放:Happy new year
Loop_Counter = 0; //计数清零
break;
case 0x103: //命令三 ID
Play_Sound(6); //播放:I love you too
Loop_Counter = 0; //计数清零
break;
case 0x104: //命令四 ID
Play_Sound(9); //播放:ZZZZZZ(打呼噜声)
Loop_Counter = 0; //计数清零
break;
default:
break;
}
Loop_Counter++; //循环计数器自加一,用于程序中的状态中断
*P_Watchdog_Clear = 0x0001; //清看门狗
}
}
//========================================================================
// 语法格式: void Delay(unsigned int Timers)
// 实现功能: 延时子程序
// 参数: Timers 延时的时长控制参数
// 返回值: 无
//========================================================================
void Delay(unsigned int Timers)
{
unsigned int i;
while(Timers!=0)
{
for(i=0;i<0xffff;i++)
*P_Watchdog_Clear = 0x0001;
Timers--;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -