




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微型计算机课程设计汽车倒车测距仪1/17微机原理课程设计汽车倒车测距仪学院:专业:班级:姓名:学号:设计日期微型计算机课程设计汽车倒车测距仪2/17目录一、课程设计目的及要求.31.1设计目的.31.2设计内容和要求.31.3设计任务.3二、超声波简介.42.1超声波的含义.42.2超声波的特点.4三、设计方案分析.43.1设计的思路.43.2硬件部分.4四、硬件部分设计.64.1整机连接图.64.28088最小系统.64.38255与数码管电路.64.48253及8259部分电路.6五、软件部分设计.65.1设计思路及流程图.65.2程序清单.8六、设计体会及总结.12七、参考文献.12微型计算机课程设计汽车倒车测距仪3/17一、课程设计目的及要求1.1设计目的1.学会用汇编语言编写一个较完整的实用程序。2.掌握微型计算机技术应用开发的全过程:分析需求、设计原理图、选用元器件、布线、编程、调试、撰写报告等步骤。3、复习巩固本学期学到的相关知识,提高自身思考问题解决问题的能力,培养对本课程的兴趣,提高动手的能力。4、加强课程学习与生活实践的联系,运用所学知识与日常生活实践的结合。5、学会用8086/8088解决实际问题的能力、硬件使用原理。1.2设计内容和要求1、设计一个微机控制的汽车倒车测距仪,能测量并显示车辆后部障碍物离车辆的距离,同时用间歇的“嘟嘟”声发出警报,“嘟嘟”声间隙随障碍物距离缩短而缩短,驾驶员不但可以直接观察到检测的距离,还可以凭听觉判断车后障碍物离车辆距离的远近;开机后先显示“”,并有开机指示灯。CPU发射超声波1ms,然后显示60ms;即1ms+60ms为一个工作周期,等待回波,在次周期内完成一次探测。根据距离远近发出报警声并显示距离。障碍物距离小于1m,距离值变化5cm更换显示,否则不更换;距离在1m以上,新值与原显示值之差大于10cm更换,否则不更换。用三LED位数码管显示障碍物距离2、硬件电路原理图和软件框图;3、编写控制程序,写出设计任务书(总结报告)。1.3设计任务1、选用8088和适当的存储器及接口芯片完成相应的功能。2、用LED显示器显示电子锁的当前状态。3、画出详细的硬件连接原理图。4、给出程序设计思路、画出软件流程图。5、给出地址分配表。6、给出所有程序清单并加上必要注释。7、完成设计说明书(列出参考文献,所用器件型号)。微型计算机课程设计汽车倒车测距仪4/17二、超声波简介2.1超声波的含义当物体振动时会发出声音,科学家们将每秒振动的次数称为声音的频率,他的单位是HZ。我们人类耳朵能听到声波频率为20-20000HZ,当声波的频率大于20000HZ或小于20HZ时,我们便听不到。因此我们把频率高于20000HZ的声波称为超声波。2.2超声波的特点(一)超声波在传播时,方向性强,能量易于集中。(二)超声波能在各种不同媒质中传播,且可传播足够远的距离。(三)超声波与传声媒质的相互作用适中,易于携带有关传声媒质状态的信息(诊断或对传声媒质产生效应)。(治疗)超声波是一种波动形式,它可以作为探测与负载信息的载体或媒介(如B超等用作诊断)。声波同时又是一种能量形式,当其强度超过一定值时,它就可以通过与传播超声波的媒质的相互作用,去影响,改变以致破坏后者的状态,性质及结构(用作治疗)。三、设计方案分析3.1设计的思路本系统的设计思想是采用以C8051F单片机为核心,来设计一种低成本、高精度、微型化数字显示超声波测距仪。超声波测距可测出回波和发射脉冲之间的时间间隔,利用S=Ct/2就可以算出距离,再在LED上显示出来。当然还可以设置若干个键,以用来控制电路的工作状态。限制的最大可测距离存有四个因素:超声波的幅度,反射面的质地,反射面和入射声波之间的夹角以及接收换能器的灵敏度。接收换能器对声波脉冲的直接接收能力将决定最小的可测距离。3.2硬件部分本制作需要以8088为核心,其他可能还需要用到计数器8253、并行接口芯片8255、中断控制器8259,这些芯片我们在课堂上都已经有了解,现在通过课设将微型计算机课程设计汽车倒车测距仪5/17他们运用到实际题目要求系统能够用三位数码管显示当前的距离值,用到的数据端口会比较多。而8088的数据端口有限,需要通过8255进行并行扩展,通过8255扩展端口,以满足设计的端口需要。同时题目要求用间歇的“嘟嘟”声发出警报,“嘟嘟”声间隙随障碍物距离缩短而缩短,驾驶员不但可以直接观察到检测的距离,还可以凭听觉判断车后障碍物离车辆距离的远近,而且要求根据距离远近发出报警声并显示距离。障碍物距离小于1m,距离值变化5cm更换显示,否则不更换;距离在1m以上,新值与原显示值之差大于10cm更换,否则不更换。这就需要有一个能够准确计数和计时的芯片,而我们这学期微机课程所学的计数器8253刚好可以满足这个要求,因而选用8255作为系统的计数器和计时器。系统需要通过中断来判断计时或计数是否完成,而中断控制器8259有七个可屏蔽中断口,通过与计数器8253输出相连可以反映计数的结束与否。触发单片机进行中断处理,因而选用8259作为中断处理器。微型计算机课程设计汽车倒车测距仪6/17四、硬件部分设计4.1整机连接图4.28088最小系统本设计8088最小工作模式中,用了1片8284A作为时钟发生器,74LS373,用作地址锁存器;用了1片74LS245作为数据总线收发器,增加数据总线的驱动能力。原理图如图所示。当用晶体振荡器作为振荡源时,晶体振荡器连在8284A的X1和X2两端上,F/C接地。8284A输出的时钟频率均为振荡源频率的三分之一。同时它对READY准备好信号和RESET复位信号进行同步,外部设备可以在任何时候发出这两个信号,8284A的内部逻辑电路在时钟后沿(下降沿)处使READY和RESET有效。74LS373,作为地址锁存器。8282(8283)是带有三态缓冲器的8位通用数据锁存器。它们的引脚和内部结构如图2.9所示。两者的区别仅在于8282的8位输入微型计算机课程设计汽车倒车测距仪7/17信号和输出信号之间是同相的,而8283的是反相的。当系统中所连的存储器和外设较多时,需要增加数据总线的驱动能力,这时,要用1片74LS245作为总线收发器。74LS245是三态输出8位双向数据缓冲器,OE是开启缓冲器的控制信号。当OE有效时,允许数据通过缓冲器;当无效时,禁止数据通过缓冲器,输出呈高阻状态。DIR是数据传送方向控制信号。4.38255与数码管电路8255是Intel系列的并行接口芯片,本电路中8255作为8088系统与外部设备接口。如图四所示8255数据线和控制线与8088单片机相连,以使单片机可以对8255进行编程。8255的A、B、C端口均定义为输出。A端口接数码管的字形线通过对8255三个端口的定义可以控制超声波的发射、蜂鸣器的鸣响和距离的显示。8255的端口地址经过分析可得88H-8AH(分别为端口A、端口B、端口C及方式控制字)微型计算机课程设计汽车倒车测距仪8/174.48253及8259部分电路8253内部有3个独立的16位定时计数器通道。计数器可按照二进制或十进制计数,计数和定时范围可在165535之间改变,每个通道有6种工作方式,计数频率可高达2MHz以上。本设计中用74LS138对8253和8259进行选址,电路中用到通道0和通道1两个计数端口,通道0用来计算超声波发射到接收的时间,通道1用来定时,控制“嘟嘟声”声的频率。其接口电路如图三所示可编程控制器8259是在多中断源系统中,用于8088等单片机的CPU实现对外部中断请求管理里工作,对他们实现优先权的排队,想CPU发出中断请求信号,提供中断类型码,屏蔽中断输入等功能的中断控制芯片。8259A采单片或多拍级联方式,可管理不同多级中断。本设计中使用了8259单级中断,用了IRQ5、IRQ6、IRQ7三个中断源,分别作为超声波回波信号、响铃频率计时、计数器计数中断。(8253端口地址为84H-87H)微型计算机课程设计汽车倒车测距仪9/17五、软件部分设计5.1设计思路及流程图本次设计的软件部分首先分别对各个芯片进行初始化处理,随后,根据要求,画出相应流程图进行汇编编程设计开始8253、825、8259初始化编程发射超声波信号1ms,且8253开始计数开中断是否有回波?进入中断子程序微型计算机课程设计汽车倒车测距仪10/17IRQ5调用计数count时间T=COUNT*O距离L=17*T/2msL1m?每变换5cm,显示一次YN没变换10cm,显示一次返回主程序IRQ6调用COUNT8253计数T0=25msT1=COUNT*25ms返回主程序IRQ7COUNT+8253置数返回主程序微型计算机课程设计汽车倒车测距仪11/175.2程序清单DATASEGMENTTABLEDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;数码管显示表(从0-9)LONGDWFFFFH;距离值SELECTDB01H,02H,03HNUMDB00HRINGDB00HDATAENDSSTACKSEGMENTSTACKDW100DUP(?)STACKENDSCODESEGMENTASSUMECS:CODE,SS:STACK,DS:DATA,ES:DATASTART:MOVAX,DATAMOVDS,AXMOVAX,STACKMOVSS,AXMOVAX,DATAMOVES,AXMOVDX,01HCLI;8253初始化MOVAL,34H;计数器0,方式2,二进制,低高位写入;用于计算时间OUT87H,ALMOVAL,6CH;1ms一次负脉冲OUT84H,ALMOVAL,38HOUT84H,ALMOVAL,74H;计数器1,方式2,二进制,低高位写入;用于蜂鸣器的声响OUT87H,ALMOVAL,6CH;1ms一次负脉冲OUT84H,ALMOVAL,38HOUT84H,AL;8255初始化MOVAL,80H;配置A、B口为输出,工作于方式0MOVDX,8AHOUTDX,ALMOVAL,40H;数码管段选择MOVDX,88HOUTDX,ALMOVAL,07HMOVDX,84H;选中三个数码管微型计算机课程设计汽车倒车测距仪12/17OUTDX,AL;8259初始化MOVAX,0000H;段基地址MOVDS,AXLEAAX,INTR7;用于每5cm一次负脉冲MOVSI,003CHMOVSI,AXMOVAX,SEGIN2;入口段基址MOVSI,003EHMOVSI,AXLEAAX,INTR6;用于每30ms一次脉冲,作为控制喇叭的方波频率MOVSI,0038HMOVSI,AXMOVAX,SEGIN1MOVSI,003AHMOVSI,AXLEAAX,INTR5;用于接受超声波时,产生中断MOVSI,0034HMOVSI,AXMOVAX,SEGIN0MOVSI,0036HMOVSI,AX;发送1ms的脉冲SENT:MOVAL,02HOUT61H,ALCALLDELAY1;延时1msMOVAL,00HOUT61H,ALINAL,21ANDAL,1F;开中断5,6,7OUT21,ALMOVAX,SEGDATADISP:MOVAX,OFFSETLONG;比较是否为初始值MOVSI,AXMOVAX,SICMPAX,FFFFHJNEDIFMOVAL,40H;相同则仍然显示-OUT60H,ALMOVAL,07HOUT62H,ALJMPDISP;且循环,直至60ms中断后,重新到GO处MOVDS,AXDIF:MOVBX,0FFSETTABLEMOVDI,BXMOVBX,0FFSETSELECTMOVSI,BXCMPAX,64H;比较1M,然后转到不同的显示程序JBESMALLER微型计算机课程设计汽车倒车测距仪13/17;对下述程序的解释:如果当距离小于1米时,选择调用smaller程序,否则调用bigger(bigger要求显示十米为一个单位)BIGGER:CALLDISP_MOSTMOVBL,00;个位为0CALLDISP_DAN;调用单位显示子程序JMPDISPLAYSMALLER:CALLDISP_MOSTMOVBL,AH;个位放入缓存CALLDISP_DAN;调用单位显示子程序JMPDISPLAYDISP_DAN:PUSHAXMOVAL,BBX+DI;查表得显示码OUT60,AL;向数码管输出显示码MOVAL,BSI;查表得数码管片选OUT62,AL;向数码管输出片选CALLDALLYINCSI;片选+1POPAXRETDISP_MOST:MOVBL,64H;除以100,得百位DIVBL;百位放在AL,余数放在AHMOVBH,00;为查表显示作准备MOVBL,AL;百位放入缓存CALLDP_1;调用单位显示子程序MOVAL,AH;对余数再进行除法运算MOVAH,00MOVBL,0AH;除以10,得十位及个位(0AH表示十进制的10)DIVBL;十位放在AL,个位放在AH(依次放)MOVBL,AL;十位放入缓存CALLDP_1;调用单位显示子程序RETCODEENDSENDSTART;中断5,超声波接受中断,计算车与障碍物的距离INTR5PROCFARPUSHSI;压堆栈(SIBXAX)PUSHBXPUSHAX微型计算机课程设计汽车倒车测距仪14/17MOVAX,OFFSETCOUNT;取5cm计数标志MOVSI,AXMOVAL,SIMOVBL,05HMULBL;乘以5cm,得总长度MOVBX,OFFSETLENGTH;放入LENGTH标志位MOVSI,BXMOVSI,AXPOPAXPOPBXPOPSIIRETINTR5ENDP;中断6,用于产生不同频率来控制蜂鸣器发不同声音INTR6PROCFARPUSHSIPUSHAXMOVAX,OFFSETLONGMOVSI,AXMOVAX,SICMPAX,FFFFHJEBACKMOVAX,OFFSETSENTMOVSI,ALMOVAL,SIDECALCMPAL,00HJNEBACK;不为0则返回XORDLOUT61H,DL;取反输出给B口JMPBACKNOT_FFFF:MOVAL,00HOUT61H,AL;当检测范围大于10m关喇叭BACK:POPAXPOPSIIRETINTR6ENDP;中断7,用于累计COUNT值,代表距离INTR7PROCFARPUSHSIPUSHAXMOVAX,OFFSETCOUNTMOVSI,AXMOVAL,SIINCALCMPAL,CCHJNEBBCAKMOVAL,00H微型计算机课程设计汽车倒车测距仪15/17MOVSI,AL;COUNT标志位复位为00HMOVAX,OFFSETLENGTHMOVSI,AXMOVAX,FFFFHMOVSI,AX;length标志位复位为FFFFHBBACK:POPAXPOPSIJMPGOIRETINTR7ENDP;延时子程序延时1msDALLYPROCFARPUSHCXPUSHAXMOVCX,0FFFFHD1:MOVAX,000FFHD2:DECAXJNED2LOOPD1POPAXPOPCXRETDALLYENDP;延时子程序延时60msDALLY_60PROCFARPUSHCXPUSHAXMOVCX,78HD1:MOVAX,50HD2:DECAXJNED2LOOPD1POPAXPOPCXRETDALLY_60ENDP微型计算机课程设计汽车倒车测距仪16/17六、设计体会及总结本次课设最基本的原来全部都来自于我们的书本,所以一切我们都需要回到书本,回到课堂曾经用过的知识,我觉得这一点很好。我们可以通过我们学过的只是进行复习以及加深对他们的印象,并且将他们与实际结合起来。下面我就分软件和硬件进行阐述。1、硬件部分硬件部分主要又另外一位成员完成,但是要知道,硬件是软件的前提,所以我们通过上网查阅资料,翻阅书本,花了大部分的时间在硬件的确定上,一旦硬件搞定了,那么剩下的就会得心应手一些。此外,我们还一起研究学习了protel软件,学会了如何绘制电路图。在这其中也碰到了许多困难,我们通过一同协作克服了这些困难。2、软件部分软件部分主要由我来编写完成。其实对于汇编语言的学习已经由来已久,但是总是觉得汇编语言不是我们人们所能掌握的高级语言。相比于C+这样的高级编程语言,汇编语言可以说是相当复杂的一个工程。老师曾经教
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 跨行业企业挂靠经营授权协议
- 个人自建住宅抵押贷款担保协议
- 2025公务员热点面试题及答案
- 录音专业面试题目及答案
- 重型颅脑外伤的观察及护理
- 2025至2030中国肾上腺素激动剂行业项目调研及市场前景预测评估报告
- 2025年智能可穿戴设备睡眠监测技术创新在临床应用中的突破
- 高净值夫妇离婚协议书模板及财务安排细则
- 离婚抚养权协议及子女教育及财产分割及债务清偿合同
- 甲乙双方生物技术成果知识产权独占许可合同
- GB/T 21063.4-2007政务信息资源目录体系第4部分:政务信息资源分类
- 机修车间岗位廉洁风险点及防范措施表
- 全新版尹定邦设计学概论1课件
- 牙及牙槽外科
- 文物建筑保护修缮专项方案
- 万用表 钳形表 摇表的使用课件
- 63T折弯机使用说明书
- 170位真实有效投资人邮箱
- 工程力学ppt课件(完整版)
- 《区域经济学》讲义(1)课件
- 船模制作教程(课堂PPT)课件(PPT 85页)
评论
0/150
提交评论