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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

汽车倒车测距仪设计.docx

1、汽车倒车测距仪设计微机原理课程设计汽车倒车测距仪学 院: 自动化 专 业: 自动化 班 级:09(2)班 姓 名: 轶平 学 号: 6(15) 设 计 日 期:2010年1月13日一、课程设计目的及要求 31.1设计目的 31.2设计容和要求 31.3 设计任务 3二、超声波简介 42.1 超声波的含义 42.2 超声波的特点 4三、设计方案分析 43.1 设计的思路 43.2 硬件部分 4四、硬件部分设计 64.1整机连接图 64.2 8088最小系统 64.3 8255与数码管电路 64.4 8253及8259部分电路 6五、软件部分设计 65.1设计思路及流程图 65.2程序清单 8六、

2、设计体会及总结 12七、参考文献 12一、课程设计目的及要求1.1设计目的1. 学会用汇编语言编写一个较完整的实用程序。2. 掌握微型计算机技术应用开发的全过程:分析需求、设计原理图、选用元器件、布线、编程、调试、撰写报告等步骤。3、复习巩固本学期学到的相关知识,提高自身思考问题解决问题的能力,培养对本课程的兴趣,提高动手的能力。4、加强课程学习与生活实践的联系,运用所学知识与日常生活实践的结合。5、学会用8086/8088解决实际问题的能力、硬件使用原理。1.2设计容和要求1、设计一个微机控制的汽车倒车测距仪,能测量并显示车辆后部障碍物离车辆的距离,同时用间歇的“嘟嘟”声发出警报,“嘟嘟”声

3、间隙随障碍物距离缩短而缩短,驾驶员不但可以直接观察到检测的距离,还可以凭听觉判断车后障碍物离车辆距离的远近; 开机后先显示“”,并有开机指示灯。 CPU发射超声波1ms,然后显示60ms;即1ms+60ms为一个工作周期,等待回波,在次周期完成一次探测。 根据距离远近发出报警声并显示距离。 障碍物距离小于1m,距离值变化5cm更换显示,否则不更换;距离在1m以上,新值与原显示值之差大于10cm更换,否则不更换。 用三LED位数码管显示障碍物距离2、硬件电路原理图和软件框图;3、编写控制程序,写出设计任务书(总结报告)。1.3 设计任务1、选用8088和适当的存储器及接口芯片完成相应的功能。2、

4、用LED显示器显示电子锁的当前状态。3、画出详细的硬件连接原理图。4、给出程序设计思路、画出软件流程图。5、给出地址分配表。6、给出所有程序清单并加上必要注释。7、完成设计说明书(列出参考文献,所用器件型号)。二、超声波简介2.1 超声波的含义当物体振动时会发出声音,科学家们将每秒振动的次数称为声音的频率,他的单位是HZ。我们人类耳朵能听到声波频率为20-20000HZ,当声波的频率大于20000HZ或小于20HZ时,我们便听不到。因此我们把频率高于20000HZ的声波称为超声波。2.2 超声波的特点(一) 超声波在传播时,方向性强,能量易于集中。 (二) 超声波能在各种不同媒质中传播,且可传

5、播足够远的距离。(三) 超声波与传声媒质的相互作用适中,易于携带有关传声媒质状态的信息(诊断或对传声媒质产生效应)。(治疗) 超声波是一种波动形式,它可以作为探测与负载信息的载体或媒介(如B超等用作诊断)。 声波同时又是一种能量形式,当其强度超过一定值时,它就可以通过与传播超声波的媒质的相互作用,去影响,改变以致破坏后者的状态,性质及结构(用作治疗)。三、设计方案分析3.1 设计的思路本系统的设计思想是采用以C8051F单片机为核心,来设计一种低成本、高精度、微型化数字显示超声波测距仪。超声波测距可测出回波和发射脉冲之间的时间间隔,利用S=Ct/2就可以算出距离,再在LED上显示出来。当然还可

6、以设置若干个键,以用来控制电路的工作状态。限制的最大可测距离存有四个因素:超声波的幅度,反射面的质地,反射面和入射声波之间的夹角以及接收换能器的灵敏度。接收换能器对声波脉冲的直接接收能力将决定最小的可测距离。3.2 硬件部分 本制作需要以8088为核心,其他可能还需要用到计数器8253、并行接口芯片8255、中断控制器8259,这些芯片我们在课堂上都已经有了解,现在通过课设将他们运用到实际题目要求系统能够用三位数码管显示当前的距离值,用到的数据端口会比较多。而8088的数据端口有限,需要通过8255进行并行扩展,通过8255扩展端口,以满足设计的端口需要。同时题目要求用间歇的“嘟嘟”声发出警报

7、,“嘟嘟”声间隙随障碍物距离缩短而缩短,驾驶员不但可以直接观察到检测的距离,还可以凭听觉判断车后障碍物离车辆距离的远近,而且要求根据距离远近发出报警声并显示距离。障碍物距离小于1m,距离值变化5cm更换显示,否则不更换;距离在1m以上,新值与原显示值之差大于10cm更换,否则不更换。这就需要有一个能够准确计数和计时的芯片,而我们这学期微机课程所学的计数器8253刚好可以满足这个要求,因而选用8255作为系统的计数器和计时器。系统需要通过中断来判断计时或计数是否完成,而中断控制器8259有七个可屏蔽中断口,通过与计数器8253输出相连可以反映计数的结束与否。触发单片机进行中断处理,因而选用825

8、9作为中断处理器。四、硬件部分设计4.1整机连接图4.2 8088最小系统本设计8088最小工作模式中,用了1片8284A作为时钟发生器, 74LS373,用作地址锁存器;用了1片74LS245作为数据总线收发器,增加数据总线的驱动能力。原理图如图所示。当用晶体振荡器作为振荡源时,晶体振荡器连在8284A 的X1和X2两端上,F/接地。8284A输出的时钟频率均为振荡源频率的三分之一。同时它对READY准备好信号和RESET复位信号进行同步,外部设备可以在任何时候发出这两个信号,8284A的部逻辑电路在时钟后沿(下降沿)处使READY和RESET有效。74LS373,作为地址锁存器。8282(

9、8283)是带有三态缓冲器的8位通用数据锁存器。它们的引脚和部结构如图2.9所示。两者的区别仅在于8282的8位输入信号和输出信号之间是同相的,而8283的是反相的。当系统中所连的存储器和外设较多时,需要增加数据总线的驱动能力,这时,要用1片74LS245作为总线收发器。74LS245是三态输出8位双向数据缓冲器, 是开启缓冲器的控制信号。当有效时,允许数据通过缓冲器;当无效时,禁止数据通过缓冲器,输出呈高阻状态。DIR是数据传送方向控制信号。4.3 8255与数码管电路8255是Intel系列的并行接口芯片,本电路中8255作为8088系统与外部设备接口。如图四所示8255数据线和控制线与8

10、088单片机相连,以使单片机可以对8255进行编程。8255的A、B、C端口均定义为输出。A端口接数码管的字形线通过对8255三个端口的定义可以控制超声波的发射、蜂鸣器的鸣响和距离的显示。8255的端口地址经过分析可得88H-8AH(分别为端口A、端口B、端口C及方式控制字)4.4 8253及8259部分电路 8253部有3个独立的16位定时计数器通道。计数器可按照二进制或十进制计数,计数和定时围可在165535之间改变,每个通道有6种工作方式,计数频率可高达2MHz以上。本设计中用74LS138对8253和8259进行选址,电路中用到通道0和通道1两个计数端口,通道0用来计算超声波发射到接收

11、的时间,通道1用来定时,控制“嘟嘟声”声的频率。其接口电路如图三所示 可编程控制器8259是在多中断源系统中,用于8088等单片机的CPU实现对外部中断请求管理里工作,对他们实现优先权的排队,想CPU发出中断请求信号,提供中断类型码,屏蔽中断输入等功能的中断控制芯片。8259A采单片或多拍级联方式,可管理不同多级中断。本设计中使用了8259单级中断,用了IRQ5、IRQ6、IRQ7三个中断源,分别作为超声波回波信号、响铃频率计时、计数器计数中断。(8253端口地址为84H-87H)五、软件部分设计5.1设计思路及流程图 本次设计的软件部分首先分别对各个芯片进行初始化处理,随后,根据要求,画出相

12、应流程图进行汇编编程设计5.2程序清单DATA SEGMENTTABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH ;数码管显示表(从0-9)LONG DW FFFFH ;距离值SELECT DB 01H,02H,03H NUM DB 00HRING DB 00H DATA ENDSSTACK SEGMENT STACK DW 100 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE, SS:STACK, DS:DATA, ES:DATASTART: MOV AX,DATA MOV DS,AX MOV AX,STA

13、CK MOV SS,AX MOV AX,DATA MOV ES,AX MOV DX,01H CLI ;8253初始化 MOV AL,34H ;计数器0,方式2,二进制,低高位写入;用于计算时间 OUT 87H,AL MOV AL,6CH ;1ms一次负脉冲 OUT 84H,AL MOV AL,38H OUT 84H,AL MOV AL,74H ;计数器1,方式2,二进制,低高位写入;用于蜂鸣器的声响 OUT 87H,AL MOV AL,6CH ;1ms一次负脉冲 OUT 84H,AL MOV AL,38H OUT 84H,AL ;8255初始化 MOV AL,80H ;配置A、B口为输出,工作

14、于方式0 MOV DX,8AH OUT DX,AL MOV AL,40H ;数码管段选择 MOV DX,88H OUT DX,AL MOV AL,07H MOV DX,84H ;选中三个数码管 OUT DX,AL ;8259初始化 MOV AX,0000H ;段基地址 MOV DS,AX LEA AX,INTR7 ;用于每5cm一次负脉冲 MOV SI,003CH MOV SI,AX MOV AX,SEG IN2 ;入口段基址 MOV SI,003EH MOV SI,AX LEA AX,INTR6 ;用于每30ms一次脉冲,作为控制喇叭的方波频率 MOV SI,0038H MOV SI,AX

15、MOV AX,SEG IN1 MOV SI,003AH MOV SI,AX LEA AX,INTR5 ;用于接受超声波时,产生中断 MOV SI,0034H MOV SI,AX MOV AX,SEG IN0 MOV SI,0036H MOV SI,AX;发送1ms的脉冲SENT: MOV AL,02H OUT 61H,AL CALL DELAY1 ;延时1ms MOV AL,00H OUT 61H,AL IN AL,21 AND AL,1F ;开中断5,6,7 OUT 21,AL MOV AX,SEG DATADISP: MOV AX,OFFSET LONG ;比较是否为初始值 MOV SI,

16、AX MOV AX,SI CMP AX,FFFFH JNE DIF MOV AL,40H ;相同则仍然显示- OUT 60H,AL MOV AL,07H OUT 62H,AL JMP DISP ;且循环,直至60ms中断后,重新到GO处 MOV DS,AXDIF: MOV BX,0FFSET TABLE MOV DI,BX MOV BX,0FFSET SELECT MOV SI,BX CMP AX,64H ;比较1M,然后转到不同的显示程序 JBE SMALLER ;对下述程序的解释:如果当距离小于1米时,选择调用smaller程序,否则调用bigger(bigger要求显示十米为一个单位)B

17、IGGER: CALL DISP_MOST MOV BL,00 ;个位为0 CALL DISP_DAN ;调用单位显示子程序 JMP DISPLAYSMALLER: CALL DISP_MOST MOV BL,AH ;个位放入缓存 CALL DISP_DAN ;调用单位显示子程序 JMP DISPLAYDISP_DAN: PUSH AX MOV AL,BBX+DI ;查表得显示码 OUT 60,AL ;向数码管输出显示码 MOV AL,BSI ;查表得数码管片选 OUT 62,AL ;向数码管输出片选 CALL DALLY INC SI ;片选+1 POP AX RETDISP_MOST: M

18、OV BL,64H ;除以100,得百位 DIV BL ;百位放在AL,余数放在AH MOV BH,00 ;为查表显示作准备 MOV BL,AL ;百位放入缓存 CALL DP_1 ;调用单位显示子程序 MOV AL,AH ;对余数再进行除法运算 MOV AH,00 MOV BL,0AH ;除以10,得十位及个位(0AH表示十进制的10) DIV BL ;十位放在AL,个位放在AH(依次放) MOV BL,AL ;十位放入缓存 CALL DP_1 ;调用单位显示子程序 RET CODE ENDS END START ;中断5,超声波接受中断,计算车与障碍物的距离 INTR5 PROC FAR

19、PUSH SI ;压堆栈(SI BX AX) PUSH BX PUSH AX MOV AX,OFFSET COUNT ;取5cm计数标志 MOV SI,AX MOV AL,SI MOV BL,05H MUL BL ;乘以5cm,得总长度 MOV BX,OFFSET LENGTH ;放入LENGTH标志位 MOV SI,BX MOV SI,AX POP AX POP BX POP SI IRETINTR5 ENDP;中断6,用于产生不同频率来控制蜂鸣器发不同声音INTR6 PROC FAR PUSH SI PUSH AX MOV AX,OFFSET LONG MOV SI,AX MOV AX,S

20、I CMP AX,FFFFH JE BACK MOV AX,OFFSET SENT MOV SI,AL MOV AL,SI DEC AL CMP AL,00H JNE BACK ;不为0则返回 XOR DL OUT 61H,DL ;取反输出给B口 JMP BACKNOT_FFFF: MOV AL,00H OUT 61H,AL ;当检测围大于10m关喇叭BACK: POP AX POP SI IRETINTR6 ENDP;中断7,用于累计COUNT值,代表距离INTR7 PROC FAR PUSH SI PUSH AX MOV AX,OFFSET COUNT MOV SI,AX MOV AL,S

21、I INC AL CMP AL,CCH JNE BBCAK MOV AL,00H MOV SI,AL ;COUNT标志位复位为00H MOV AX,OFFSET LENGTH MOV SI,AX MOV AX,FFFFH MOV SI,AX ;length标志位复位为FFFFHBBACK: POP AX POP SI JMP GO IRETINTR7 ENDP;延时子程序 延时1msDALLY PROC FAR PUSH CX PUSH AX MOV CX,0FFFFHD1: MOV AX,000FFHD2: DEC AX JNE D2 LOOP D1 POP AX POP CX RETDAL

22、LY ENDP;延时子程序 延时60msDALLY_60 PROC FAR PUSH CX PUSH AX MOV CX,78H D1: MOV AX,50H D2: DEC AX JNE D2 LOOP D1 POP AX POP CX RETDALLY_60 ENDP 六、设计体会及总结 本次课设最基本的原来全部都来自于我们的书本,所以一切我们都需要回到书本,回到课堂曾经用过的知识,我觉得这一点很好。我们可以通过我们学过的只是进行复习以及加深对他们的印象,并且将他们与实际结合起来。下面我就分软件和硬件进行阐述。1、硬件部分硬件部分主要又另外一位成员完成,但是要知道,硬件是软件的前提,所以我

23、们通过上网查阅资料,翻阅书本,花了大部分的时间在硬件的确定上,一旦硬件搞定了 ,那么剩下的就会得心应手一些。此外,我们还一起研究学习了protel软件,学会了如何绘制电路图。在这其中也碰到了许多困难,我们通过一同协作克服了这些困难。2、软件部分 软件部分主要由我来编写完成。其实对于汇编语言的学习已经由来已久,但是总是觉得汇编语言不是我们人们所能掌握的高级语言。相比于C+这样的高级编程语言,汇编语言可以说是相当复杂的一个工程。 老师曾经教导我们,编程高手花90%时间思考,10%来写。要把思路理清,表达出来,就要画流程图。虽然这次设计的思路看似简单,但编写起来依然感到吃力,因为有个元件我第一次编程

24、的8259,加上中断程序的编写,假若用的是C,确实可以很快搞定,用汇编,不仅要写处理程序,还要写现场保护和现场恢复,之前还要写入口地址。对于陌生的东西,最好就是参考,于是我就反复看课本上关于中断程序的例子,从中参透,加上上网查找资料和请教师兄,最终完成理论的程序。3、团队协作老师为什么安排我们两个人完成这样一个项目,目的就是让我们能够有这种团队协作的意识。这次我和搭档合作,主要是因为我们曾经有过合作的经验,互相比较了解对方。所以在合作的过程中还是相当顺利的。当一个人出现些许问题的时候,需要开动大家的脑筋去解决这些问题,这些可能是一个人所无法做到的,这也是团队协作意识的精髓吧。4、不足之处及建议

25、 本次课设最让我感觉之深的地方就是要学会一门技能,你需要花上相当大的功夫。就比如这次的硬件设计,虽然之前学过一点protel,但是一点需要上手去画的时候,却又不知从何下手。这就是我这次最大的缺陷。学一门技能,要精,要学的扎实才是真本事。 要说有什么建议的话,我觉得我们这个题目很贴近实际,也希望以后能够有更多这样贴近实际的题目出现,这样我们才能做到理论与实际相结合,才能学的更好!七、参考文献1、微型计算机原理及应用 华南理工大学 吴荣光 吕钧星主编2、微型计算机原理及应用试验指导书 华南理工大学教材供应中心 耿彤 梁佑彬编3、胡文金. 单片机应用技术实训教程.大学,20054、夏继强. 主编, 单片机实验与实践教程.:航空航天大学, 20015、少航. 单片机实训教程,机械工业,2008

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

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