《毕业设计(论文)语音控制小车.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)语音控制小车.doc(42页珍藏版)》请在三一办公上搜索。
1、山 东 英 才 学 院毕 业 论 文(设 计)论文(设计)题目: 语音控制小车 二级学院: 计算机电子信息工程学院 学科专业: 计算机应用技术 学 号: 200802110110 姓 名: 班 级: 08级计算机应用技术一班 指导教师: 论文提交时间: 2011年4月10日 山东英才学院教务处制2011年 04月 10日 毕业论文(设计)内容介绍论文(设计)题 目语音控制小车选题时间2010年12月1日完成时间2011年4月10日论文(设计)字数11109关 键 词语音、控制论文(设计)题目的来源、理论和实践意义: 根据美国玩具协会的调查统计,近年来全球玩具销量增幅与全球平均GDP增幅大致相当
2、。而全球玩具市场的内在结构比重却发生了重大变化:传统玩具的市场比重正在逐步缩水,高科技含量的电子玩具则蒸蒸日上。美国玩具市场的高科技电子玩具的年销售额2004年较2003年增长52,而传统玩具的年销售额仅增长3。英国玩具零售商协会选出的2007年圣诞节最受欢迎的十大玩具中,有七款玩具配有电子元件。从这些数字可以看出,高科技含量的电子互动式玩具已经成为玩具行业发展的主流。本文设计一个具有语音识别功能的智能遥控小车。该小车对传统的手动遥控小车的机械部分做了改进,使之可以实现任意角度转向和以任意速度前进,而不像一般的小车那样只能以固定角度转向和以固定速度前进,因此更加接近真实的车辆。本文还在小车的控
3、制系统中采用语音识别系统,使控制者可以用语音对小车进行控制,产生相应的动作,而且小车和控制者还具有一定的交互功能。论文(设计)的主要内容及创新点:本文利用凌阳单片机的原理,设计一个具有语音识别功能的智能遥控小车。该设计将遥控车由传统的手动遥控改成了语音识别遥控,使控制者可以通过语音控制小车实现预设动作,从而释放控制者的双手,而且小车和控制者之间还具有一定的交互功能。所以此次研究具有较强的实用性和发展前景。附:论文(设计)本人签名:杨晓明 2011年 4月 10 日目录中文摘要:3一、引言:4二、课题可行性分析:5三、方案概述及设计简介:6(一)SPCE061A 特性简介:6(二)SPCE061
4、A 单片机强大的语音功能:7四、语音遥控小车结构示意:12五、语音遥控小车驱动电路分析:13六、语音遥控小车流程图:16(一)主程序流程图说明:16 (二)小车的行走原理:16(三)前进语音命令程序图说明:17(四)拐弯语音命令程序图说明:18(五)倒车语音命令程序图说明:20 (六) 全桥驱动原理:21七、语音遥控小车蔽障程序:23(一)避障器件选择:23(二)器件放置位置方案选择:23(三)避障方式选择:23八、语音遥控小车训练流程分析:24九、语音遥控小车的语音训练步骤:25十、语音遥控小车的实验结果:27十一.结束语:28致谢:29参考文献:29附录:30 主控制源程序:30 智能自动
5、化SPCE061A单片机摘要:近几年来,智能化和自动化技术在玩具制造领域中越来越被关注。本文介绍一种智能化小车控制系统的设计语音控制小车。语音控制小车是基于SPCE061A的代表性兴趣产品,它配合61板推出,综合应用了SPCE061A的众多资源,小车采用语音识别技术,可通过语音命令对其行驶状态进行控制 。首先介绍了SPCE061A的主要性能及其引脚的功能;接着完成了电源电路、复位电路、键盘电路、音频输入电路,音频输出电路和无线控制电路等硬件功能模块的设计。软件设计模块能实现智能小车的前进、后退、转向、停止、避障、表演动作以及循线等功能。测试表明,在环境背景噪音不太大,控制者的发音清晰的前提下,
6、语音控制小车的语音识别系统能对特定的语音指令做出智能反应,做出预想中的有限的动作。 关键词: SPCE061A单片机;语音控制;语音识别系统;智能反映 AbstractIn recent years, Intelligent and automation technology in the toy manufacture have been paid more and more attention.Introduce an intelligent vehicle control system design. SPCE061A program the system to single-chip,
7、 based on implementation of the cars voice control, This paper introduces the hardware sub-system design and implementation. The SPCE061As main characters and pin function are introduced firstly. Completed the power circuit, reset circuit, keyboard circuitry, audio input circuits, audio output circu
8、it and control circuit of wireless hardware such as the design of function modules. Software design module can achieve smart car forward, backward, turn, stop, obstacle avoidance, performing actions, as well as on-line functions. Test showed that the background noise in the environment is not too gr
9、eat, control persons under the premise of clear pronunciation, voice control car speech recognition systems for specific voice commands to make intelligent reaction, limited to the desired action. Keywords: SPCE061A; Voice control; Speech Recognition System; Intelligent reflect一、引言语音识别技术是近年来十分活跃的研究领
10、域。语音识别系统的实用化研究是语音识别研究的一个主要方向。以玩具市场为例,具有高科技含量的电子玩具、智能玩具发展迅猛,电子互动式、智能化玩具已经成为玩具行业发展的主流。我国是玩具生产和出口大国,但在高科技玩具的发展方面和国外的差距很大,因此,及时投入精力广泛开展这方面的研究,无论对技术创新应用,还是社会经济发展,都有巨大的现实意义。与机器进行语音交流,让机器明白你说什么,这是人们长期以来梦寐以求的事情。语音识别技术就是让机器通过识别和理解过程把语音信号转变为相应的文本或命令的高技术。近二十年来,语音识别技术取得显著进步,开始从实验室走向市场。语音识别功能大大增加了玩具使用的乐趣,并使玩具体现出
11、一定的智能性,因此成为大部分电子玩具、智能玩具设计中使用的关键技术。 本文利用凌阳单片机设计一个具有语音识别功能的智能遥控小车。该设计将遥控车由传统的手动遥控改成了语音识别遥控,集成了先进的语音识别技术,加上小车的机动灵活的特点,使控制者可以通过语音控制小车实现预设动作,从而释放控制者的双手,而且小车和控制者之间还具有一定的交互功能。所以此次研究具有较强的实用性和发展前景。二、课题可行性分析 如今像是科幻电影中想象出来的各类机器人使我们现代人的思绪和设想都得到了充分的发挥。人们也认识到机器人会给人们提供更多的方便和提高处理危机事件的能力。进入90年代,随着传感技术,包括视觉传感器、非视觉传感器
12、(力觉、触觉、接近觉等)以及信息处理技术的发展,出现了第二代机器人有感觉的机器人。它能够获得作业环境和作业对象的部分有关信息,进行一定的实时处理,引导机器人进行作业。而作为21世纪的新新人类,研究一款语音遥控小车为以后研究更艰难的硬件软件作品提供一个良好的平台。语音控制小车是基于SPCE061A的代表性兴趣产品,它配合61板推出,综合应用了SPCE061A的众多资源,打破了传统教学中单片机学习枯燥和低效的现状。小车采用语音识别技术,可通过语音命令对其行驶状态进行控制。 三、方案概述及设计简介(一)SPCE061A 特性简介在众多的单片机中,如C51、ARM、AVR等,我们选择了凌阳系列的单片机
13、,采用的是凌阳61单片机,因为它本身具有音频处理功能,我们板子上具有音频输出,输入通道,具有麦克风,扬声器等硬件。在凌阳公司提供的开发环境中本身就具有关于音频处理的库函数以及音频压缩软件,在进行处理的时候比较容易,所以我们选择凌阳61的单片机,基本结构如图3-1:图3-1 凌阳61单片机及硬件基本结构 SPCE061A 是凌阳科技研发生产的性价比很高的一款十六位单片机,使用它可以非常方便灵活的实现语音的录放系统,该芯片拥有8 路10 位精度的ADC,其中一路为音频转换通道,并且内置有自动增益电路。这为实现语音录入提供了方便的硬件条件。两路10 精度的DAC,只需要外接功放(SPY0030A)即
14、可完成语音的播放。 另外凌阳十六位单片机具有易学易用的效率较高的一套指令系统和集成开发环境。在此环境中,支持标准C 语言,可以实现C 语言与凌阳汇编语言的互相调用,并且,提供了语音录放的库函数,只要了解库函数的使用,就会很容易完成语音录放,这些都为软件开发提供了方便的条件:SPCE061A 片内还集成了一个ICE(在线仿真电路)接口,使得对该芯片的编程、仿真都变得非常方便,而ICE 接口不占用芯片上的硬件资源,结合凌阳科技提供的集成开发环境(unSP IDE)用户可以利用它对芯片进行真实的仿真;而程序的下载(烧写)也是通过该接口进行下载。下图为SPCE061A 单片机的内部结构框图:图3-2
15、SPCE061A 内部结构图(二)SPCE061A 单片机强大的语音功能凌阳音频处理过程:自己录取一段不大于4Kb的WAV语音文件或者从原有WAV语音文件中截取一段不大于4KB的语音。然后用凌阳语音压缩工具压缩,再将压缩后的文件添加到凌阳公司提供的开发环境中,程序经过单片机处理后,语音通过喇叭播放出来。如图3 图3-3 凌阳音频识别过程1. 语音识别原理: 首先是语音训练,然后是语音匹配,接着进行语音处理。如果匹配成功就执行相应的功能,否则重新匹配。如:图3-4。 图3-4 语音识别系统简图2. 系统的结构框图。如图3-5图3-5 智能车系统结构框图 系统组成主要包括以下两部分:SPCE061
16、A精简开发板、语音小车控制电路板。图中的语音输入部分MIC_ IN、按键输入KEY、声音输出部分的功率放大环节等已经做到了精简开发板61板上,为我们使用提供了很大的方便。在电机的驱动方面,采用全桥驱动技术,利用四个I/O端口分为两组分别实现两个电机的正传、反转和停三态运行。3. 语音控制小车设计要求 3.1 功能要求 语音控制小车基于SPCE061A的代表性兴趣产品,它配合61板推出,综合应用了SPCE061A的众多资源,小车采用语音识别技术,可通过语音命令对其行驶状态进行控制。3.2 语音控制小车的主要功能: 可以通过简单的I/O操作实现小车的前进、后退、左转、右转功能; 配合SPCE061
17、A的语音特色,利用系统的语音播放和语音识别资源,实现语音控制的功能; 可以在行走过程中声控改变小车运动状态; 在超出语音控制范围时能够自动停车。 3.3 参数说明 车体:双电机两轮驱动 供电:电池(四节AA:1.2V4 或1.5V4) 工作电压:DC 4V6V 工作电流:运动时约200mA 3.4 注意事项 注意电池的正负极性,切勿装反; 长期不用请将电池取出电池盒,以免造成腐蚀; 由于小车行动比较灵活,速度比较快,在使用时一定要注意保持场地足够大,且保证不会对周围的物体造成伤害; 不要让小车长时间运行在堵转状态(堵转状态:由于小车所受阻力过大,造成小车电机加电但并不转动的现象),这样会造成很
18、大的堵转电流,有可能会损坏小车的控制电路。3.5 备注 可以自行添加各种传感器,实现避障、循迹、跟踪等功能。四、语音遥控小车结构示意图语音控制小车为四轮结构,车的结构示意图如图6所示。其中前面两个车轮由前轮电机控制,在连杆和支点作用下控制前轮左右摆动,来调节小车的前进方向。在自然状态下,前轮在弹簧作用下保持中间位置。后面两个车轮由后轮电机驱动,为整个小车提供动力,所以又称前面的轮子为方向轮,后面的两个轮子为驱动轮。如图4-1、4-2所示。 图4-1 小车侧视图 图4-2 小车顶视图五、语音遥控小车驱动电路分析 动力驱动由后轮驱动实现,负责小车的直线方向运动,包括前进和后退,后轮驱动电路是一个全
19、桥驱动电路,如图4-3 所示:Q1、Q2、Q3、Q4四个三极管组成四个桥臂,Q1和Q4组成一组,Q2和Q3组成一组,Q5控制Q2、Q3的导通与关断,Q6控制Q1和Q4的导通与关断,而Q5、Q6由IOB9和IOB8控制,这样就可以通过IOB8和IOB9控制四个桥臂的导通与关断控制后轮电机的运行状态,使之正转反转或者停转,进而控制小车的前进和后退。 当IOB8为高电平、IOB9为低电平时Q1和Q4导通,Q2和Q3截止,后轮电机正转,小车前进;反之当IOB8为低电平、IOB9为高电平时Q1和Q4截止,Q2和Q3导通,后轮电机反转,小车倒退;而当IOB8、IOB9同为低电平时Q1、Q2、Q3和Q4都截
20、止,后轮电机停转,小车停止运动。图5-1后轮驱动电路分析方向控制由前轮驱动实现,包括左转和右转,前轮驱动电路也是一个全桥驱动电路,如图9 所示:Q7、Q8、Q9、Q10四个三极管组成四个桥臂,Q7和Q10组成一组,Q8和Q9组成一组,Q11控制Q8、Q9的导通与关断,Q12控制Q7和Q10的导通与关断,而Q11、Q12由IOB10和IOB11控制,这样就可以通过IOB10和IOB11控制前轮电机的正转和反转,进而控制小车的左转和右转。当IOB10为高电平、IOB11为低电平时Q8和Q9导通,Q7和Q10截止,前轮电机正转,小车前轮朝左偏转;反之当IOB10为低电平、IOB11为高电平时Q8和Q
21、9截止,Q7和Q10导通,前轮电机反转,小车前轮朝右偏转;而当IOB10、IOB11同为低电平时Q8和Q9截止,Q7和Q10也截止,前轮电机停转,在弹簧作用下前轮被拉回到中间位置,保持直向。 注意:IOB10、IOB11不能同时为高电平,这样会造成前轮驱动全桥的桥臂短路。图5-2前轮驱动电路分析电源部分:整个小车有4个电源信号:电池电源,控制板工作电源,61板的工作电源,61板的I/O输出电源。系统供电由电池提供(1.5V*4),控制板直接采用电池供电(VCC),然后经二极管D1后产生61板电源(V0),通过61板的电源跳线选择产生端口电源(V1)。二极管D1作用: 降压,4节电池提供的电压V
22、CC最大可达到6V,D1可有效地降压。保护,D1可以防止电源接反烧坏61板。电机驱动电路:IOB8和IOB9控制一个H桥,该H桥输出J3接后轮电机,所以IOB8、IOB9控制小车的前进和后退;IOB10和IOB11控制另外一个H桥,该H桥输出J4接前轮电机,所以IOB10、IOB11控制小车的方向,实现小车的左转和右转。 图5-3 控制电路原理图六、语音遥控小车流程图(一)主程序流程图说明:首先判断是否是第一次下载,如果是则进行程序下载,然后进入语音训练模块,如果已经下载则直接进入训练状态,训练一共有15条命令,分为3组,每组5条,按照事先设定好的顺序进行语音信号采集存储。训练完成后则进入了语
23、音识别状态,此时,系统根据采集得到的语音信号与刚才训练后得到的模型进行模式匹配,判断是第几条命令,然后根据判断结果做出相对应的动作或播放特定的语音资源,完成后又返回到待命状态,准备识别下一条命令。在识别的过程中,如果遇到系统复位,则刚才训练得到的语音模型丢失,需要重新进行语音训练才能再次进入识别状态。图6-1 主程序流程图(二) 小车的行走原理直走:由小车的结构分析,在自然状态下,前轮在弹簧作用下保持中间状态,这是只要后轮电机正转小车就会前进。 倒车:倒车动作和前进动作刚好相反,前轮电机仍然保持中间状态,后轮电机反转,小车就会向后运动。 左转:前轮电机逆时针旋转(规定为正转),后轮电机正转,这
24、时小车就会在前后轮共同作用下朝左侧前进。 右转:前轮电机反转,后轮电机正转,这时小车就是会在前后轮共同作用下朝右侧前进。(三)前进语音命令程序图说明:图6-2 前进语音命令程序图图6-3 小车前进示意图由小车的结构原理和驱动电路分析知:只要IOB8为高电平,IOB9,IOB10,IOB11全部为低电平即可实现小车的前进。前进子程序包括语音提示、置端口数据、启动定时器操作。 当小车遇到前进命令后,则执行前进动作,在设定的时间内前进的过程中,不断检测前方是否有障碍,如果遇到障碍则后退左拐进行避障,然后继续前进再不断检测,直到设定时间结束,停车回到待命状态。(四)拐弯语音命令程序图说明:左转:由小车
25、的结构原理分析和驱动电路分析知:小车左转需要两个条件:1.前轮左偏2.后轮前进,这时对应的I/O状态为:IOB8、IOB10为高电平,IOB9、IOB11为低电平。左转子程序包括语音提示、置端口数据、启动定时器操作。注:在左转之前首先让前轮右偏,然后再让前轮朝左偏,这样前轮的摆动范围更大,惯性更大,摆幅也最大,能更好实现转弯。图6-4 左转命令程序图图6-5 小车左转示意图右转:由小车的结构原理分析和驱动电路分析知:小车右转需要两个条件:1.前轮右偏2.后轮前进,这时对应的I/O状态为:IOB8、IOB11为高电平,IOB9、IOB10为低电平。右转子程序包括语音提示、置端口数据、启动定时器操
26、作。注:在右转之前首先让前轮左偏,然后再让前轮朝右偏,这样前轮的摆动范围更大,惯性更大,摆幅也最大,能更好实现转弯。图6-6 右转语音命令程序图图6-7 小车右转示意图(五)倒车语音命令程序图说明:由小车的结构原理分析和驱动电路分析知:只要IOB9为高电平,IOB8,IOB10,IOB11全部为低电平即可实现小车的倒退。倒退子程序包括语音提示、置端口数据、启动定时器操作,程序如下:图6-8 倒车语音命令程序图图6-9 小车倒车示意图(六) 全桥驱动原理全桥驱动又称H桥驱动,下面介绍一下H桥的工作原理: H桥一共有四个臂,分别为B1B4,每个臂由一个开关控制,示例中为三极管Q1Q4。如果让Q1、
27、Q2导通Q3、Q4关断,如图 5-8所示,此时电流将会流经Q1、负载、Q2组成的回路,电机正转。 图6-10 B1、B2工作时的H桥电路简图 图6-11 B3、B4工作时的H桥的电路简图如果让Q1、Q2关断Q3、Q4导通,如图 5-9所示,此时电流将会流经Q3、负载、Q4组成的回路,电机反转。如果让Q1、Q2关断Q3、Q4也关断,负载Load两端悬空,如图 5-10所示,此时电机停转。这样就实现了电机的正转、反转、停止三态控制。如果让Q1、Q2导通Q3、Q4也导通,那么电流将会流经Q1、Q4组成的回路以及Q2和Q3组成的回路,如图 5-11所示,这时桥臂上会出现很大的短路电流。在实际应用时注意
28、避免出现桥臂短路的情况,这会给电路带来很大的危害,严重的会烧毁电路。图6-12 B1B4全部停止工作时的H桥简图 图6-13 B1B4全部工作时的H桥简图七、语音遥控小车蔽障程序(一)避障器件选择 方案一: 采用超声波避障,超声波受环境影响较大,电路复杂,而且地面对超声波的反射,会影响系统对障碍物的判断,实现比较困难。 方案二: 采用红外线避障,器件就选择为红外对管。发射管发射出去的红外线如果遇到障碍物就反射回来,接收管接收到反射回来的信号,接收回路导通,输出高电平。相反,如果没有障碍物,红外线发射出去后没有反射回来,接收管无法导通,输出低电平。根据有无障碍时采集回来信号的不同,在单片机中就可
29、以编程控制车子的动作。 这种方案对硬件电路要求简单,易于实现,性价比较高,故采用方案二。(二)器件放置位置方案选择方案一:采用两组红外传感器分别置于小车前后。对小车正前方、正后方的障碍进行检测。红外传感器安装简易,也可以检测到障碍物的存在,但难以确定小车在水平方向上是否会与障碍物相撞,也不易让小车做出精确的转向反应。方案二:采用二组红外传感器分置于小车两边。二只红外传感器分别置于小车的前端两侧,方向与小车前进方向平行,对小车与障碍物相对距离和方位能作出较为准确的判别和及时反应。但此方案过于依赖硬件、成本较高、缺乏创造性,而且置于小车左方的红外传感器用到的几率很小,所以最终未采用。考虑到方案二实
30、现起来比较困难,所以我们采用了方案一。(三)避障方式选择 真实情况中,当遇到障碍的时候可以选择绕过障碍或者回避。在制作过程中为了追求程序的实现难易程度和表现力,我们采取当前方检测到障碍时,小车采取先播放提示音然后后退一段距离并且左拐的方式,当后方检测到障碍时采取先播放提示音然后停车的方式。这样实现起来简单明了,易于观察判断程序的进程。红外线发射接受电路原理图。八、语音遥控小车训练流程分析训练采用两次训练获取结果的方式,以训练名字为例:小车首先会提示:给我取个名字吧,这时你可以告诉它一个名字(比如Jack);然后它会提示:请再说一遍,这时再次告诉它名字(Jack),如果两次的声音差别不大,小车就
31、能够成功的建立模型,名称训练成功;如果没能够成功的建立模型,小车会告知失败的原因并要求重新训练。成功训练名称后会给出下一条待训练指令提示音:前进,参照名称训练方式训练前进指令。依次训练小车的名称前进指令倒车指令左转指令右转指令,全部训练成功子程序返回,训练结束。图8-1 小车训练流程图九、语音遥控小车的语音训练步骤: 训练采用应答式训练,每条指令的训练次数为两次,每一条命令的训练过程都是一样的,以“前 进”为例说明: 步骤一:小车提示“前进”; 步骤二:告诉小车“前进”; 步骤三:小车提示“请再说一遍”(重复训练提示音); 步骤四:再次告诉小车“前进”(重复训练一次)。 这是一个完整的训练过程
32、,如果训练成功,小车会自动进入下一条指令的训练,并会提示下一条指令对应的动作;如果没有训练成功,小车会提示“说什么暗语呀”或者“没有听到任何声音”等信息,这样的话就要重复刚才所说的四个步骤,直到成功为止。整个的训练过程共有5次这样的训练,依次为:名称前进后退左拐右拐。整个的训练流程如图 9-1所示:图9-1 小车的训练流程(1) 声控小车 训练完小车之后,怎样进行声控操作,让小车运动或者停下来呢? 可以直接对小车说前进,或者倒车、左拐、右拐等,小车如果识别出指令会有一个回应信号,告知你它要执行的动作,然后执行该动作。如果想要小车执行其它动作,直接告诉小车将要执行动作对应的指令即可。比如在前进时
33、告诉小车“倒车”,小车识别出之后就会直接倒车。如果在小车运动的过程中想要小车停下来,可以直接呼叫小车的名字,小车准确识别之后就会停下来。(2)重新训练 在实际的使用过程当中,可能会对训练的结果不满意,或者其他人也想对它进行训练、控制。这样就要求小车可以被重新训练。为此,我们把61板的KEY3键定义为重新训练按钮,系统运行之后就会不断的扫描61板的KEY3键。如果检测到KEY3键按下,那么程序首先会把训练标志位(0xe000)单元擦除,并会进入一个死循环等待复位的到来。复位到来之后,程序检测到训练标志单元内容为0xffff,认为小车没有经过训练,就会要求对它进行训练。 图9-2 小车的语音指导流
34、程十、语音遥控小车的实验结果本文设计的小车的长度为210mm,宽度为100mm,前后轮距为150mm,小车的最大转弯角度为45度。小车可以识别的总的命令条数为16条。左转和右转各4条,对应的转向角度分别为5度、15度、25度、45度;停止1条;前进5条,对应于五级不同的前进速度;后退两条,对应两级不同的后退速度。小车的各级转弯角度对应的转弯半径及两个电机的转速比的关系如表1所示:转弯角度(度)转弯半径(mm )转速比(外侧轮速/内侧轮速)518001.05155401.20253501.33452001.67 该小车各部分采用模块化设计,各个模块之间独立性强。控制部分采用可编程微处理器,可以在
35、不增加系统硬件的情况下方便地对系统进行二次开发。本文对一辆小车进行了实验,实验结果表明,语音识别系统在低噪声环境中识别率很高,在噪声水平较高的场合,识别率有所下降。小车反应灵敏。十一.结束语经过几个月时间来的设计和开发,本次研究设计通过对陵阳16位单片机的实际应用,制作出语音遥控小车。语音口令转换为遥控的主要控件,前进、后退、转弯等命令用语音的方式遥控着玩具小车。另外由于IDE支持标准的C语言函数库,使得复杂的数学运算变得轻而易举,大大减小了编程的难度。这一设计对以后机器人等先进电子设备的研究打造了良好的基础。对以后智能玩具的开发也提供了优良的条件。最终设计研究是成功的,研究成果具有较强的实用
36、性和发展前景。几个月的毕业设计,使我提高了实际操作能力,从以前的理论上升到实践,从感性认识上升到理性知识,真正做到学有所用,懂得先发现问题,分析问题,解决问题,虽然在设计中我也遇到一些麻烦和困难,但在老师的帮助指导和自己的努力下,我都认真克服了,但由于时间紧迫,我并不能做到尽善其善,我相信以后会有更多的机会。 图11-1 完整模型致谢经过这么长时间的构思与设计,在指导老师的精心指导下,设计研究圆满完成。在这次的毕业设计中,让我深深地体会到进行软件开发不是一件简单的事情,它需要设计者具有全面的专业知识、缜密的思维、严谨的工作态度以及较高的分析问题、解决问题的能力,而我在很多方面还有欠缺。这次设计
37、的研究过程中,由于时间比较仓促,加上本人软件设计经验的不足。因此,在分析问题、解决问题时显得不够严密、完善,还需要在以后的工作中不断地改进和完善。对于电路的分析,语音的控制,编程的应用等许多问题,都有很多不解之处,最后,感谢所有给予我帮助的老师和同学。参考文献1 罗亚非 等编著凌阳16位单片机应用基础 ,北京航空航天大学出版社。2 张培仁编著十六位单片微处理器原理及应用(凌阳SPCE061A),清华大学出版社。3 王晓明编著电动机的单片机控制,北京航空航天出版社。4 张善德微型计算机系统的设计方法和接口技术,北京人民邮电出版社,1988。 5 沈德金,陈粤初等编著MCS。51系列单片机接口电路
38、与应用程序实例,北京航空航天大学出版杜,2003。6 中国计量出版社组编新编电子电路大全(第三卷),中国计量出版社,2001。7 家辰,孙玉德,张 颖.编MCS-51单片机原理及接口技术,哈尔滨工业大学出版社,1998。附录:主控制源程序:/=/ The information contained herein is the exclusive property of/ Sunnnorth Technology Co. And shall not be distributed, reproduced,/ or disclosed in whole in part without prior w
39、ritten permission./ (C) COPYRIGHT 2003 SUNNORTH TECHNOLOGY CO./ ALL RIGHTS RESERVED/ The entire notice above must be reproduced on all authorized copies./=/=/ 工程名称:Car_Demo/ 功能描述:实现小车的语音控制/ 涉及的库:CMacro1016.lib/ bsrv222SDL.lib/sacmv26e.lib/ 组成文件:main.c/Flash.asm, hardware.asm,ISR.asm / hardware.h,s48
40、0.h, hardware.inc/硬件连接:IOA0-KEY1/IOA1-KEY2/IOA2-KEY3/IOB8-前进/IOB9-倒车/IOB10-左拐/IOB11-右拐/维护记录:2005-12-12 v1.0/=#include s480.h#include bsrsd.h#defineP_IOA_Data (volatile unsigned int *)0x7000 #define P_IOA_Dir (volatile unsigned int *)0x7002#define P_IOA_Attrib (volatile unsigned int *)0x7003#define P
41、_IOB_Data(volatile unsigned int *)0x7005 #define P_IOB_Dir(volatile unsigned int *)0x7007 #define P_IOB_Attrib(volatile unsigned int *)0x7008 #define P_TimerA_Data(volatile unsigned int *)0x700A #define P_TimerA_Ctrl(volatile unsigned int *)0x700B #define P_TimerB_Data(volatile unsigned int *)0x700C
42、 #define P_TimerB_Ctrl(volatile unsigned int *)0x700D #define P_Watchdog_Clear(volatile unsigned int *)0x7012 #define P_INT_Mask(volatile unsigned int *)0x702D #define P_INT_Clear(volatile unsigned int *)0x7011 #define NAME_ID 0x100#define COMMAND_GO_ID 0x101#define COMMAND_BACK_ID 0x102#define COMM
43、AND_LEFT_ID 0x103#define COMMAND_RIGHT_ID 0x104#define S_NAME0/给我取个名字吧#define S_ACT11/前进#define S_ACT22/倒车,请注意#define S_ACT33/左拐#define S_ACT44/右拐#define S_RDY5/Yeah#define S_AGAIN6/请再说一遍#define S_NOVOICE7/没有听到任何声音#define S_CMDDIFF8/说什么暗语呀#define S_NOISY8/说什么暗语呀#define S_START9/准备就绪,开始辨识#define S_GJG10/拐就拐#define S_DCZY11/倒车,请注意extern unsigned int BSR_SDModel100;/外部变量BSR_SDModel100,辨识器自带extern void F_FlashWrite1Word(unsigned int addr,unsigned int Value);extern void F_FlashErase(unsigned int sector);unsigned int uiTimeset = 3;/运行时间定时,调整该参数控制运行时间unsigned int uiTimecont; /运行时间计时/=
链接地址:https://www.31ppt.com/p-3984951.html