基于单片机的语音控制小车设计

合集下载

基于单片机技术的语音控制小车设计(1)

基于单片机技术的语音控制小车设计(1)

基于单片机技术的语音控制小车设计【摘要】本文主要介绍了Keil C51简介、汇编语言的发展、智能小车的软件实现,以及小车的机械结构和使用说明以及工作原理。

基于单片机技术的语言控制小车的程序。

关键词:语音控制、汇编语言Abstract: This text primarily introduced the keil c51 the brief introductioned, edit collected materials language that small car of development, intelligence that software realizes, and small car of the machine construction explain with usage and work principle.According to procedure for small car of control of language of technique machine of single slice.It is detailed to introduced......Key words:Speech control, edit collected materials the language、uVision2、Keil C51目录1 绪论 (1)1.1问题的引入 (1)1.1.1声控产品前景及发展趋势 (1)1.1.2研究的目的及意义 (1)2 声控小车软件的设计方案 (3)2.1任务分析 (3)2.1.1设计要求 (3)2.1.2设计思路及软件流程图 (3)图2-1 (3)3 KEIL C51简介及汇编语言的发展 (4)3.1K EIL C51简介 (4)3.1.1 8051开发工具 (4)3.1.2 uVision2集成开发环境 (4)3.1.3 uVision2编辑器和调试器 (5)3.2汇编语言的发展 (6)3.2.1汇编语言的发展史 (6)3.2.2 汇编语言的优点 (6)3.2.3 汇编语言的应用 (6)4 小车使用说明 (8)4.1小车的工作原理 (8)4.1.1 车体的介绍及工作原理 (8)4.2语音的训练 (9)4.2.1 S1—S4功能键如下 (9)4.2.2 基本控制电路 (10)5 声控小车的软件实现 (11)5.1功能分析 (11)5.1.1主控电路 (11)5.2程序设计 (12)结束语 (18)谢辞 (19)文献 (20)1 绪论本文主要介绍“基于单片机技术的语音控制小车”。

基于单片机语音控制小车的设计

基于单片机语音控制小车的设计
传感器
安装传感器,如红外传感器、超声波传感器等,以检 测障碍物和路径。
语音识别模块
选用适合的语音识别模块,以实现小车的语音控制功 能的电池,如锂电池或镍氢电池,以满足小车的供电需求。
充电器
设计或选用适合电池的充电器,以确保电池的正常充电和使用。
电源管理电路
设计或选用适合的电源管理电路,以实现稳定的电压输出和电流控 制。
基于单片机语音控制小车的设计
• 引言 • 单片机介绍 • 语音识别技术 • 小车硬件设计 • 小车软件设计 • 测试与验证 • 结论与展望
01
引言
设计背景
语音控制技术的发展
实际应用需求
随着人工智能和语音识别技术的快速 发展,语音控制已经成为智能家居、 智能机器人等领域的重要应用。
在某些特定场景下,如家庭、办公室 等,需要一种能够通过语音控制的小 车来实现便捷的移动和操作。
01
特征提取
通过对语音信号进行预处理和特 征提取,提取出语音中的关键信 息,如音调、音高、音长等。
模式匹配
02
03
训练模型
将提取出的语音特征与预先训练 好的模型进行匹配,找出最相似 的模型,从而识别出语音内容。
通过大量的语音数据训练出高效 的模型,以提高语音识别的准确 率。
小车的控制逻辑设计
输入接口
03
除了基本的移动功能,还可以通过扩展接口实现其他功能,如
携带物品、巡逻监控等。
02
单片机介绍
单片机的定义
• 单片机是一种集成电路芯片,它包含了计算机的基本组成 单元,如中央处理器、存储器、输入输出接口等。它具有 体积小、功耗低、可靠性高等优点,广泛应用于各种嵌入 式系统中。
单片机的种类和特点

基于单片机技术的语音控制小车设计--(

基于单片机技术的语音控制小车设计--(

基于单片机技术的语音控制小车设计--(附:湘潭市技师学院毕业论文(设计)题目关于单片机控制语音小车的系统设计专业机电一体化班级:姓名指导教师2012 年 2 月27 日关于单片机控制语音小车的系统设计目录1、引言2、语音控制小车设计要求2.1 功能要求2.2 参数说明3. SPCE061A特性简介4、系统总体方案介绍5、系统硬件设计5.1 车体介绍5.2 小车的行走原理5.3 控制板原理图6、系统软件设计6.1 系统的主程序设计6.2主控制源程序:6.3 语音识别的原理简介7、总结8、结束语基于单片机技术的语音控制小车设计1、引言语音处理技术是一门新兴的技术,它不仅包括语音的录制和播放,还涉及语音的压缩编码和解码,语音的识别等各种处理技术。

以往做这方面的设计,一般有两个途径:一种方案是单片机扩展设计,另一种就是借助于专门的语音处理芯片。

普通的单片机往往不能实现这么复杂的过程和算法,即使勉强实现也要加很多的外围器件。

专门的语音处理芯片也比较多,如ISD 系列、PM50 系列等,但是专门的语音处理芯片功能比较单一,想在语音之外的其他方面应用基本是不可能的。

SPCE061A 是一款 16 位μ'nSP结构的微控制器。

该芯片带有硬件乘法器,能够实现乘法运算、内积运算等复杂的运算。

它不仅运算能力强,而且处理速度快,单周期最高可以达到 49MHz。

SPCE061A 内嵌 32K 字的 FLASH 程序存储器以及 2K 的SRAM。

同时该 SOC 芯片具有 ADC 和 DAC 功能,其 MIC_ADC 通道带有AGC自动增益环节,能够很轻松的将语音信号采集到芯片内部,两路 10 位的电流输出型DAC,只要外接一个功放就可以完成声音的播放。

以上介绍的这些硬件资源使得该SPCE061A 能够单芯片实现语音处理功能。

借助于 SPCE061A 的语音特色,“基于单片机技术的语音控制小车设计”实现了对小车前进、后退、左转、右转、停车等语音控制功能.2、语音控制小车设计要求2.1 功能要求:1.可以通过简单的 I/O 操作实现小车的前进、后退、左转、右转功能;2.配合 SPCE061A 的语音特色,利用系统的语音播放和语音识别资源,实现语音控制的功能;3.可以在行走过程中声控改变小车运动状态;4.在超出语音控制范围时能够自动停车。

基于凌阳61单片机的语音控制小车的设计

基于凌阳61单片机的语音控制小车的设计
3.1 硬件连接调试过程
硬件调试过程相对顺利,实验第一步就是按照实验说明书对 61 板的元件进行焊接以及 小车车体的连接安装;在对实习要求理解的基础上确立了实现方案后,硬件的连接有了明 确的要求:为了实现对黑线的检测需要连接黑白传感器,由于黑白线的识别是基于外部黑 白传感信号的输入进而开外不中断实现的(在本次方案中采用外部中断 2 IPQ3),所以将 IOB3 口外接黑白传感器,以实现对黑白信号的检测。
通过智能小车的设计及制作,巩固并掌握 IDE2.0 的编程方法,学会利用单片机进行程序设 计并实现功能。通过在小车的设计与制作,将所学的知识体现出来,并应用于实际生活中, 在设计过程中对小车功能的创新和改良,增强学生的创新意识和逻辑思维能力,提高学生 的动手能力和研究主动性。 2. 实验内容和步骤 2.1 车体设计 2.1.1 61 板简介

为实现在终点线 H 过后停留 10 s 的要求,需要在检测到 H 线后开启 IRQ5-4HZ 中断实现定
时 10;
A、B、C、D、E、F、G……线时开外不中断 2,分别在去城和回程
检测到 D、E 线时开
IRQ6-2HZ,在第一次检测到 G 线时小车停 10S。
5、中断控制流程。虽然已经有了前进、后退以(通过直接呼叫小车的名字使其停车)等语 音控制指令,但是考虑环境的干扰因素,小车运行时的噪音影响和有效距离的限制,小车 运行后可能接收不到语音指令而一直运行。为了防止出现这种情况,加入了时间控制,在 启动小车运行的同时启动定时器,定时器时间到停止小车的运行,该定时器借助于 2Hz 时 基中断完成,图 12.14 所示为该程序的流程图。可以在程序中修改 uiTimeset 参数来控制运 行时间,当 uiTimeset=2 时,运行时间为 1s,以此类推。

基于单片机的语音控制小车系统设计与实现

基于单片机的语音控制小车系统设计与实现

基于单片机的语音控制小车系统设计与实现摘要
随着微控制器技术的发展,单片机在实现物联网的各种应用方面取得
了较大的进步。

本文基于单片机技术的发展,设计并实现了一种基于语音
控制小车的系统。

该系统帮助用户控制小车的行驶状态和运行方向,实现
用户所需要的控制功能。

系统设计使用ESP8266模块实现WIFI连接,
MPU6050模块实现空间姿态监测,并采用DC直流电机控制小车,并采用
语言识别技术识别用户语音,进而实现控制。

本文介绍了系统的功能要求,硬件组件和软件结构,以及整个系统的实现流程。

在硬件电路方面,本文
介绍了最终系统的电路原理图及其各个模块之间的电路连接。

在软件结构
方面,本文介绍了整个系统的软件架构,包括硬件驱动层的实现和应用层
的实现,以及语音识别模块的设计与实现。

最终,本文实现了一个基于单
片机的语音控制小车系统,这种系统可以满足用户的实际需求,可以有效
提高小车的可控性。

关键词:单片机;小车;语音控制;ESP8266;MPU6050
1 Introduction
随着物联网技术的发展,单片机在实现各种应用方面取得了长足的进步。

毕业设计(论文)-基于单片机的声控小车设计

毕业设计(论文)-基于单片机的声控小车设计

毕业设计题目基于单片机的声控小车设计姓名学号系部理工系年级专业2012级电子信息工程一班指导教师2016年 5月 1 日摘要在过去三四十多年来,声控智能小车逐渐成为人们生活的必需品,声控智能小车为人们的居住、出行以及旅游等方面创造力良好的条件。

随着社会经济和科学技术的逐步发展,声控智能小车的设备也不断地进行更新换代,优秀的声控智能小车控制系统层出不穷。

另一方面,随着城市人口的剧增,声控智能小车面临需求量越来越大,传统的声控智能小车测量遥控时操作麻烦,精度不高。

声控智能小车使用者因为精度不高或者操作繁琐的情况时有发生,给声控智能小车声控智能小车使用者带来很多不便。

基于这种原因,现在声控智能小车急需增加在一定遥控范围内的功能系统,来解决声控智能小车面临的上述问题。

本文正是基于以上实际需求,设计了一种新型的基于单片机的声控智能小车控制器的设计系统。

该系统由89C51单片机作为系统控制芯片,在声控智能小车上增加USB电插口,并利用单片机控制在手机充满时自动关闭该口的电源;可以通过人体的声音识别来控制智能小车的前进或者拐弯等动作,可以用定量地控制用户对小车的控制。

关键词:声控智能小车;80C51;程序控制;遥控保护Title V oice control car design based on MCUAbstractIn the past thirty or forty years, the socket has gradually become a necessity in people's lives, outlet for people live, travel, tourism and other aspects of creativity in good condition. With the development of social economy and science and technology, socket equipment is constantly upgrading, excellent control system emerge in an endless stream socket. On the other hand, with the city's population increasing, facing socket demand is growing, the traditional temperature measurement socket operation trouble, the accuracy is not high. Because the socket user accuracy is not high or tedious situations have occurred, to bring a lot of inconvenience to users socket socket. For this reason, now need to increase the socket in a certain temperature range of the digital display system, to solve the problem faced by the socket.This paper is based on the actual demand, design a new design system of socket controller based on mcu. The system by the MCU 89C51 as the system control chip, USB power jack on the socket, and controlled by a single chip on the phone with automatically shut down the power; increase the anti lightning, anti short circuit, overload prevention, anti leakage function and power detection function, can use mobile phone client view this month's electricity.Key words: Socket; 80C51; program control; over current protection目录摘要 (II)1 绪论 (3)1.1 课题研究的背景和意义 (3)1.2 智能声控小车的设计原理 (4)1.3 设计的主要完成工作 (6)2 系统设计理论基础 (7)2.1 系统工作原理 (7)2.2 系统设计要求 (7)3 系统硬件设计 (9)3.1 单片机模块 (9)3.2 继电器模块 (11)3.3 液晶显示电路 (12)3.4 按键电路的设计 (13)3.5 语音识别电路设计 (14)3.6 电机驱动电路 (14)4 系统软件设计 (16)4.1 主程序流程 (16)4.2 语音识别模块编程 (17)4.3 LCD显示程序设计 (18)4.4 键盘接口应用实现 (20)4.5 系统遥控程序的实现 (21)5 系统仿真和调试 (22)5.1 PROTUES仿真软件的介绍 (22)5.2 KEIL软件的介绍 (23)5.3 系统仿真 (23)结论 (26)致谢 (27)参考文献 (28)附录(实物图与源代码) (29)1 绪论伴随着社会科技的发展和经济的进步,声控智能小车由上世纪八十年代的人工操作和遥控设定逐渐被自动控制加模块系统所替代。

基于凌阳单片机的语音控制小车---毕业设计 - 副本

基于凌阳单片机的语音控制小车---毕业设计 - 副本

基于凌阳单片机的语音控制小车摘要声音控制功能是凌阳单片机的一个特色,通过这个功能更能够实现普通单片机无法实现的一些任务,本设计是通过凌阳单片机的语音处理功能实现语音控制小车的前进和方向,并让小车作出相应的回答,设计系统主要包括三大部分,其中两部分为硬件部分:凌阳单片机的小系统,包括I/O端口、DAC转换、ADC转换等等;另一部分是控制板部分,用于控制电机的旋转方向;第三部分为软件部分。

关键词:语音控制小车;声控;小车;SPCE061ABased on Ling Y ang monolithic integrated circuit's voice control carAbstractThe phonic control function is a Ling Y ang monolithic integrated circuit's characteristic, suffices some duties which through this function realizes the ordinary monolithic integrated circuit to be unable to realize, this design is realizes the voice control car's advance and the direction through the Ling Y ang monolithic integrated circuit's pronunciation processing function, and lets the car make the corresponding reply, the design system mainly includes three major parts, two parts for hardware part: The Ling Y ang monolithic integrated circuit's small system, including the I/O port, DAC transforms, ADC transformation and so on; Another part is the control panel part, uses in controlling electrical machinery's hand of rotation; The third part is the software part.Key word: V oice control car;V oice control;Car;SPC061A目录1 引言 (1)2方案论证 (2)2.1方案论证 (2)3语音控制小车设计要求 (3)3.1功能要求 (3)3.2备注 (3)3.2.1 参数说明 (3)3.2.2 注意事项 (3)3.3扩展功能 (3)4 凌阳芯片的介绍 (4)4.1SPCE061A芯片的特点及其功能 (4)4.2SPCE061A芯片内核结构 (5)5硬件系统设计 (6)5.1系统的总体方案 (6)5.1.1 16位微处理器芯片的外围结构 (6)5.261板的各部分硬件模块 (7)5.2.1 麦克录音输入及AGC电路 (7)5.2.2 数摸转换电路 (7)5.2.3 按键,LED和复位电路 (8)5.2.4 电源电路 (8)5.2.5 下载线接口电路和在线调制电路 (9)5.2.6 16位微处理器的连接电路 (9)5.3车体介绍 (10)5.4小车的行走原理 (10)5.5控制电路原理板 (11)5.6控制电路原理 (12)5.6.1 后轮电机驱动电路原理 (12)5.6.2 前轮电机驱动电路原理 (13)6 系统软件设计 (14)6.1系统主程序设计流程图 (14)6.2语音识别 (15)7硬件制作及系统调试 (17)7.1硬件制作 (17)7.2调试和下载程序 (17)7.3调试小车 (17)7.4初试小车 (17)7.5重新调试 (18)结束语 (19)致谢 (20)参考文献 (21)附录附录1 电路原理图(61板)附录2 电路原理图(控制板)附录3 元件清单附录4 PCB图附录5 小车图片附录6 主控制源程序基于凌阳单片机的语音控制小车1 引言语音控制技术是一门新兴技术,可以通过语音直接控制电子产品,摆脱了遥控器的束缚。

基于STC单片机的智能语音控制小车

基于STC单片机的智能语音控制小车

基于 STC 单片机的智能语音控制小车一、实验目的1.随着科技的进步和社会的发展, 汽车技术的发展越来越智能化。

本次接口实验 设计就是基于简单智能化的基础上, 采用LD3320 语音单元和 STC 单片机和L298N 机电驱动, 开辟出基于语音无线控制与智能避障的小车, 实现非特定人声语音控 制小车, 以及小车超声波自动避障行驶的功能, 同时液晶显示出超声波前方障碍 物的距离。

2.掌握用 Altium Designer10 软件绘制原理图和 PCB 电路,以及电路板的制作 过程(包括转印、腐蚀,焊接,下载与调试),熟练 Keil uVision4 环境以及单 片机 C 代码的编写、 调试和 hex 文件的生成并下载到单片机芯片内, 掌握软硬联 调技巧与方法。

3.掌握 基于 LD3320 的语音单元的编程、语音处理及与单片机间的通信。

二、系统总体方案本次设计的小车采用 STC89C52 单片机作为主控芯片, 通过 LD3320 语音单元 接单片机控制小车行驶状态(包括前进、后退、左转、右转及停车);小车行驶 过程中遇到障碍物, 如果没有接收到语音信号而超声波检测模块检测周围障碍物 小于安全距离 40cm ,小车自动转向, 距离通过 LCD1602 液晶显示出来; 采用 L298 作为机电驱动芯片驱动小车行驶。

系统总体框图如图 2.1:图 2.1 系统总体框图LCD1602 液晶显示STC89C52 单片机7805 稳压电路18650 锂电池电源HC-SR04 超声波模块L298N 机电驱动直流减 速机电降压模块扬声器LD3320 语音单元三、硬件设计3.1 主控系统本次设计采用 STC89C52 单片机作为控制芯片, STC89C52RC 是 STC 公司生产的一种低功耗、高性能 CMOS8 位微控制器,具有 8K 字节系统可编程 Flash 存储器。

单片机系统电路图 2:图 3.1 单片机最小系统原理图复位电路:手动复位,按下复位按钮,复位脚得到 VCC 的高电平,单片机复位,按钮松开后,单片机开始工作。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

西藏大学《单片机应用基础》课程设计题目:基于单片机的语音控制小车设计学院:工学院专业:09电子信息工程姓名:董龙生学号:208指导老师:肖伟、陈延利目录1引言 (3)2 语音控制小车设计要求 (3)功能要求 (3)参数说明 (3)3 SPCE061A特性简介 (3)4系统总体方案介绍 (4)5系统硬件设计 (5)车体介绍 (5)小车的行走原理 (5)控制板原理图 (6)6系统软件设计 (7)系统的主程序设计 (7)主程序 (8)语音识别的原理简介 (12)7结束语 (12)基于单片机技术的语音控制小车设计1、引言语音处理技术是一门新兴的技术,它不仅包括语音的录制和播放,还涉及语音的压缩编码和解码,语音的识别等各种处理技术。

以往做这方面的设计,一般有两个途径:一种方案是单片机扩展设计,另一种就是借助于专门的语音处理芯片。

普通的单片机往往不能实现这么复杂的过程和算法,即使勉强实现也要加很多的外围器件。

专门的语音处理芯片也比较多,如ISD 系列、PM50 系列等,但是专门的语音处理芯片功能比较单一,想在语音之外的其他方面应用基本是不可能的。

SPCE061A 是一款 16 位μ'nSP结构的微控制器。

该芯片带有硬件乘法器,能够实现乘法运算、内积运算等复杂的运算。

它不仅运算能力强,而且处理速度快,单周期最高可以达到 49MHz。

SPCE061A 内嵌 32K 字的 FLASH 程序存储器以及 2K 的SRAM。

同时该 SOC 芯片具有ADC 和 DAC 功能,其 MIC_ADC 通道带有AGC自动增益环节,能够很轻松的将语音信号采集到芯片内部,两路 10 位的电流输出型DAC,只要外接一个功放就可以完成声音的播放。

以上介绍的这些硬件资源使得该SPCE061A 能够单芯片实现语音处理功能。

借助于 SPCE061A 的语音特色,“基于单片机技术的语音控制小车设计”实现了对小车前进、后退、左转、右转、停车等语音控制功能.2、语音控制小车设计要求功能要求:1.可以通过简单的 I/O 操作实现小车的前进、后退、左转、右转功能;2.配合 SPCE061A 的语音特色,利用系统的语音播放和语音识别资源,实现语音控制的功能;3.可以在行走过程中声控改变小车运动状态;4.在超出语音控制范围时能够自动停车。

参数说明车体:双电机两轮驱动供电:电池(四节 AA:×4 或×4)工作电压:DC 4V~6V工作电流:运动时约 200mA3.SPCE061A特性简介SPCE061A是一款性价比很高的十六位单片机,使用它可以非常方便灵活的实现语音的录放,该芯片拥有8路10位精度的 ADC,其中一路为音频转换通道,并且内置有自动增益电路。

这为实现语音录入提供了方便的硬件条件。

两路10位精度的DAC,只需要外接功放(SPY0030A)即可完成语音的播放。

该单片机具有一套易学易用的指令系统和集成开发环境,在此环境中,它支持标准 C 语言编程,也支持 C 语言与汇编语言的互相调用。

另外还提供了语音录放的库函数,只要了解库函数的使用,就可以很容易的完成语音的录放、识别等功能,这些都为软件开发提供了方便的条件。

SPCE061A特性:16位μ’nSP微处理器;工作电压:内核工作电压VDD为 ~(CPU),I/O口工作电压VDDH为VDD~(I/O);CPU时钟:~;内置2K 字 SRAM;内置32K 闪存 ROM;可编程音频处理;晶体振荡器;系统处于备用状态下(时钟处于停止状态),耗电小于;2 个 16 位可编程定时器/计数器(可自动预置初始计数值);2 个 10 位 DAC(数-模转换)输出通道;32 位通用可编程输入/输出端口;14 个中断源可来自定时器 A / B,时基,2 个外部时钟源输入,键唤醒;具备触键唤醒的功能;使用音频编码 SACM_S240 方式位/秒),能容纳 210 秒的语音数据;锁相环 PLL 振荡器提供系统时钟信号;32768Hz 实时时钟;7 通道 10 位电压模-数转换器(ADC)和单通道声音模-数转换器;声音模-数转换器输入通道内置麦克风放大器和自动增益控制(AGC)功能;具备串行设备接口;低电压复位(LVR)功和低电压监测(LVD)功能;内置在线仿真板(IC E,In-C ircuitEm ulator)接口。

4、系统总体方案介绍小车的运动控制采用语音控制和中断定时控制相结合,通过语音触发小车动作,小车动作之后,随时可以通过语音指令改变小车的运动状态。

在每一次动作触发的同时启动定时器,如果小车由于某些原因不能正常的接收语音指令,则只要定时时间一到,中断服务程序就会发出指令让小车停下来。

SPCE061A图1 控制系统所需硬件5、系统硬件设计系统的硬件方面,由于大部分的功能实现都是在61板上完成的,只有电机控制部分电路另外设计在一块独立的电路板上,我们称之为控制板。

下面详细的介绍小车的结构和运行原理以及控制电路板的结构和功能实现。

图2 系统硬件框图车体介绍语音控制小车为四轮结构。

其中前面两个车轮由前轮电机控制,在连杆和支点作用下控制前轮左右摆动,来调节小车的前进方向。

在自然状态下,前轮在弹簧作用下保持中间位置。

后面两个车轮由后轮电机驱动,为整个小车提供动力。

所以又称前面的轮子为方向轮,后面的两个轮子为驱动轮。

小车的行走原理.直走:由小车的结构分析,在自然状态下,前轮在弹簧作用下保持中间状态,这是只要后轮电机正转小车就会前进。

倒车:倒车动作和前进动作刚好相反,前轮电机仍然保持中间状态,后轮电机反转,小车就会向后运动。

图4 小车前进、后退示意图左转:前轮电机逆时针旋转(规定为正转),后轮电机正转,这时小车就会在前后轮共同作用下朝左侧前进。

右转:前轮电机反转,后轮电机正转,这时小车就是会在前后轮共同作用下朝右侧前进。

图5 小车转向示意图控制板原理图控制板主要包括:接口电路、电源电路和两路电机的驱动电路,控制板原理图如下。

接口电路:接口电路负责将61板的I/O接口信号传送给控制电路板,I/O信号主要为控制电机需要的IOB8~IOB11这四路信号,同时为了方便后续的开发和完善,预留了IOB12~IOB15 以及IOA8~IOA15接口,可以在这些接口上添加一些传感器。

电源部分:整个小车有4个电源信号:电池电源,控制板工作电源,61板工作电源,61板的I/O输出电源。

系统供电由电池提供,控制板直接采用电池供电(VCC),然后经二极管D1后产生61板电源SPCE061A 在语音控制小车中的应用(VCC_61),通过61板的Vio 跳线产生61板的端口电源(V1)。

图6 小车控制电路图6、系统软件设计系统的主程序设计系统的主程序流程如下图所示:图7 主程序流程图共分为四大部分:初始化部分、训练部分、识别部分、重训操作。

初始化部分:初始化操作将IOB8~IOB11 设置为输出端,用以控制电机。

必要时还要有对应的输入端设置和PWM 端口设置等。

训练部分:训练部分完成的工作就是建立语音模型。

程序一开始判断小车是否被训练过,如果没有训练过则要求对其进行训练,并且会在训练成功之后将训练的模型存储到Flash,在以后使用时不需要重新训练;如果已经训练过会把存储在Flash 中的模型调出来装载到辨识器中。

识别部分:在识别环节当中,如果辨识结果是名字,停止当前的动作并进入待命状态,然后等待动作命令。

如果辨识结果为动作指令小车会语音告知相应动作并执行该动作,在运动过程中可以通过呼叫小车SPCE061A在语音控制小车中的应用的名字使小车停下来。

重训操作:考虑到有重新训练的需求,设置了重新训练的按键(61 板的KEY3),循环扫描该按键,一旦检测到此键按下,则将擦除训练标志位(0xe000 单元),并等待复位。

复位后,程序重新执行,当检测到训练标志位为0xffff 时会要求重新对其进行训练。

主程序:And shall not be distributed, reproduced,//========================================================//========================================================// 工程名称:Car_Demo// 功能描述:实现小车的语音控制// 涉及的库:////// 组成文件:// , ,// ,,// 硬件连接: IOA0-----KEY1// IOA1-----KEY2// IOA2-----KEY3// IOB8-----前进// IOB9-----倒车// IOB10----左拐// IOB11----右拐//========================================================#include <>#include <>#define P_IOA_Data (volatile unsigned int *)0x7000#define P_IOA_Dir (volatile unsigned int *)0x7002#define P_IOA_Attrib (volatile unsigned int *)0x7003#define P_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#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 COMMAND_LEFT_ID 0x103#define COMMAND_RIGHT_ID 0x104#define S_NAME 0 //给我取个名字吧#define S_ACT1 1 //前进#define S_ACT2 2 //倒车,请注意#define S_ACT3 3 //左拐#define S_ACT4 4 //右拐#define S_RDY 5 //Yeah#define S_AGAIN 6 //请再说一遍#define S_NOVOICE 7 //没有听到任何声音#define S_CMDDIFF 8 //说什么暗语呀#define S_NOISY 8 //说什么暗语呀#define S_START 9 //准备就绪,开始辨识#define S_GJG 10 //拐就拐#define S_DCZY 11 //倒车,请注意extern unsigned int BSR_SDModel[100]; //外部变量BSR_SDModel[100],辨识器自带extern void F_FlashWrite1Word(unsigned int addr,unsigned int Value);extern void F_FlashErase(unsigned int sector);unsigned int uiTimeset = 3; //运行时间定时,调整该参数控制运行时间unsigned int uiTimecont; //运行时间计时//============================================================ =// 语法格式:void Delay();// 实现功能:延时// 参数:无// 返回值:无//============================================================ int TrainWord(unsigned int WordID,unsigned int SndID){int Result;PlaySnd(SndID,3);while(1){Result = BSR_Train(WordID,BSR_TRAIN_TWICE); //训练两次,获得训练结果if(Result==0)break;switch(Result){case -1: //没有检测出声音PlaySnd(S_NOVOICE,3);return -1;case -2: //需要训练第二次PlaySnd(S_AGAIN,3);break;case -3: //环境太吵PlaySnd(S_NOISY,3);return -3;case -4: //数据库满return -4;case -5: //检测出声音不同PlaySnd(S_CMDDIFF,3);return -5;case -6: //序号错误return -6;default:break;}}return 0;}int main(void){ unsigned int BS_Flag; //Train标志位*P_IOA_Dir=0xff00; //初始化IOA,IOA0~7下拉输入*P_IOA_Attrib=0xff00;*P_IOA_Data=0x0000;*P_IOB_Dir=0x0f00; //初始化IOB,IOB8~11同向输出*P_IOB_Attrib=0x0f00;*P_IOB_Data=0x0000;BSR_DeleteSDGroup(0); //初始化存储器RAMBS_Flag=*(unsigned int *)0xe000; //读存储单元0xe000if(BS_Flag==0xffff) //没有经过训练(0xe000内容为0xffff){TrainSD(); //训练StoreSD(); //存储训练结果(语音模型)}else //经过训练(0xe000内容为0x0055){LoadSD(); //语音模型载入识别器}PlaySnd(S_START,3); //开始识别提示BSR_InitRecognizer(BSR_MIC); //初始化识别器while(1){BSR();if((*P_IOA_Data)&0x0004) //是否重新训练{F_FlashErase(0xe000);while(1);}}}子程序:void F_FlashErase(unsigned int sector){}void BSR(){}void BSR_InitRecognizer(){}void PlaySnd(){}void LoadSD(){}void StoreSD(){}void TrainSD(){}void BSR_DeleteSDGroup(){}void BSR_Train(){}语音识别的原理简介语音识别主要分为“训练”和“识别”两个阶段。

相关文档
最新文档