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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

根据单片机的电子导盲杖设计.docx

1、根据单片机的电子导盲杖设计智能仪表设计基础课程设计 课题名称 电子导盲杖 学生学号 学生姓名 所在班级 指导教师 二一二年九月1.功能要求及性能指标1.1 课程设计的目的和设计任务(1)1.2 课程设计的要求和技术指标(1)2.方案设计2.1 硬件方案(2) 2.1.1 测距模块方案选择(2) 2.1.2 语音模块方案选择 (3) 2.1.3 显示模块方案选择 (4) 2.1.4 震动模块方案选择(4)2.2 软件方案 (4)3.硬件设计 3.1 STC89C52单片机介绍 (6) 3.1.1 引脚分布及定义(6) 3.1.2 定时器 (8) 3.2 HC-SR04超声波模块介绍 (8) 3.

2、2.1 模块实物图及说明 (9) 3.2.2 测距电路设计 (9) 3.2.3 测距程序设计 (11)3.3 ISD1420语音芯片介绍 (12) 3.3.1 芯片引脚图及功能说明 (12) 3.3.2 语音录放电路的设计 (13) 3.3.3 语音程序设计 (14) 3.4 震动模块及LED灯的控制 (15) 3.5 总原理图 (16) 3.6 仪器仪表清单 (18)4.软件设计 4.1 程序程序设计 (18) 4.2 程序调试结果 (22)5.设计小结 (23)参考文献附录一:课程设计任务书附录二:软件程序清单1. 功能要求及性能指标1.1 课程设计的目的和设计任务世界上视觉障碍者数量众多

3、,他们只能用百分之六十的感觉来获取信息。盲人在独自行走时主要依靠导盲装置,最简单常用的导盲装置是普通的拐杖,用它在地面上敲击,可帮助盲人发现0.5米以内的障碍物。它的主要缺点是不能发现较远一点的障碍物以及悬空的障碍物。随着社会的发展,传统的导盲杖已经远远不能满足盲人的需要了。超声波导盲杖是为视觉障碍者提供环境导引的辅助工具,它通过超声波传感器对周围环境进行探测,将探测的信息反馈给视觉障碍者,帮助他们弥补视觉信息的缺失。1.2课程设计的要求和技术指标设计要求:本作品由超声波测距功能、前方障碍物语音警示功能、震动警示功能、夜间警示路人功能。在盲人走路时,如果前方1米处有障碍物,则盲杖自动语音提示“

4、前方一米处有障碍物,请注意!”,如果前方1米处没有障碍物,无提示音;如果前方2米处有障碍物,则盲杖自动语音提示“前方二米处有障碍物,请注意!”,如果前方2米处没有障碍物,无提示音;如果前方3米处有障碍物,则盲杖自动语音提示“前方三米处有障碍物,请注意!”,如果前方3米处没有障碍物,无提示音。手柄震动警示功能,可以让盲人在嘈杂的环境中通过手柄的震动接收到前方障碍物信号,弥补了语音提示在嘈杂环境中的弊端。夜间警示路人功能,在夜间遇到4米以内障碍物时,盲杖上的指示灯亮,可以警示前方路人注意盲人的位置,注意避让盲人。盲杖具有使用方便,功耗低,实用性,是盲人出行外出的好助手。技术指标:超声波测距模块:可

5、提供2cm-400cm的非接触式距离感测功能,测距精度可达3mm。ISD1420语音芯片:具有20秒高保真语音录放功能,通过具有专利技术的模拟处理存储方式,使录放音质极佳,没有常见的的背景噪音,且电路断电后语音内容仍不丢失。2.方案设计2.1 硬件设计方案 电子导盲杖的总体框图如下图(图1)所示,它由超声波模块、单片机、语音模块、震动模块、警示模块、校准模块 组成。STC89C52单片机HCSR04 超声波模块ISD1420语音模块震动模块警示模块校准模块图1 硬件原理框图2.1.1 测距模块方案选择 方案一:红外测距利用红外线测距,测距里程可达1-5公里。利用红外线传播时的不扩散原理:因为红

6、外线在穿越其他物质时折射率很小,所以长距离测距会考虑红外线,而红外线的传播是需要时间的,当红外线从测距仪发出,碰到反射物被反射回来被测距仪接受,在根据从发射到接受的时间及红外线的传播速度就可算出距离。 方案二: 激光测距 利用激光对目标的距离进行准确测量,测程可达40公里。激光测距在工作时向目标射出一束很细的激光,由光电元件接收目标反射的激光束,计时器测定激光束从发射到接收的时间,计算出从观测者到目标的距离。 方案三: 超声波测距 超声波测距是根据超声波遇到障碍物反射回来的特性进行测量的,测控距离为2cm到4m。超声波发射器向某一方向发射超声波,在发射的同时开始计时,超声波在空气中传播,途中碰

7、到障碍物会立即返回来,超声波接收器收到反射波就立即中断停止计时。通过不断检测产生波发射后遇到障碍物所发射的回波,从而测出发射超声波和接收超声波的时间差,然后根据超声波的速度算出距障碍物的距离。 选择方案三原因: 方案一的红外线测距,在距离较短的情况下,从发射到接收的时间过短,用单片机很难计算出,因此红外测距适合较长距离的测量。方案二的激光测距,虽然测量精度较高,但是价格昂贵。因此,在精度要求不是很高的情况下,选择价格便宜,适合短距离测量的超声波测距模块更为合适。 2.1.2 语音模块选择 方案一: ZLG1730语音芯片 ZLG1730语音芯片,内部采用多层次存储技术,在单个芯片上提供了自然的

8、,高质量的录放决方案。输入语音信号直接存储在环形Flash存储器中,且能重现自然的音质。芯片带有两种操作模式:独立按键模式,微控制器(SPI)模式。在独立按键模式下,无需知道消息存储在存储器里的准确位置就可以对消息进行录制、播放、擦除和快进操作。在SPI模式下可以通过4条串行接线口来实现分段录制和播放等操作,但需要另外购买编程器。 方案二: ISD1820 语音芯片 ISD1820语音芯片是单片8-20秒的单段语音录放电路,基本结构与ISD1420完全相同,采用CMOS技术,内含振荡器,话筒前置放大,自动增益控制,防混淆滤波器,扬声器驱动及FLASH阵列。放音模式有三种可选择,其音质比通常的话

9、筒放大器要好很多,而且不会出现喇叭过载的情况。整个电路耗电极低,几乎为0。录入的时间越短音质越好,录入的时间越长,音质越差。 方案三: ISD1420 语音芯片 ISD1420录放音质极佳,没有常见的的背景噪音,且电路断电后语音内容仍不丢失。通过A0-A7地址端选择不同地址进行录音,每位地址代表125毫秒的寻址,160个地址覆盖20秒的语音范围,只需要将录制的时间大致计算出来,除以125,就可以准确知道每段录音的播放首地址。在接入单片机控制后,只需要将对应地址赋值,就可以播放不同段的语音信息。录音及放音功能均从设定的起始地址开始,录音结束由停止键操作决定,芯片内部自动在该段的结束位置插入结束标

10、志(EOM);而放音时芯片遇到EOM标志即自动停止放音。 选择方案三原因: 方案一的ZLG1730模块,虽然可以通过软件分段录放音,但是需另外购买下载编程器,价格和其他两种方案比,较昂贵。方案二的ISD1820模块只能进行单段语音的录放,不能实现要求的分段播放功能,因此不宜选择。方案三的ISD1420模块就在同等条件下较合适,能直接用单片机控制分段播放,价格便宜实惠。综合考虑,选择方案三。 2.1.3 显示模块方案选择 方案一:ZLG7290数码管显示 ZLG7290数码管,内部有显示RAM,能自动将显示RAM中的内容动态显示在相应的数码管上。内部有I2C串行接口,方便与处理器相接。可驱动8位

11、共阴数码管或64只独立LED和64个按键。它的扫描位数可控,任一数码管闪烁可控,无需外接元件即可直接驱动LED。 方案二:1602液晶屏显示 1602液晶模块采用标准的16脚接口。它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用。微功耗、体积小、显示内容丰富、超薄轻巧,常用在袖珍式仪表和低功耗应用系统中。 选择方案一原因: 电子导盲杖中不需要用到专门的显示部分,而加入显示只是为了在测距的时候能够知道测量的距离是否准确,或者校正时使用。因

12、此,若选择方案二有点浪费单片机的IO口。从经济角度考虑,实验室有集成的ZLG7290模块,而没有1602液晶屏,另外购买会造成浪费。综合考虑,选择方案一。 2.1.4 震动模块的选择 方案一:直流电机加偏振块 震动是在电机转动时由于偏振块的作用而产生的。直流电机的应用广泛,可直接加上电压而不会烧坏,但对电流要求较高,价格便宜,方便购买。 方案二: 偏振电机 偏振电机在手机等众多领域有广泛应用,可直接加很小的电压就可以驱动,所需电流相对较小。 选择方案二原因: 方案一中虽然直流电机购买方便,但是偏振块却难以实现,市场上也没有单独的偏振块购买,从网上订货不方便。而且直流电机虽然震感强烈,但所需电流

13、一般单片机难以直接提供。方案二的偏振电机市场上也几乎没有,但可以直接从手机等废弃的电子产品上拆下,只需要很小的电流电压就可以驱动,无需另外增加驱动电路。综合考虑,选择方案二。2.2软件设计方案 本课程设计的软件设计部分主要采用C语言编程,简单易懂。分别对每个模块独立编程,再将所有整合,即可实现需要的功能。主程序中,先将各个模块初始化,定义变量及赋初值。给超声波一个脉冲触发它开始工作,然后开始计时,在收到回波信号后,立即停止计数。此计数值就是从发射到接收的时间,乘以超声波此时的速度,就可以算出障碍物距超声波的大致距离,可以将此距离直接显示。根据距离的不同,发出不同的语音提示和震动。下图(图2)为

14、软件设计框图:图2 软件流程图3.硬件设计3.1 STC89C52单片机介绍 STC89C52是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口。另外 STC89X52 可降至0Hz 静态逻辑操作,支持2种软件可选择

15、节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。 3.1.1 引脚分布及定义图3 STC89C52RC引脚图STC89C52RC引脚分布如图三所示,引脚功能说明如下:VCC(40引脚):电源电压VSS(20引脚):接地P0端口(P0.0P0.7,3932引脚):P0口是一个漏极开路的8位双向I/O口。作为输出端口,每个引脚能驱动8个TTL负载,对端口P0写入“1”时,可以作为高阻抗输入。在访问外部程序和数据存储器时,

16、P0口也可以提供低8位地址和8位数据的复用总线。此时,P0口内部上拉电阻有效。在Flash ROM编程时,P0端口接收指令字节;而在校验程序时,则输出指令字节。验证时,要求外接上拉电阻。P1端口(P1.0P1.7,18引脚):P1口是一个带内部上拉电阻的8位双向I/O口。P1的输出缓冲器可驱动(吸收或者输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这是可用作输入口。P1口作输入口使用时,因为有内部上拉电阻,那些被外部拉低的引脚会输出一个电流。P2端口(P2.0P2.7,2128引脚):P2口是一个带内部上拉电阻的8位双向I/O端口。P2的输出缓冲器可以驱动(

17、吸收或输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电平,这时可用作输入口。P2作为输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。P3端口(P3.0P3.7,1017引脚):P3是一个带内部上拉电阻的8位双向I/O端口。P3的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。P3做输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输入一个电流。P3口除作为一般I/O口外,还有其他一些复用功能,如下表所示:表1 P3口引脚复用功能引脚号复用功能P3.0

18、RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)P3.4T0(定时器0的外部输入)P3.5T1(定时器1的外部输入)P3.6(外部数据存储器写选通)P3.7(外部数据存储器读选通)RST(9引脚):复位输入。当输入连续两个机器周期以上高电平时为有效,用来完成单片机单片机的复位初始化操作。看门狗计时完成后,RST引脚输出96个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。ALE/(30引脚):地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。在Fl

19、ash编程时,此引脚()也用作编程输入脉冲。(29引脚):外部程序存储器选通信号()是外部程序存储器选通信号。当AT89C51RC从外部程序存储器执行外部代码时,在每个机器周期被激活两次,而访问外部数据存储器时,将不被激活。/VPP(31引脚):访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部程序存储器读取指令,必须接GND。注意加密方式1时,将内部锁定位RESET。为了执行内部程序指令,应该接VCC。在Flash编程期间,也接收12伏VPP电压。XTAL1(19引脚):振荡器反相放大器和内部时钟发生电路的输入端。XTAL2(18引脚):振荡器反相放大器的输入端。 3.1.2

20、定时器 STC89C52RC除了有定时器/计数器0和定时器/计数器1之外,还增加了一个一个定时器/计数器2.定时器/计数器2的控制和状态位位于T2CON和T2MOD。 定时器2是一个16位定时/计数器。通过设置特殊功能寄存器T2CON中的C/T2位,可将其作为定时器或计数器。定时器2有3种操作模式:捕获、自动重新装载(递增或递减计数)和波特率发生器,这3种模式由T2CON中的位进行选择。表2 特殊功能寄存器T2CON的描述3.2 HC-SR04超声波模块介绍 采用 IO 触发测距, 控制口发一个10US 以上的高电平,就可以在接收口等待高电平输出。一有输出就可以开定时器计时,当此口变为低电平时

21、就可以读定时器的值,此时就为此次测距的时间,方可算出距离。如此不断的周期测,就可以达到移动测量了。 3.2.1 模块实物图及说明 图3 实物图 接口定义: VCC:接+5V电源 GND:接地 Trig:接控制端 Echo:接接收端 3.2.2 测距电路设计图4 超声波测距电路图通过单片机的P1.1口给超声波模块一个20us的高电平脉冲,触发超声波模块,使之开始工作,定时器开始计数,于此同时,接收端开始不断检测有无回波。一旦接收到有回波信号,则P3.2口立即进入中断,停止定时器计数,把计数值送入寄存器中计算当前距离。公式:uS/58=厘米或者uS/148=英寸;或是:距离=高电平时间*声速(34

22、0M/S)/2。测的距离与实际距离比较,如下表(表3:表3 测距对比 图5 测距对比图6 测距对比折线图 3.2.3 测距程序设计图7 超声波测距软件流程图 具体程序入下: Trig=0; /首先拉低脉冲输入引脚 EA=1; /打开总中断0 TMOD=0x10; /定时器1,16位工作方式 while(1) EA=0; /关总中断 Trig=1; /超声波输入端 delay_20us(); /延时20us Trig=0; /产生一个20us的脉冲 while(Echo=0); /等待Echo回波引脚变高电平 succeed_flag=0; /清测量成功标志 EA=1; EX0=1; /打开外部

23、中断0 TH1=0; /定时器1清零 TL1=0; /定时器1清零 TF1=0; /计数溢出标志 TR1=1; /启动定时器1 delay(20); /等待测量的结果 TR1=0; /关闭定时器1 EX0=0; /关闭外部中断0 if(succeed_flag=1) time=timeH*256+timeL; distance=time*0.0172; /厘米 if(succeed_flag=0) distance=0; /没有回波则清零 display(distance); 3.3 ISD1420语音芯片介绍ISD1420是美国ISD公司出品的新型单片优质语音录放电路,较之以往所有的语音电路

24、,具有专利技术的模拟处理存储方式,使录放音质极佳,没有常见的的背景噪音,且电路断电后语音内容仍不丢失。电路内部由振荡器、语音存储单元、前置放大器、自动增益控制电路、抗干扰滤波器、输出放大器组成。一个最小的录放系统仅由一个麦克风、一个喇叭、两个按钮、一个电源、少数电阻电容组成。 3.3.1 芯片引脚图及功能说明右图(图8)为ISD1420语音芯片的引脚图。其引脚功能为下表(表3)所示。其特性为:工作电压:5V静态电流:0.52A工作电流:1530mA重现优质原声基本上不耗电信息存储信息可保存100年,可反复录放10万次选址处理多达160段信息维持状态,仅需0.5A电流,具有自动节电模式 图8 I

25、SD1420引脚图表4 ISD1420引脚功能说明名 称管 脚功 能名 称管 脚功 能A0A516地址Ana Out21模拟输出A6、A79、10地址(MSB)Ana In20模拟输入VCCD28数字电路电源AGC19自动增益控制VCCA16模拟电路电源Mic17麦克风输入VSSD12数字地Mic Ref18麦克风参考输入VSSA13模拟地24放音,边沿触发SP、14、15喇叭输出、27录音XCLK26外接定时器(可选)25发光二极管接口NC11空脚23放音,电平触发 3.3.2 语音录放电路的设计语音录音电路的电路设计如下图(图9)所示:图9 语音录音电路 通过地址端口的7个按键选择分段录音

26、的地址。根据计算,一段语音信息大概为4秒左右,分3段,首段地址分别为0x00,0x28,0x50。只要将对应的八个按键根据这三个地址即可开始录制,录音时,按住REC键,此时LED灯常亮,表示在录音状态。按PLAYE即可播放当前录的语音信息,放完后遇到EOM标志,LED闪一下,表示放音结束。 3.3.3 语音程序设计 功能说明:语音提示当超声波探头距离障碍物不同距离时,播放不同时段的语音信息,同时加入震动,及LED灯提示等功能。框图如下图(图10)所示:图10 语音程序流程图3.4 震动模块及LED灯的控制 震动功能的实现主要是通过偏振电机来实现的,其电路图如下图(图11)所示。图11 震动模块

27、电路P1.1口(图中为ZD)通过三极管放大后直接接在电机的一端,通过P1.1口输出电平信号的高低来控制电机的工作状态。LED灯的控制也是直接由P1口输出的电平信号来控制,其电路图如下图(图12)所示:图12 LED灯的控制电路三个灯分别接在P1.2,P1.3,P1.4。当这三个端口分别输出低电平时灯亮。因此在程序中,只要在需要灯闪烁时将P1口置低电平即可。3.5 总原理图图13 总原理图 将各个模块的电路整合起来,就可以得到整个原理图了。3.6 仪器仪表清单表5 使用的元器件元件名称数量STC89C52RC1个HC-SR041个ISD14201个偏振电机1个扬声器,麦克风各一个12MHZ晶振1

28、个按键3个LED 灯4个NPN三极管1个串口1个MAX2321个8脚,28脚,40脚芯片底座各一个电阻若干电容若干ZLG单片机实验箱一台杜邦线,排针,导线若干4.软件设计 4.1 程序设计#include #include #include i2c.h#include zlg7290.h#include #define uchar unsigned char /定义一下方便使用#define uint unsigned int#define ulong unsigned longuint time;uint succeed_flag;uchar timeL;uchar timeH;sbit Trig=P10;sbit Echo=P32;sbit PLAYE=P11;sbit LED1=P12;sbit LED2=P13;sbit ZD=P14;/*/延时子程序void Delay(uns

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

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