自行车里程计_第1页
自行车里程计_第2页
自行车里程计_第3页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、word毕业设计论文课题名称:自行车里程计课题性质:毕业设计院系:电子工程系摘要:新生事物不会因传统的存在而停止它前进的步伐,电子数码科技今天 已渗透到工业,农业,民用产品的点点滴滴。随着居民生活水平的不断提高, 自行车不再仅仅是普通的运输、代步的工具,而是成为人们娱乐、休闲、锻 炼的首选。自行车里程/速度计能够满足人们最根本的需求,让人们能清楚地 知道当前的速度、里程等物理量。更重要的是:它是最具环保的交通工具。 本论文主要阐述一种基于霍尔元件的自行车里程 /速度计的设计。以AT89C52 单片机为核心,A44E霍尔传感器测转数,实现对自行车里程/速度的测量统 计,采用24C01实现在系统掉

2、电的时候保存里程信息, 并能将自行车的里程 数与速度用LED实时显示。文章详细介绍了自行车里程/速度计的硬件电路和 软件设计。硬件局部利用霍尔元件将自行车每转一圈的脉冲数传入单片机系 统,然后单片机系统将信号经过处理送显示。 软件局部用汇编语言进展编程, 采用模块化设计思想。该系统硬件电路简单,子程序具有通用性,完全符合 设计要求。关键词: 里程/速度,霍尔元件,单片机,数码管目录摘要:0关键词:0第一章绪论3课题介绍3设计背景3方案确实定与论证3第二章硬件设计5概述52.2单片机简述6221 AT89C52引脚与功能介绍(如图2.2)7222单片机最小系统12设计电路14LED动态显示电路1

3、4感应电路162.3.3 控制电路19报警电路的设计21第三章软件设计22软件实现的功能22系统主要程序的设计23源程序25第四章电路调试45软件调试方法454.2 硬件调试方法46 常见的硬件故障46 调试方法47第五章总结48参考文献49附录A50附录B51第一章绪论课题介绍自行车里程/速度计能自动显示自行车行使的总里程数与行车速度,具有超速信响提 醒功能,里程数据自动记忆,也可应用于电动自行车、摩托车、汽车等机动车仪表上。设计背景自行车是由人力脚踏驱动的、有两个车轮的陆地交通车辆,无噪音、无污染、 重量轻、结构简单、造价低廉、使用和维修方便,既能作为代步和运载货物的工具, 又能用于体育锻

4、炼,因而为人们所广泛使用。世界上第一批真正实用型的自行车出现于19世纪初,这时候的自行车是有车把的木制两轮自行车,这种自行车只能用脚蹬才能前行,但是可以一边前行一边改变 方向。后来经过长时期的改良,从根本上改变了自行车的骑行性能,也解决了自行 车的震动问题,同时把自行车的速度推进了许多,自行车不断完善。从1791年到1888年,自行车的发明和改良,经历了近100年中诸多发明者的不懈奋斗。从此,根本奠定了现代自行车的雏形。时至今日,自行车已成为全世界人们使用最多,最 简单,最实用的交通工具。自行车结构与性能不断完善的同时,其开展的目的也从 最早的娱乐用途变为交通代步与休闲运动用途,休闲与竞赛领域

5、的开展使自行车研 发工作不断的精益求精。1 速度测量原理测量自行车的速度的原理有两种:1测量一定时间间隔t1里自行车车轮转过的圈数qs。假设车轮周长为tc,如此 速度 V=tc*qs/t1。2测量自行车车轮转过一圈的时间t2,如此速度V=tc/t2。本设计是采用原理1计算速度。2.传感器的选择(1)红外对管。把红外对管分别安装在自行车车轮的两侧,当车轮转动时,辐条会阻挡红外对管的光路,接收管输出低电平,单片机根据此信号可计算里程、速度等。红外对管的优点是测量精度高,缺点是安装比拟复杂和容易受外来光线、灰尘等的影响。(2)开关型霍尔传感器。霍尔传感器是利用霍尔效应把磁输入信号转换成电信号的器件。

6、把开关型霍尔传感器安装在自行车贴近车轮的支架上, 磁钢安装在辐条上,当磁钢靠 近霍尔传感器的时候,传感器输出一个无抖动的低电平,单片机根据此信号可计算里程、 速度等。霍尔传感器的优点是稳定和安装简易,缺点是本钱较高。目前,传感器已向新材料开发,集成化、智能化、数字化、新工艺、高精度化与高稳 定、高可靠化等技术开展。特别是霍尔传感器,鉴于它的价廉、易于使用,使它广泛运用 于里程计、速度计等。本设计选用开关型霍尔传感器。(1)动态扫描LED数码管显示。里程表的显示内容以数字为主,利用LED数码管可根本满足使用要求,且本钱较低。LED数码管是由发光二极管构成的,亦称半导体数码管。将条状发光二极管按照

7、共阴极(负极)或共阳极(正极)的方法连接,组成“ 8字,再 把发光二极管另一电极作笔段电极,就构成了 LED数码管。假如按规定使某些笔段上的发 光二极管发光,就能显示从09的系列数字。同荧光数码管(VFD)、辉光数码管(NRT) 相比,它具有:体积小、功耗低、耐震动、寿命长、亮度高、单色性好、发光响应的时间 短,能与TTL、CMO电路兼容等的数显器件。LED数码管有共阳和共阴两种,把这些 LED发光二极管的正极接到一块一般是拼成 一个8字加一个小数点而作为一个引脚,就叫共阳的,相反的,就叫共阴的,那么应用 时这个脚就分别的接VCC和GND再把多个这样的8字装在一起就成了多位的数码管了。 +、-

8、分别表示公共阳极和公共阴极。ag是7个笔段电极,DP为小数点。另有一种字高 为7. 6mm勺超小型LED数码管,管脚从左右两排引出,小数点如此是独立的。本设计采用共阴LED数码管。第二章硬件设计概述1 系统硬件电路的设计自行车里程/速度计采用AT89C24C0的存取控制。11脚输出用于速度超速时的报警硬件电路包括单片机最小系统,里程、速度显示电路,霍尔传感器,外部存储器,报 警电路,如图2.1所示.图2.1硬件电路2.2单片机简述随着科技的日新月异,单片机技术也越来越成熟。它具有的体积小、功耗低、功能强 大、价格廉价、工作可靠、使用方便等特点,也被越来越广泛地应用于自动控制、智能化 仪表、数据

9、米集、军工产品以与家用电器等各个领域。AT89C52是一种多功能的通用可编程接口芯片,它具有三个可编程I/O端口,1个14位可编程定时器和256B的静态RAM能方便与MCS-51系统单片机连接。AT89C51可以直接和MCS-51单片机连接,不需要任何外加逻辑电路。 AT89C52I/0 口 工作方式的选择是通过对 AT89S52的命令存放器写入命令来实现的。AT89C52的状态存放 器地址与命令存放器地址一样,状态字存放器只能读出,不能写入。AT89C52单片机因其与MCS-51的完全兼容性、优良的工作性能、使用的灵活性以与较高的性能价格比,成为 AT89系列单片机的主流机型之一,所以此次设

10、计采用AT89C52单片机。2.2.1 AT89C52引脚与功能介绍(如图2.2),P1.0VccP1.1P0.0.P1.2P0.1.P1.3P0.2.P1.4P0.3.P1.5P0.4.P1.6P0.5.P1.7P0.6P0.7.RC.RXDALE.TXDPSEN_INT0INT1P2.7.T0P2.6T1P2.5WRP2.4RD-P2.3.XTAL2P2.2XTAL1P2.1,VSSP2.01393130101112 .13_°OO2934333214151口1-厂亡192028772625242322215|674039383736图 2.2 AT89C52 引脚AT89C52

11、是美国ATME公司生产的低电压,高性能的CMOS位单片机片内4Kbytes的可反复擦写的只读程序存储器PEROM和128bytes的随机存储器RAMI,器件采用ATMEL公司的高密度、非易失存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器CPU和Flash存储单元,功能强大。AT89C51单片机可为你提供许多高性价的 应用场合,可灵活的应用于各种控制领域。1. AT89C52主要性能参数:与MCS-51产品指令系统的全兼容 4k字节可重擦写Flash闪速存储器-100(次可擦写周期-全静态操作:0Hz-24MHz-三级加密程序存储器-128X字节内部RAM-32个可编程I/

12、O 口线-2个16位定时/计数器6个中断源可编程串行UARTS道低功耗空闲和掉电模式2. AT89C52功能特性描述:AT89C52提供以下标准功能:4k字节Flash闪速存储器,128字节内部RAM32个I/O 口线,两个16位定时/计数器,一个5向量中断结构,一个全双工串行通信口,片内震荡 器与时钟电路。同时,AT89C52可降至0Hz的静态逻辑操作,并支持两种软件的可选的节 电工作模式。空闲方式停止 CPU的工作,但允许RAM定时/计数器,窜行通信口与中断 系统继续工作。掉电方式保存RAM中的内容,但震荡器停止工作并禁止所有部件工作直到 下一个硬件复位。存放器内容存放器内容PC0000H

13、TMOD00HACC00HT00HB00HTH000HPSW00HTLO00HSP07HTH100HDPTR0000HTH100HP1 P30FFHSCON00HIPxxx00000SBUF不定IE0xxx00000PCON0xxx00000表2-1AT89C52存放器时钟的占空比没有特殊要求,但最小高电平持续的时间和最大低电平持续的时间应符 合产品技术条件的要求。 Flash闪速存储器的编程:AT89C52单片机内部有4K字节的Flash PERO,这个Flash 存储存储阵列出厂时已处于擦除状态既所有存储单元的内容均为FFHJ,用户随时可对其进展编程。程序接收高电压+12V或低电压Vss的

14、允许编程信号。低电压编程模 式,适用与用户在线编程系统。而高电平模式可与通用EPROMg程程序兼容。编程方法编程前需设置好地址、数据与控制信号,编程单元的地址就、加在P1 口和P2 口的P2.0 P2.3 11位地址X围为0000H 0FFFH ,数据从P0 口输入,弓I脚P2.6、 P2.7和P3.6、P3.7的电平设置见表。PSEN为低电平,RST保持高电平,EA/VP引脚是编 程电源的输入端,按要求加上编程电压,ALE/PROG引脚输入编程脉冲负脉冲编程时可采用420MHZ勺时钟震荡器AT89C51的编程方法如下:1.0在地址线上加上要编程单 元的地址信号。1在数据线上加上要写入的数据字

15、节。2.激活相应的控制信号。3.在高电压编程时,将EA/VP端加上+1V编程电压。4.每对Flash存储阵列写入一个字节,加上一个 ALE/PROGS程脉冲。RST/VPD:9脚复位信号时钟电路工作后,在引脚上出现两个机器周期的高电平,芯片内部进展初始复位,复位后片内存储器的状态如表所示,P1 P3 口输出高电平,初始值07H写入堆栈指针SP清0程序计数器PC和其余特殊功能存放器,但始终不影响片 内RAM犬态,只要该引脚保持高电平,89C52将循环复位,RAT/VPD从高电平到低电平单 片机将从0号单元开始执行程序,另外该引脚还具有复用功能,只要将VPD接+5V备用电源,一旦VCC电位突然降低

16、或断电,能保护片内RAM中的信息不丢失,恢复电后能正常工AT89C52通常采用上电自动复位和开关手动复位,我们采用的是手动复位开关。手动 开关未按下之前,电容正极处于家电状态,当按键按下去后,VCC与GND导通,电容放电, 从而实现放电。AT89C52内部集成4 KB只读存储器。采用CHMO工艺技术,且与MCS-51产品相兼容。 内部集成通用的8位CPU和Flash RAM。其应用X围广,性能良好,可用于解决复杂的控 制冋题。AT89C52由外部程序取指令或数据时,每个机器周期两次PSEN有效,既输出两个脉冲。在此期间,当访问外部数据存储器,这两次有效的PSEN信号不出现。3管脚说明:VCC供

17、电电压。GND接地。P0 口: P0 口为一个8位漏级开路双向I/O 口,每脚可吸收8TTL门电流。当P1 口的 管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定 义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进展校验时, P0输出原码,此时P0外部必须被拉高。P1 口: P1 口是一个内部提供上拉电阻的8位双向I/O 口, P1 口缓冲器能接收输出4TTL 门电流。P1 口管脚写入1后,被内部上拉为高,可用作输入,P1 口被外部下拉为低电平 时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1 口作为第八位地址

18、接收。P2 口: P2 口为一个内部上拉电阻的8位双向I/O 口,P2 口缓冲器可接收,输出4个 TTL门电流,当P2 口被写“ T时,其管脚被内部上拉电阻拉高,且作为输入。并因此作 为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2 口当用于外部程序存储器或16位地址外部数据存储器进展存取时,P2 口输出地址的高八位。在 给出地址“ T时,它利用内部上拉优势,当对外部八位地址数据存储器进展读写时,P2口输出其特殊功能存放器的内容。P2 口在FLASH编程和校验时接收高八位地址信号和控 制信号。P3 口: P3 口管脚是8个带内部上拉电阻的双向I/O 口,可接收输出4

19、个TTL门电流。 当P3 口写入“T后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流ILL丨这是由于上拉的缘故。P3口也可作为AT89C52勺一些特殊功能口,如表 2-2所示:口管脚备选功能P3.0 RXD串行输入口P3.1 TXD串行输出口P3.2 /INT0外部中断0P3.3 /INT1外部中断1P3.4 T0记时器0外部输入P3.5 T1记时器1外部输入P3.6 /WR外部数据存储器写选通P3.7 /RD外部数据存储器读选通表2-2 AT89C52的特殊功能口P3 口同时为闪烁编程和编程校验接收一些控制信号。RST复位输入。当振荡器复位器件时,要保

20、持 RST脚两个机器周期的高电平时间。ALE/PROG当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。 在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。 然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输 出可在SFR8EH地址上置0。此时,ALE只有在执行 MOV,MOV指令是ALE才起作用。另 外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN外部程序存储器的选通信号。在由外部程序存储器取指期间

21、,每个机器周期 两次/PSEN有效。但在访问外部数据存储器时,这两次有效的 /PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,如此在此期间外部程序存储器0000H-FFFFH,不 管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET当/EA端保持高电平时,此间内部程序存储器。在 FLASH编程期间,此引脚也用于施加 12V编程电源 VPP。XTAL1反向振荡放大器的输入与内部时钟工作电路的输入。XTAL2来自反向振荡器的输出。振荡器特性:XTAL1和 XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时

22、钟源驱动器件, XTAL2应不接。有余输 入至内部时钟信号要通过一个二分频触发器, 因此对外部时钟信号的脉宽无任何要求, 但 必须保证脉冲的上下电平要求的宽度。单片机最小系统单片机最小系统由三个局部组成,分别是:电源电路、复位电路、时钟电路1、电源电路如图2.3CW78M05D1C4100 0pC50.33uFO V图2.3电源电路本设计采用三端固定集成稳压器组成稳压电源。(1) 三端集成稳压器的选择选用三端固定式集成稳压器 CW78M0查手册输出电压Uo=4.965.04 V、lomax=500mA, 输入电压UI=735V时均能稳压。(2) 电源变压器选择三端固定式集成稳压器构成稳压电路时

23、要求输入电压UI不能过低,如此三端集成稳压器不能正常工作,失去稳压作用。UI也不能太大,否如此会加大三端集成稳压器的功耗、降低电源效率。(3) 整流二极管的选择每个二极管流过的平均电流ID=1/2 lomax=250mA二极管承受的反向峰值电压 UDM=1.414U2=1.414 X7=9.898V考虑到电容滤波电路中冲击电流的影响,二极管最大正 向整流电流IF=2-3ID、二极管最高反向工作电压 UR% UDMUDM=1.414U查手册整流 二极管选用2CZ55B或 IN4001,其URI>50V, IF=1A,能满足要求。滤波电容C4的选择本设计滤波电容C4选1000uF,耐压为2V

24、的CD11型铝电解电容。铝电解电容体积小, 电容量大,有极性适合在-20 C50 C温度X围内工作。C5 ,C6的选用:C5,C6主要用来消除可能产生的高频寄生震荡。C5为抗干扰电容,用以旁路在输入导线过长时窜入的高频干扰脉冲;C6具有改善输出瞬变特性和防止电路产生自激振荡的 作用。C5, C6采用高频特性好的瓷介电容高频损耗小,稳定性还,其容量一般 C5取 0.33uF、C6取 0.1uF。2、复位电路如图2.4VCCR3+ C4S110uF"D1R1 0.78kR212k图2.4复位电路复位是计算机的一个重要工作状态,在单片机工作时,接电时需要复位,断电后也需 要复位,发生故障时

25、同样需要复位。复位电路分为上电复位和手动复位。本次设计中采用复位电路如下列图:在振荡器运行时,有两个机器周期24个振荡周期以上的高电平出现在此引脚时,将使单片机复位,只要这个脚保持高电平,51芯片便循环复位。复位后PO- P3 口均置1引脚表现为高电平,程序计数器和特殊功能存放器 SFF全部清零。当复位脚由高电平变为 低电平时,芯片为ROM勺0000H处开始运行程序。3、时钟电路如图2.5C1II20p丄Y1I12MC2II20p图2.5时钟电路12MH左间任选,电容可以在530pF之间选择,电容C1和O的大小可起频率微调 的作用,电容大小要和晶体的容性负载阻搞相匹配,否如此不易起振。1个机器

26、周期等于12个时钟周期,本设计中晶振采用 12MHZ时钟周期为1/12*1us 。LED动态显示电路DS161Q2PNPR1R2R3GNDGND4.7K4.7K47KP0.3R300P0 1 R 300P2.3P2.2P2.1P0 2 R 300P0.0 R 300DS2P0.5 R 300P0.4 R 3001a DPYbac 0 eeddcp gHdpabP0.6R 300c 1lb :e d dcpg dpDS3a DPYbac fbd . g:gHdp丿Q3PNPGNDR14P3.7+5V1.8K图2.6 LED动态显示电路数码管由8个发光二极管构成,通过不同的组合可用来显示数字09、

27、字符AF、H L、P、R、U、Y、符号“-与小数点“.。数码管又分为共阴极和共阳极两种结构。常见LED数码管的外形与内部结构如图2.7所示。(a)外形结构图(b)共阳极结构(c)共阴极结构图2.7 LED数码管的外形与内部结构2、限流电阻的计算1)数码管型驱动电路中限流电阻的计算。每段数码管点亮时两端电压大约为 2.5V,正常工作电流810mA为保证数码管不被 烧坏,此处取8 mA的电流,如此计算限流电阻 R=5-2.5V/8mA=300所以选择大小为 300电阻。2)数码管位驱动电路中限流电阻的计算。PNPE极管在此作为开关器件,导通时 be端电压约为0.3V,P2 口电流12mA为保证正

28、常工作,取1mA如此计算限流电阻大小,所以选择大小为的电阻。感应电路霍尔传感器是一种磁传感器。用它可以检测磁场与其变化,可在各种与磁场有关的场 合中使用。霍尔传感器以霍尔效应为其工作根底, 是由霍尔元件和它的附属电路组成的集 成传感器。霍尔传感器在工业生产、交通运输和日常生活中有着非常广泛的应用。1、霍尔效应霍尔元件-霍尔传感器由于霍尔元件产生的电势差很小,故通常将霍尔元件与放大器电路、温度补偿电路与稳 压电源电路等集成在一个芯片上,称之为霍尔传感器 .霍尔传感器霍尔传感器也称为霍尔集成电路,其外形较小,如图2.8所示,是其中一种型号的外形图2、霍尔传感器的分类霍尔传感器分为线性型霍尔传感器和

29、开关型霍尔传感器两种1线性型霍尔传感器由霍尔元件、 线性放大器和射极跟随器组成,它输出模拟量2开关型霍尔传感器由稳压器、霍尔元件、差分放大器,斯密特触发器和输出级 组成,它输出数字量。3、霍尔传感器的特性1线性型霍尔传感器的特性图2.9输出电压与外加磁场强度呈线性关系,如图2.9所示,可见,在BiE2的磁感应强度X围内有较好的线性度,磁感应强度超出此X围时如此呈现饱和状态。2开关型霍尔传感器的特性如图2.10所示,其中Bp为工作点“开的磁感应强度,Brp为释放点“关的磁感应强 度。当外加的磁感应强度超过动作点 Bop时,传感器输出低电平,当磁感应强度降到动作 点EOp以下时,传感器输出电平不变

30、,一直要降到释放点Brp时,传感器才由低电平跃变为高电平。Bop与&P之间的滞后使开关动作更为可靠。另外还有一种“锁键型"或称“锁存型"所示。当磁感应强度超过动作点 Bp时,传感器输出由高电平跃变为低电平,而在外磁场撤 消后,其输出状态保持不变即锁存状态,必须施加反向磁感应强度达到住p时,才能使电平产生变化。4、霍尔传感器的应用按被检测对象的性质可将它们的应用分为:直接应用和间接应用。前者是直接检测受检 对象本身的磁场或磁特性,后者是检测受检对象上人为设置的磁场, 这个磁场是被检测的 信息的载体,通过它,将许多非电、非磁的物理量,例如速度、加速度、角度、角速度、 转

31、数、转速以与工作状态发生变化的时间等,转变成电学量来进展检测和控制。1线性型霍尔传感器主要用于一些物理量的测量。1.电流传感器2.位移测量2开关型霍尔传感器主要用于测转数、转速、风速、流速、接近开关、关门告知器、 报警器、自动控制电路等。如图2.12所示,在非磁性材料的圆盘边上粘一块磁钢, 霍尔传感器放在靠近圆盘边缘 处,圆盘旋转一周,霍尔传感器就输出一个脉冲,从而可测出转数计数器,假如接入 频率计,便可测出转速。如果把开关型霍尔传感器按预定位置有规律地布置在轨道上,当装在运动车辆上的永 磁体经过它时,可以从测量电路上测得脉冲信号。 根据脉冲信号的分布可以测出车辆的运 动速度。本设计采用的开关

32、型霍尔传感器尺寸小、工作电压X围宽,工作可靠,价格廉价,因此获得极为广泛的应用。电路如图 2.13所示。控制电路1、分频器的设计如图2.14图2.13开关型霍尔传感器的应用+5Vv y114 CLOCKdVIQ7NCQ11312R104Q6Q5Q4VssQ2118.2KTC402410 NC Q38 NC-GND如图2.15是控制信号将轮子圈数的计数脉冲经二分频后形成的脉冲波形霍尔输出圈波形二分频后的波形2、外部存储器24C01的存取控制,如图2.16所示。EEPRO芯片按其接口方式来分,有 I2C、Microwire、SPI三种,但每一种芯片又分为各种容量规格,比如I2C中的24C01、24

33、C02 24C04, 一般尾数大的比尾数小的容量大, 且有着直接的倍数关系。作为一种非易失性存储器NVM,24系列EEPROI使用的很普遍,一般作为数据量不太大的数据存储器。下面总结一下其应用的一些要点。从命名上看,24CXX中XX的单位是 kbit,女口 24C08 其存储容量为 8k bit ,即 1k Byte = 1024 Byte。一、工作条件1. 工作电压(VCC)2. 输入电平定义(VIH,VIL)VIH : 0.7VCC-VCC+1、硬件连接1. 上拉电阻RP的取值由于I2C总线电容要满足小于400pf的条件。从以下波形可以看出,上拉电阻越大,总线的电容越小,可以实现的数据传输

34、率就越大,可达400khz。2 写保护脚芯片写保护脚是高电平有效,即 WP接高电平时禁止写入三、读写时序EEPRO一般在电路中做存储器件,以下的发送和接收都是针对主器件说明的,开始 和完毕条件也是由主器件发出。1、单字节写操作START >发送器件地址>ack >发送字节地址>ack >发送数据>ack > STOP2、 按“页写操作,“页是指高位地址一样一组数据,对于 24C01/02/04/08/16, 一页数据为16字节,一页指高四位地址一样的一组数据。对于 24C32/24C64, 一页数据 为32字节,一页指高11位地址一样的一组数据。STA

35、RT >发送器件地址>ack >发送页首地址>ack >发送数据>ack > 发送数据>ack > STOP3、随机单字节读操作START >发送器件地址写>ack >发送字节地址>ack >STAR>发送器件地 址读>ack > 接收数据>n oack >STOP4、 当前单字节读操作,“当前"指的是前面进展过读操作,但是没有STOP芯片内 部“指针指的字节即为“当前字节。STAR >发送器件地址读>ack >接收数据>n oack >ST

36、OP报警电路的设计如图2.17所示为单片机控制的声光报警电路。C3RST+5V100 pR94.7KR88.2KQ4TXD工作原理:在通电状态下 RST引脚一直保持高电平,使 AT89C52-直保持复位状态。 电容C3的作用是,一旦VCC电位突然降低或断电,能保护片内 RAM中的信息不丢失,恢 复电后能正常工作。三极管PNP在此电路中相当于开关作用,当TXD端输出为高电平时, PNP处于截止区相当于断路;当TXD端输出为低电平时,三级管处于饱和区相当于 短路,所以喇叭和LED就处于导通状态。第三章软件设计3.1软件实现的功能1. 利用霍尔传感器产生里程数的脉冲信号2. 利用单片机自带的计数器T

37、1对霍尔传感器脉冲信号进展计数3. 对数据进展处理,要求用LED显示里程总数和即时速度4. 自行车超速,系统发出报警信号,指示灯闪烁系统主要程序的设计主要工作:将T1设为外部控制定时器方式;外中断0与外中断1设为边沿触发方式; 将局部内存单元清零;设置轮子周长;开中断与定时器;将EEPRO中的数据调入内存等。P1.2、P1.3、P1.6、P1.7端口的开关用于设定轮子的周长,当没有设定时至少让 一个开关闭合,能从P3.1 口输出一个周期为0.5s的方波信号,用作发光管闪烁与信号 响器提醒。主程序根据P3.0 口的开关状态选择里程显示或速度显示图3.1所示为主程序框图。主程序框图60H为外中断0

38、服务程序用于对12脚输入的圈脉冲进展计数,为十六进制计数器 低位,62H为高位。每计数一次后,对里程数据进展一次存储操作里程处理子程序框图里程处理子程序框图5、外中断1服务程序1时,TL1、外中断1服务程序用于处理轮子转动一圈后的计时数据。当标志位00H为说明计数器溢出,放入最大时间值为#0FFH ;当标志位为0时,将计H、数单元TH1、6CH 6DH的值放入68H- 6BH单元速度处理子程序框图。速度处理子程序框图6、EEPRO存取程序本系统使用归一化I2C串口存取子程序,使用一条数据线和时钟线,采用ATME公司 的24C01串口存储器,应用简单方便。7、显示子程序当显示里程时,先要将圈数计

39、数器中的数据进展运算,求出总里程。当要显示速度时, 要将轮子的周长和转一圈的时间数相除,然后换算成km/h单位。最后放入70H73H,进展数据的显示。ORG 0000HLJMP STARTORG 0003HLJMP INTEX0ORG 000BHRETIORG 0013HLJMP INTEX1ORG 001BHLJMP INTT1ORG 0023HRETIRETICLEARMEN:MOV TMOD,#90HMOV SB,#75HSETB PX0SETB IT0SETB IT1CLR AMOV 20H,AMOV 6CH,AMOV 6DH,AMOV 70H,AMOV 71H,AMOV 72H,AM

40、OV 73H,AMOV 60H,AMOV 61H,AMOV 62H,AMOV 63H,ADEC AMOV 68H,AMOV 69H,AMOV 6BH,AMOV P1,ACLEAR1:P1.2,KEY1MOV 21H,#0FHLJMP CLEAR2KEY1:P1.3,KEY2MOV 21H,#12HLJMP CLEAR2KEY2:P1.6,KEY3MOV 21H,#14HLJMP CLEAR2KEY3:P1.7,ERRMOV 21H,#19HCLEAR2: SETB TR1SETB EASETB EX0SETB ET1LCALL VIICREADRETLCALL DL5SLJMP CLEAR1S

41、TART1:P3.0QISPLAYSLCALL DISPLAYVSTART2: SJMP START1INTEX0: PUSH ACCPUSH PSWINC 60HCLR ACJNE A,60H,INTEX0OUTINC 61HCJNE A,61H,INTEX0OUTINC 62HINTEX0OUT: LCALL VIICWRITESETB EX1POP PSWPOP ACCRETIINTEX1:PUSH ACCPUSH PSWCLR EX1MOV TL1,#OFFHMOV TH1,#0FFHMOV 6CH,#0FFHMOV 6DH,#0FFHINTEX1:MOV 68H,TL1MOV 69H

42、,TH1MOV 6AH,6CHMOV 6BH,6DHCLR AMOV TL1,AMOV TH1,AMOV 6CH,AMOV 6DH,ACLR 00HPOP PSWPOP ACCRETIINTT1:PUSH ACCPUSH PSWINC 6CHMOV A,6CHJNZ INTT11INC 6DHMOV A,6DHJNZ INTT11SETB 00HINTT11:POP PSWPOP ACCRETILCALL SSSLCALL DISPLAYLJMP START1LCALL VVVMOV A,71HSUBB A,#04HJNC WARINGRETAJMP V1VIICWRITE:ACALL WM0

43、V9MOV SLA,#SLAWMOV NUMBYT,#09HLCALL WRNBYTRETWMOV9:MOV 5FH,#50HMOV R0,#MTDMOV R1,#5FHMOV R2,#09HWMOV: MOV A,R1MOV R0,AINC R0INC R1DJNZ R2,WMOVRETVIICREAD:MOV MTD,#50HMOV SLA,#SLAWMOV NUMBYT,#01HMOV SLA,#SLAWMOV NUMBYT,#08HLCALL RDNBYTLCALL RMOV8RETRMOV8:MOV R0,#MRDMOV R1,#60HMOV R2,#08HRMOV: MOV A,R

44、0MOV R1,AINC R0INC R1DJNZ R2,RMOVRETSTA: SETB VSDASETB VSCLNOPNOPNOPNOPNOPCLR VSDANOPNOPNOPNOPCLR VSDARETSTOP: CLR VSDASETB VSCLNOPNOPNOPNOPSETB VSDANOPNOPNOPNOPCLR VSDACLR VSCLRETSETB VSCLNOPNOPNOPNOPCLR VSCLSETB VSDARETMNACK: SETB VSDASETB VSCLNOPNOPNOPNOPCLR VSCLCLR VSDARETCACK: SETB VSDASETB VSC

45、LCLR F0MOV C,VSDAJNC CENDSETB F0CEND: CLR VSCLRETWRBYT: MOV R0,#08HWLP1:RLC AJC WR1AJMP WR0WR1: SETB VSDASETB VSCLNOPNOPNOPNOPCLR VSCLAJMP WLP1WR0: CLR VSDASETB VSCLNOPNOPNOPNOPAJMP WLP1RDBYT: MOV R0,#08HRLP : SETB VSDASETB VSCLMOV C,VSDAMOV A,R2RLC AMOV R2,ACLR VSCLDJNZ R0,RLPRETWRNBYT: MOV R3,NUMB

46、YTLCALL STAMOV A,SLALCALL WRBYTLCALL CACKF0,WRNBYTMOV R1,#MTDWRDA: MOV A,R1LCALL WRBYTLCALL CACKF0,WRNBYTINC R1DJNZ R3,WRDALCALL STOPRETRDNBYT: MOV R3,NUMBYTLCALL STAMOV A,SLALCALL WRBYTLCALL CACKF0,RDNBYTRDN:MOV R1,#MRDRDN1:LCALL RDBYTMOV R1,ADJNZ R3,ACKLCALL MNACKLCALL STOPRETACK:LCALL MACKINC R1S

47、JMP RDN1DISPLAY: MOV R1,#70HMOV P2,AMOV A,R1ANL A,#0FHMOV DPTR,#TABMOVC A,A+DPTRLCALL DLIMSINC R1MOV A,R2JNB ACC.3,ENDOUTRL AMOV R2,AAJMP PLAYRETTAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07HDB 7FH,6FH,77H,7CH,39H,5EH,79H,71HDB 00HMOV 18H,#00HMOV 17H,#00HMOV 16H,#00HMOV 11H,#00HMOV 12H,#00HMOV 13H,62HMOV 14

48、H,61HMOV 15H,60HLCALL DIVSTLCALL BCDSTMOV A,25HANL A,#0FHMOV 70H,AMOV A,25HSWAP AANL A,#0FHMOV 71H,AMOV A,24HANL A,#0FHMOV 72H,AMOV A,24HSWAP AANL A,#0FHMOV 73H,ARETVVV: MOV 18H,68HMOV 17H,69HMOV 16H,6AHMOV 11H,#00HMOV 12H,#00HMOV 13H,#36HMOV 14H,#0EEHMOV 15H,#80HLCALL DIVSTMOV 14H,#00HLCALL BCDSTMO

49、V A,25HANL A,#0FHMOV 70H,AMOV A,25HSWAP AANL A,#0FHMOV 71H,AMOV 73H,#00HRETDL1MS: MOV R6,#14HDL1: MOV R7,#19HDL2:DJNZ R7,DL2DJNZ R6,DL1RETDL5S: MOV R5,#0FFHDL3: LCALL DL1MSDJNZ R5,DL3RETDIVST: CLR CMOV A,13HSUBB A,18HMOV A,12HSUBB A,17HMOV A,11HSUBB A,16HJNC LOOP4MOV B,#10HNDIV1: CLR CRLC AMOV 15H,A

50、MOV A,14HRLC AMOV 14H,AMOV A,13HRLC AMOV 13H,AMOV A,12HRLC AMOV 12H,AMOV A.,11HRLC AMOV 11H,AMOV F0,CCLR CMOV A,13HSUBB A,18HMOV 1AH,AMOV A,12HSUBB A,17HMOV A,11HSUBB A,16HF0,NDIV2JC NDIV3NDIV2: MOV 11H,AMOV A,19HMOV 12H,AMOV A,1AHMOV 13H,AINC 15HNDIV3: DJNZ B,NDIV1CLR F0DIVEND: RETLOOP4: SETB F0SJM

51、P DIVENDBCDST: MOV R7,#10HCLR CMOV 25H,#00HMOV 24H,#00HKKK: MOV A,15HRLC AMOV A,14HRLC AMOV 14H,AMOV A,25HADDC A,25HDA AMOV 25H,AMOV A,24HADDC A,24HDA AMOV 24H,ADJNZ R7,KKKRETEND第四章电路调试系统调试包括硬件调试和软件调试。硬件调试的任务是排除系统的硬件系统的硬件电路故障包括设计性错误和工艺故障。软件调试是利用开发工具进展在线防真调试,除发现和解决程序错误外,也可以发现硬件故障校时电路。本次设计中需要的调试如下:4.1软件调试方法软件调试方法与选用的软件结构和程序设计技术有关。如果采用模块设计技术 ,如此 逐个模块调好后,再进展系统程序总调试,如果采用实时多任务操作系统,一般是逐个任务 进展调试。CPU的现对于模块结构程序,要对子程序逐个进展调试。调试子程序时,一定要符合入口条件和 出口条件,调试手段可采用单步运行方式

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论