历史上的今天
今天是:2024年11月10日(星期日)
2020年11月10日 | LD3320语音识别模块系列单片机程序代码
2020-11-10 来源:51hei
单片机源程序如下:
/***************************飞音云电子****************************
** 工程名称:YS-V0.7语音识别模块驱动程序
** CPU: STC11L08XE
** 晶振:22.1184MHZ
** 波特率:9600 bit/S
** 配套产品信息:YS-V0.7语音识别开发板
** 说明:普通+按键触发模式: 即每次识别时都需要说“小杰”这个口令 ,才能够进行下一级的识别
/***************************飞音云电子******************************/
#include "config.h"
/************************************************************************************/
// nAsrStatus 用来在main主程序中表示程序运行的状态,不是LD3320芯片内部的状态寄存器
// LD_ASR_NONE: 表示没有在作ASR识别
// LD_ASR_RUNING: 表示LD3320正在作ASR识别中
// LD_ASR_FOUNDOK: 表示一次识别流程结束后,有一个识别结果
// LD_ASR_FOUNDZERO: 表示一次识别流程结束后,没有识别结果
// LD_ASR_ERROR: 表示一次识别流程中LD3320芯片内部出现不正确的状态
/***********************************************************************************/
uint8 idata nAsrStatus=0;
void MCU_init();
void ProcessInt0(); //识别处理函数
void delay(unsigned long uldata);
void User_handle(uint8 dat);//用户执行操作函数
void Led_test(void);//单片机工作指示
uint8_t G0_flag=DISABLE;//运行标志,ENABLE:运行。DISABLE:禁止运行
sbit LED=P4^2;//信号指示灯
void Delay200ms();
sbit CMD_KE=P4^1;//触发按键
/***********************************************************
* 名 称: void main(void)
* 功 能: 主函数 程序入口
* 入口参数:
* 出口参数:
* 说 明:
* 调用方法:
**********************************************************/
void main(void)
{
uint8 idata nAsrRes;
uint8 i=0;
Led_test();
MCU_init();
LD_Reset();
UartIni(); /*串口初始化*/
nAsrStatus = LD_ASR_NONE; // 初始状态:没有在作ASR
#ifdef TEST
PrintCom("串口运行中....rn"); /*text.....*/
PrintCom("口令:1、代码测试rn"); /*text.....*/
PrintCom(" 2、开发板验证rn"); /*text.....*/
PrintCom(" 3、开灯rn"); /*text.....*/
PrintCom(" 4、关灯rn"); /*text.....*/
PrintCom(" 5、北京rn"); /*text.....*/
PrintCom(" 6、上海rn"); /*text.....*/
PrintCom(" 7、广州rn"); /*text.....*/
#endif
while(1)
{
switch(nAsrStatus)
{
case LD_ASR_RUNING:
case LD_ASR_ERROR:
break;
case LD_ASR_NONE:
{
nAsrStatus=LD_ASR_RUNING;
if (RunASR()==0) /* 启动一次ASR识别流程:ASR初始化,ASR添加关键词语,启动ASR运算*/
{
nAsrStatus = LD_ASR_ERROR;
}
break;
}
case LD_ASR_FOUNDOK: /* 一次ASR识别流程结束,去取ASR识别结果*/
{
nAsrRes = LD_GetResult(); /*获取结果*/
User_handle(nAsrRes);//用户执行函数
nAsrStatus = LD_ASR_NONE;
break;
}
case LD_ASR_FOUNDZERO:
default:
{
nAsrStatus = LD_ASR_NONE;
break;
}
}// switch
}// while
}
/***********************************************************
* 名 称: LED灯测试
* 功 能: 单片机是否工作指示
* 入口参数: 无
* 出口参数:无
* 说 明:
**********************************************************/
void Led_test(void)
{
LED=~ LED;
Delay200ms();
LED=~ LED;
Delay200ms();
LED=~ LED;
Delay200ms();
LED=~ LED;
Delay200ms();
LED=~ LED;
Delay200ms();
LED=~ LED;
}
/***********************************************************
* 名 称: void MCU_init()
* 功 能: 单片机初始化
* 入口参数:
* 出口参数:
* 说 明:
* 调用方法:
**********************************************************/
void MCU_init()
{
P0 = 0xff;
P1 = 0xff;
P2 = 0xff;
P3 = 0xff;
P4 = 0xff;
P1M0=0XFF; //P1端口设置为推挽输出功能,即提高IO口驱动能力,从驱动继电器模块工作
P1M1=0X00;
LD_MODE = 0; // 设置MD管脚为低,并行模式读写
IE0=1;
EX0=1;
EA=1;
}
/***********************************************************
* 名 称: 延时函数
* 功 能:
* 入口参数:
* 出口参数:
* 说 明:
* 调用方法:
**********************************************************/
void Delay200us() //@22.1184MHz
{
unsigned char i, j;
_nop_();
_nop_();
i = 5;
j = 73;
do
{
while (--j);
} while (--i);
}
void delay(unsigned long uldata)
{
unsigned int j = 0;
unsigned int g = 0;
while(uldata--)
Delay200us();
}
void Delay200ms() //@22.1184MHz
{
unsigned char i, j, k;
i = 17;
j = 208;
史海拾趣
|
因为成本的限制,需要将CCD芯片的成本控制在100块钱之内。目前还没有找到合适的(需要在60fps以上)。 现在有一个笨笨的想法,不知道能否实现。 就是能否控制扫描的行数(比如直扫描镜头的中间几十行),这样能否达到提高帧数的目的? 或者各位 ...… 查看全部问答> |
|
市面上的蓝牙适配器BTH v2.0 + EDR 宣称最大数据率可达到3Mbps 在我们项目中使用了一块CSR芯片的某小公司的蓝牙模块,下位机与之相接的UART波特率选921600bps (约92KB/s)。但在实际的数据传输中,下位机最快只能是50微秒发送一个字节(20KB/s) ...… 查看全部问答> |
|
团购real6410开发板,我们的团购活动从年初开始一直在搞,但是由于货源和网友喜好的问题一直没有搞成功过,因为我是做嵌入式LINUX的,以前用过2440的平台,现在用三星的平台不多了,但是没事儿也喜欢玩玩板子,鉴于我前几次开的询问ARM开发板的帖 ...… 查看全部问答> |
|
关于 arm7的void _irq IRQ_Expection(void) 最近看了下arm7的代码,看到void _irq IRQ_Expection(void)这个中断的函数,我想问的是这个“_irq”是怎么回事???它之前有定义还是????… 查看全部问答> |
|
单片机有的是用1AA或2AA 电池供电的,这时为了保正单片机的工作电压在2.5~5.0之间,这时就要用到DC-DC升压电路了,升压电路一般要用到电感 和肖特基二极管 电阻 电容等外围元件,空间较小的情部一下就要想办法精简一下外围器件了,这时不需电感和肖 ...… 查看全部问答> |




