ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:379.39KB ,
资源ID:20996909      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20996909.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于凌阳单片机的语音遥控小车文档格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于凌阳单片机的语音遥控小车文档格式.docx

1、2 配合 SPCE061A的语音特色,利用系统的语音播放和语音识别资源,实现语音控制的功能;3 可以在行走过程中声控改变小车运动状态;4 在超出语音控制范围时能够自动停车。2.2 功能说明1. 小车运动控制:通过 SPCE061A的 I/O端口,驱动控制板的 H桥电路,进而控制前轮电机和后轮电机。2. 声控功能:利用特定人语音识别实现小车的名称和动作训练,并根据相应的语音指令输入执行前进、后退、左转、右转、停车等动作。3. 定时控制功能:利用时基定时器设定运行时间,小车运行同时启动定时器,时间到小车停止运行。车体:双电机两轮驱动 供电:电池(四节 AA:1.2V4 或 1.5V4) 注:由于语

2、音信号的不确定性,语音识别的过程会出现一定的误差和不准确性;由于小车行动比较灵活,速度比较快,在使用时一定要注意保持场地足够大,且保证不会对周围的物体造成伤害;不要让小车长时间运行在堵转状态(堵转状态:由于小车所受阻力过大,造成小车电机加电但并不转动的现象),这样会造成很大的堵转电流,有可能会损坏小车的控制电路。可以自行添加各种传感器,实现避障、循迹、跟踪等功能。3 芯片特性简介3.1 SPCE061A简介 随着单片机功能集成化的发展,其应用领域也逐渐地由传统的控制,扩展为控制处理、数据处理以及数字信号处理(DSP,Digital SignalProcessing)等领域。凌阳的16位单片机就

3、是为适应这种发展而设计的。它的CPU内核采用凌阳最新推出的nSP(Microcontroller and Signal Processor)16位微处理器芯片(以下简称nSP)。围绕nSP所形成的16位nSP系列单片机(以下简称nSP家族)采用的是模块式集成结构,它以nSP内核为中心集成不同规模的ROM、RAM和功能丰富的各种外设接口部件,如图3.1所示。 图3.1 nSP家族的模块式结构nSP内核是一个通用的核结构。除此之外的其它功能模块均为可选结构,亦即这种结构可大可小或可有可无。借助这种通用结构附加可选结构的积木式的构成,便可形成各种不同系列派生产品,以适合不同的应用场合。这样做无疑会使

4、每一种派生产品具有更强的功能和更低的成本。nSP家族有以下特点: 体积小、集成度高、可靠性好且易于扩展nSP家族把各功能部件模块化地集成在一个芯片里,内部采用总线结构,因而减少了各功能部件之间的连线,提高了其可靠性和抗干扰能力。另外,模块化的结构易于系统扩展,以适应不同用户的需求。 具有较强的中断处理能力nSP家族的中断系统支持10个中断向量及10余个中断源,适合实时应用领域。 高性能价格比nSP家族片内带有高寻址能力的ROM、静态RAM和多功能的I/O口。另外,nSP的指令系统提供具有较高运算速度的16位16位的乘法运算指令和内积运算指令,为其应用增添了DSP功能,使得nSP家族运用在复杂的

5、数字信号处理方面既很便利,又比专用的DSP芯片廉价。 功能强、效率高的指令系统nSP指令系统的指令格式紧凑,执行迅速,并且其指令结构提供了对高级语言的支持,这可以大大缩短产品的开发时间。 低功耗、低电压nSP家族采用CMOS制造工艺,同时增加了软件激发的弱振方式、空闲方式和掉电方式,极大地降低了其功耗。nSP家族的工作电压范围大,能在低电压供电时正常工作,且能用电池供电。这对于其在野外作业等领域中的应用具有特殊的意义。SPCE061A是一款 16 位nSP结构的微控制器。该芯片带有硬件乘法器,能够实现乘法运算、内积运算等复杂的运算。它不仅运算能力强,而且处理速度快,单周期最高可以达到 49MH

6、z。SPCE061A 内嵌 32K 字的 FLASH 程序存储器以及 2K 的SRAM。同时该 SOC 芯片具有 ADC 和 DAC 功能6,其 MIC_ADC 通道带有AGC自动增益环节,能够轻松将语音信号采集到芯片内部,两路 10 位的电流输出型DAC,只要外接一个功放就可以完成声音的播放。以上介绍的这些硬件资源使得该SPCE061A 能够单芯片实现语音处理功能7 。为实现语音播报功能SPCE061A精简开发板是最主要的部分,所有的设计都是围绕它展开的,它为播报的实现提供了理论基础。SPCE061A精简开发板(简称61板),是以凌阳16位单片机SPCE061A精简开发仿真实验板,大小相当于

7、一张扑克牌,可作为单片机项目初期研发使用。61板除了具备单片机最小系统电路外,还包括有电源电路、音频电路(含MIC输入部分和DAC音频输出部分)、复位电路等,采用电池供电,方便随身携带!使我们在掌握软件的同时,熟悉单片机硬件的设计制作,锻炼我们的动手能力,也为单片机学习者和开发者创造了一个良好的学习条件和开发新产品的机会!61板上有调试器接口(Probe接口)以及下载线(EZ_Probe)接口,分别可接凌阳科技的在线调试器、简易下载线,配合unSP IDE,可方便地在板上实现程序的下载、在线仿真调试8。61板上的主要功能模块如下:SPCE061A单片机最小系统外围电路模块;电源输入模块;音频电

8、路(DAC音频功放输出)模块;按键模块;I/O端口接口模块;调试、下载接口模块;16位nSP微处理器;电压(CPU) VDD为2.43.6V (I/O) VDDH为2.45.5V;时钟:0.32MHz49.152MHz ;内置2K字SRAM;内置32K FLASH;可编程音频处理;晶体振荡器;系统处于备用状态下(时钟处于停止状态),耗电仅为2A3.6V;2个16位可编程定时器/计数器(可自动预置初始计数值);2个10位DAC(数-模转换)输出通道;32位通用可编程输入/输出端口;14个中断源可来自定时器A / B,时基,2个外部时钟源输入,键唤醒;具备触键唤醒的功能;使用凌阳音频编码SACM_

9、S240方式(2.4K位/秒),能容纳210秒的语音数据;锁相环PLL振荡器提供系统时钟信号;32768Hz实时时钟;7通道10位电压模-数转换器(ADC)和单通道声音模-数转换器;声音模-数转换器输入通道内置麦克风放大器和自动增益控制(AGC)功能;具备串行设备接口;具有低电压复位(LVR)功能和低电压监测(LVD)功能;内置在线仿真电路ICE(In- Circuit Emulator)接口;具有保密能力;具有WatchDog功能9 。SPEC061A片内存储器结构:SPEC061A有2K的SRAM(包括堆栈区),其地址范围为0x0000-0x07FF。前64个字,即0x0000-0x003

10、F地址范围内可采用6位地址直接地址寻址方法,寻访速度为2个CPU时钟周期;其余0x0040-0x07FF地址范围内存储器的寻访速度则为3个CPU时钟周期。SPCE061A是一个用闪存代替掩膜ROM的MTP(多次编程)芯片,具有32K闪存容量。用户可以用闪存来存储用户程序。为了安全起见,不对用户开放整体擦除功能。32K字的内嵌式闪存被划分为128页(每页存储容量为256个字),它们在CPU正常状态下均可通过程序擦除或写入。全部32K字闪存均可在ICE工作方式下被编程写入或被擦除。 SPCE061A的结构如图3.2所示: 图3.2 SPCE061A的结构 SPCE061A有两种封装片,一种为84个

11、引脚,PLCC84封装形式;另一种为80个引脚,LQFP80封装。它的排列如图3.3所示。 图3.3 SPCE061ALQFP80分装引脚排列图 在PLCC84封装中,有15个空余脚,用户使用时这15个空余脚悬浮。在LQFP80封装中有9个空余脚,用户使用时这9个空余脚接地。 最小系统接线如图3.4所示,在OSC0、OSC1端接上晶振及谐振电容,在锁相环压控振荡器的阻容输入VCP端接上相应的电容电阻后即可工作。其它不用的电源端和地端接上0.1F的去藕电容提高抗干扰能力。 图3.4 SPCE061A最小系统原理图3.2 端口结构SPCE061A 提供了位控制结构的I/O 端口,每一位都可以单独用

12、于数据输入或输出。每个独立的位可通过以下3 种控制向量来作设定: 1. 数据向量Data 2. 属性向量Attribution 3. 方向控制向量Direction 每3 个对应的控制向量组合在一起,形成一个控制字,用来定义相对应I/O 端口位的输入输出状态和方式。例如,假设需要IOA0 是下拉输入引脚,则相对应的Data、Attribution和Direction 的值均被设为“0”。如果需要IOA1 是带唤醒功能的悬浮式输入引脚,则Data、Attribution 和Direction 的值被设为“010”。与其它的单片机相比,SPCE061A 除了每个I/O 口可以单独定义其状态外,每个

13、对应状态下的I/O 端口性质电路都是内置的,在实际的电路中不需要再外接。例:设A 口为带下拉电阻的输入端口,在连接硬件时不用再外接下拉电路。1. IO口的使用:IOA0到TOA7,用于数码管显示的段驱动。 IOA8到IOA15,用于数码管显示的位驱动。 IOB8到IOB15,用于1*8键盘输入。 IOB0 用于SPR4096模组的时钟端口SCK信号。 IOB1 用于SPR4096模组的数据端口SDK信号。 IOB2 用于数码管的冒号段驱动。IOA口(IOA0IOA15)设置为:带数据缓存器的低电频输出。IOB口(IOB8IOB15)设置为:带下拉电阻的输入引脚。IOB0与IOB2设置为:带数据

14、缓存器的高电频输出。2. SIO口的设置:设置IOB0为SCK(串行接口时钟端口),IOB1为SDK(串行接口数据端口),如表b7置1时不必设置IOB0和IOB1的输入输出状态。 串行设备地址设置为24位由b0,b1控制。 设置数据帧的写传输b6控制。 设置传输速率CPUCLK/8,b4,b3控制。具体控制字如表3.1: 表3.1 SIO口的控制设置b7b6b5b4b3b2b1b0SIO-ConfigR/WR/W-ENClock-Sel-Addr-Select1以上就是所用到的与硬件如LED、键盘、SPR_4096 连接的端口的介绍,除此之外还有异步通信串行接口、音频输入接口、麦克风MIC输入

15、接口等。3.3 凌阳中断应用(1)在每条指令结束后系统都自动检测中断请求信号,如果有中断请求,相应的中断允许位为真(允许中断),相应的总中断0许位为真(允许中断),则响应中断。(2)保护现场,CPU一旦响应中断,中断系统会自动的保存当前的PC和SR寄存器(入栈)进入中断服务程序地址入口,中断服务程序中可以通过入栈保护原程序中用到的数据,保护现场前,一般要关中断以防止现场被破坏。保护现场一般是将堆栈指令将原程序中用到的寄存器推入堆栈,在保护现场之后要开中断,以响应更高优先级的中断申请。(3)中断服务,即为相应的中断源服务。(4)清相应的中断请求标志位,以免CPU总是执行该中断。(5)恢复现场,用

16、堆栈指令将保护在堆栈中的数据弹出来,在恢复现场前要关中断,以防止现场被破坏,在恢复现场后应及时开中断。(6)返回,此时CPU将PC指针和SR内容出栈恢复断点,从而使CPU继续执行刚才被中断的程序。CPU执行中断的服务流程图如图 3.5 所示。图3.5 中断服务流程图SPCE061A系列单片机中断系统,是凌阳16位单片机中中断功能较强的一种,它可以提供14个中断源,具有两个中断优先级,可实现两级中断嵌套功能。用户可以用关中断指令(或复位)屏蔽所有的中断请求,也可以用开中断指令使CPU接受中断申请。每一个中断源可以用软件独立控制为开或关中断状态;但中断级别不可用软件设置。SPCE061A的结构给出

17、了三种类型的中断:软件中断、异常中断和事件中断。1) 软件中断,软件中断是由软件指令break产生的中断。软件中断的向量地址为FFF5H。2)异常中断,异常中断表示为非常重要的事件,一旦发生,CPU必须立即进行处理。目前SPCE061A定义的异常中断只有复位一种。通常,SPCE061A系统复位可以由以下三种情况引起:上电、看门狗计数器溢出以及系统电源低于电压低限。不论什么情况引起复位,都会使复位引脚的电位变低,进而使程序指针PC指向由一个复位向量(FFF7H)所指的系统复位程序入口地址。3)事件中断,事件中断(可简称“中断”,以下提到的“中断”均为事件中断)一般产生于片内设部件或由外设中断输入

18、引脚引入的某个事件。这种中断的开通/禁止,由相应独立使能和相应的IRQ或FIQ总使能控制。SPCE061A的事件中断可采用两种方式:快速中断请求即FIQ中断和中断请求即IRQ中断。这两种中断都有相应的总使能。中断源:SPCE061A单片机的中断系统有14个中断源分为两个定时器溢出中断、两个外部中断、一个串行口中断、一个触键唤醒中断、7个时基信号中断、PWM音频输出中断。中断向量:共有9个中断向量即FIQ、IRQ0IRQ6及UART IRQ。这9个中断向量共可安置14个中断源供用户使用,其中有3个中断源可安置在FIQ或IRQ0IRQ2中,另有10个中断源则可安置在IRQ3IRQ6中。还有一个专门

19、用于通用异步串行口UART的中断源,须安置在UART IRQ向量中。详细如3.2表所示。表3.2 中断向量中断源中断优先级中断向量保留字Fosc/1024溢出信号PWM INTFIQ/IRQ0FFF8H/FFF6H_FIQ/_IRQ0TimerA溢出信号FIQ/IRQ1FFF9H/FFF6H_FIQ/_IRQ1TimerB溢出信号FIQ/IRQ2FFFAH/FFF6H_FIQ/_IRQ2外部时钟输入信号EXT1IRQ3FFFBH_IRQ3外部时钟输入信号EXT2触键唤醒信号4096Hz时基信号IRQ4FFFCH_IRQ42048Hz时基信号1024Hz时基信号4Hz时基信号IRQ5FFFDH_

20、IRQ52Hz时基信号频选信号TMB1IRQ6FFFEH_IRQ6频选信号TMB2UART传输中断IRQ7FFFFH_IRQ7BREAK软中断从表中可以看到每个中断入口地址对应多个中断源,因此在中断服务程序中需通过查询中断请求位来判断是那个中断源请求的中断。SPCE061A单片机有多个中断源,为了使每个中断源都能独立地被开放和屏蔽,以便用户能灵活使用,它在每个中断信号的通道中设置了一个中断屏蔽触发器,只有该触发器无效,它所对应的中断请求信号才能进入CPU,即此类型中断开放。否则即使其对应的中断请求标志位置“1”,CPU也不会响应中断,即此类型的中断被屏蔽。同时CPU内还设置了一个中断允许触发器

21、,它控制CPU能否响应中断。中断控制寄存器。SPCE061A对中断源的开放和屏蔽,以及每个中断源是否被允许中断,都受中断允许寄存器P_INT_Ctrl和P_INT_Clear及P_INT_Ctrl_New控制和一些中断控制指令。中断控制单元P_INT_Ctrl(读/写)(7010H)。P_INT_Ctrl控制单元具有可读和可写的属性,其读写时的意义是不同的。其各位如表3.3所列。表3.3 中断控制单元P_INT_CtrlB7B6B5B4B3B2B1B0IRQ3_KEYIRQ4_4KHzIRQ4_2KHz1KHzIRQ5_4Hz2HzIRQ6_TMB1TMB2B15B14B13B12B11B10

22、B9B8FIQ_Fosc/1024IRQ0_Fosc/1024FIQ_TMAIRQ1_TMAFIQ_TMBIRQ2_TMBIRQ3_EXT2EXT1当写中断控制单元中的某位为“1”时,即允许该位所代表的中断被开放,并关闭屏蔽中断触发器,此时当有该中断申请时,CPU会响应。否则如果该位被置0则禁止该位所代表的中断。即使有中断申请,CPU也不会响应。当读取中断控制单元时,其主要作为中断标志,因为其每一位均代表一个中断,当CPU响应某中断时,便将该中断标志置“1”,即将P_INT_Ctrl中的某位置“1”,可以通过读取该寄存器来确定CPU响应的中断。清除中断标志控制单元P_INT_Clear(写)(

23、7011H)。清除中断标志控制单元主要用于清除中断控制标志位,当CPU响应中断后,会将中断标志置位为“1”,当进入中断服务程序后,要将其控制标志清零,否则CPU总是执行该中断。 其各位如表3.4所列。表3.4 清除中断标志控制单元P_INT_Clear因为P_INT_Clear寄存器的每一位均对应一个中断,所以如果想清除某个中断状态标志,只要将该寄存器中对应的中断位置1即可清除该中断状态标志位。该寄存器只有写的属性,读该寄存器是无任何意义的。激活和屏蔽中断控制单元P_INT_Ctrl_New(读/写)(702DH)。该单元用于激活和屏蔽中断。其各位如表3.5所列。表3.5 激活和屏蔽中断控制单

24、元P_INT_Ctrl_NewFIQIRQ0IRQ1IRQ2当写该控制单元时,与P_INT_Ctrl功能相似。 读该控制单元时,只作为了解激活那一中断的功能使用。与其写入值是一致的。在语音遥控小车系统中应用了两个中断,如下:1)FIQ TMA 用于语音播放/识别中断2)IRQ5 2Hz 用于运动中断定时控制3.4 凌阳语音表3.6 列出了不同音频质量等级的编码技术标准(频响)。表3.6 不同音频质量等级的编码技术标准信号类型频率范围/Hz采样率/kHz量化精度/(位)电话语音2003 400816宽带音频(AM质量)507 000调频广播(FM质量)20000150 00037.8高质量音频(CD质量)2020 00044.1凌阳音频压缩算法处理的语音信号的范围是200Hz3.4KHz的电话话音。压缩分无损压缩和有损压缩。无损压缩一般指:磁盘文件,压缩比低:2:14:1。而有损压缩则是指:音视频文件,压缩比可高达100:凌阳音频压缩算法根据不同的压缩比分为以下几种 (具体可参见语音压缩工具一节内容):SACM-A2000:压缩比为8:,8:1.25,8:1.5 SACM-S480: 压缩比为80:3,80:4.5 SACM-S240:

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1