




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、,*/ /* */#include ""#include ""#include ""#include "" sbit LED1=P3A4;sbit LED2=P3A5;/*/df" 中有详细说明df “阅读/ 开发者在学习 LD3320 开始时,可以直接把在这个main 函数拷贝到自己单片机中编译运行/ 如果只实现ASR语音识别功能,可以把程序中PlaySound()函数的调用注释掉就可以/mcu_init ,以及对应的管脚连接的定义,/ 当然,用户要根据自己实际的单片机去修改 中断定义/*/ void
2、main()uint8 idata nAsrRes;FlashLED(3);MCU_init();nAsrStatus = LD_ASR_NONE; / PlaySound(CODE_DEFAULT); / while(1)if (bMp3Play!=0)/毕 即 bMp3Play=0continue;/LD_reset();初始状态:没有在作 ASR播放提示音如果还在播放 MP3 中,则等待, 直到 MP3 播放完bMp3Play 是定义的一个全局变量用来记录MP3播放的状态,不是LD3320 芯片内部的寄存器键词语,启动结果switch(nAsrStatus)case LD_ASR_RUN
3、ING: case LD_ASR_ERROR: break;case LDASRNONE:FlashLED(4);nAsrStatus=LD_ASR_RUNING;if (RunASR()=0) /启动一次 ASR识别流程:ASR初始化,ASR运算nAsrStatus = LD_ASR_ERROR;LED1=0;LED2=0;break;case LD_ASR_FOUNDOK:FlashLED(2);nAsrRes = LD_GetResult(); / 一次 ASR识别流程结束,去取ASR添加关ASR识另IPlaySound(nAsrRes);nAsrStatus = LD_ASR_NONE
4、; break;case LDASRFOUNDZERO: default:FlashLED(1);PlaySound(CODE_DEFAULT); nAsrStatus = LD_ASR_NONE; break;/ switch/ while void MCU_init() P1M0 |= 1;P3M0 |= 8;LED1=0;LED2=0;P0 = 0xff;P1 = 0xff;P2 = 0xff;P3 = 0xf7;P4 = 0x0f;软件卞II拟SPI读写设置 MD 管脚为高硬件实现SPI读写设置 MD 管脚为高/ 并行读写 (硬件实现或者软件模拟)设置 MD 管脚为低#if defin
5、ed (SOFT_SPI_PORT) /LD_MODE = 1;/#elif defined (HARD_SPI_PORT) /LD_MODE = 1;/#elseLD_MODE = 0;/#endifIP=0;IPH=0;PX0=1;PT0=1;PS=1;IPH |= 1;EX0=0;EX1=0;EA=1;void delay(unsigned long uldata)unsigned int j = 0;unsigned int g = 0;for (j=0;j<5;j+)for (g=0;g<uldata;g+)_nop_();_nop_();_nop_();void Fla
6、shLED(uint8 nTimes)uint8 k;for (k=0; k<nTimes; k+)LED1=0;LED2=0;delay(15000);LED1=1;LED2=1;delay(15000);void PlaySound(uint8 nCode)switch(nCode)case CODE_BEIJING:nMp3StartPos = MP3_BEIJING_START;nMp3Size = MP3_BEIJING_SIZE;break;case CODE_SHANGHAI:nMp3StartPos = MP3_SHANGHAI_START;nMp3Size = MP3_
7、SHANGHAI_SIZE;break;case CODE_TIANJIN:nMp3StartPos = MP3_TIANJIN_START;nMp3Size = MP3_TIANJIN_SIZE;break;case CODE_CHONGQING:nMp3StartPos = MP3_CHONGQING_START;nMp3Size = MP3_CHONGQING_SIZE;break;default:nMp3StartPos = MP3_NIHAO_START;nMp3Size = MP3_NIHAO_SIZE;break;LD_Init_MP3();LD_AdjustMIX2SPVolu
8、me(15);LD_play();/*/ IO_Send_Byte()是主控MCU向spi-flash (型号为华邦的W25X40)发送指令/ 开发者应该根据自己使用的存储芯片去写具体的函数/ ICroute 公司无法对存储芯片的读写提供技术支持,/ 开发者需要自己向自己使用的存储芯片的厂商获得技术支持/ 或者在网络上搜索相关代码和文档/ 华邦的 spi-flash 的技术支持的文档页面在:/ &dname=23T0M41&xpos=84/* */ void IO_Send_Byte(uint8 dataout)uint8 i = 0;FLASH_CS = 0;for (i=0
9、; i<8; i+)if (dataout & 0x80) = 0x80)FLASH_DIO = 1;elseFLASH_DIO = 0;FLASH_CLK = 1;dataout = (dataout << 1);FLASH_CLK = 0;/*/RunASR(两数实现了一次完整的ASR语音识别流程/ LD_AsrStart()函数实现了 ASR初始化/ LD_AsrAddFixed()函数实现了添加关键词语到LD3320芯片中/ LD_AsrRun()函数启动了一次ASR语音识别流程/ 任何一次ASR识别流程,都需要按照这个顺序,从初始化开始进行,*/uint8
10、RunASR() uint8 i=0;uint8 asrflag=0;for (i=0; i<5; i+)/一共尝试5次启动ASR识别流程LD_AsrStart();delay(100);if (LD_AsrAddFixed()=0)LD_reset();片delay(100);continue;delay(10);if (LD_AsrRun() = 0)LD_reset();片delay(100);continue;防止由于硬件原因导致LD3320 芯片工作不正常,所以/LD3320芯片内部出现不正常,立即重启LD3320芯/并从初始化开始重新 ASR识别流程/LD3320 芯片内部出现不正常, 立即重启 LD3320 芯/并从初始化开始重新 ASR识别流程asrflag
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 各种国家考试试题及答案
- 四川省达州市万源中学2023-2024学年高一上学期12月月考政治无答案
- 四川省宜宾市兴文第二中学校2023-2024学年高一上学期12月月考化学含解析
- 2024届浙江省县域教研联盟高三上学期模拟考试历史 无答案
- 2025-2030中国红外感应器行业市场发展分析及发展前景与投资风险研究报告
- 腰椎病的指导与治疗
- 2025-2030中国真皮男手袋行业市场发展现状及竞争格局与投资前景研究报告
- 2025-2030中国瑞波行业市场发展趋势与前景展望战略研究报告
- 2025年中国重型车底盘零部件市场调查研究报告
- 2025-2030中国汽车通信技术行业市场发展趋势与前景展望战略研究报告
- 2023-2024年《劳务劳动合同样本范本书电子版模板》
- 中国居民口腔健康状况第四次中国口腔健康流行病学调查报告
- MOOC 数据挖掘-国防科技大学 中国大学慕课答案
- 中药注射剂合理使用培训
- 第13课+清前中期的兴盛与危机【中职专用】《中国历史》(高教版2023基础模块)
- 2024年国家粮食和物资储备局直属事业单位招聘笔试参考题库附带答案详解
- 苏轼临江仙课件大学语文完美版
- 《施工测量》课件
- 情绪健康管理服务规范
- 【环氧树脂复合材料研究进展文献综述6000字】
- 人行道混凝土专项施工方案
评论
0/150
提交评论