自行车车速里程测量仪设计_第1页
自行车车速里程测量仪设计_第2页
自行车车速里程测量仪设计_第3页
自行车车速里程测量仪设计_第4页
自行车车速里程测量仪设计_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、摘要本文介绍了用89C52单片机设计自行车里程/速度计,运用单片机的运算和控 制功能,并采用数码管实时显示所测速度和里程的速度里程计设计方案,用分频 器TC4024实现二分频,用来探讨24C01传感器的用途,通过实用电路的设计来掌 握速度及里程传感器的使用方法及一些性能参数。本系统含了电子电路技术,以 及常用的AT89C52单片机工作原理,通过本系统的设计,把它们俩者有机结合。关键词:AT89C52数码管TC4024 24C01传感器自行车里程/速度计的设计目录1 绪论32 AT89C52 单片机32.1 AT89C52单片机简介 32.2 AT89C52的管脚及其含义 43 TC402464

2、 24C01 芯片64.1 24C01 简介64.2 24C01 的特性:75硬件电路的设计85.1 系统硬件电路 85.2系统的工作原理 86软件设计96.1系统内存的规划 96.2系统的主要程序设计 97系统调试127.1 硬件调试127.2软件调试128 结论13作者:第 2 页共15页自行车里程/速度计的设计传感器,英文名字为 Sensor或Transduce,亦称换能器、变换器。在科技迅 速发展的今天,传感器越来倍受重视。在日常生活、航天、航空,常规武器、交 通运输,机械制造、化工、生物医学工程、自动化检测工程及计量等各项领域都 被广泛应用。目前,传感器已向新材料开发,集成化、智能化

3、、数字化、新工艺,高精度 化及高稳定、高可靠化等技术发展。特别是霍尔传感器,鉴于它的价廉、易于使 用,使它广泛运用于里程计、速度计等 。单片微型计算机简称单片机,又称微控制器,特别适用于控制领域。通常单 片机由单块集成电路构成,内部包含有计算机的基本部件:CPU (中央处理器), 存储器和I/O接口电路等。因此,单片机只需要与适当的软件及外部设备相结合, 便可以成为一个单片机控制系统。目前,场上销售的单片机有4位、& 16位、32位,并且单片机朝着高性能多种方向发展,尤其是8位单片机以经成为当前单片机的主流,主要体现在CPU功能增强、内部资源增多、弓I脚的功能化、低电压和低功好耗化上4

4、。单片机因为其体积小、功能强,可靠性高,灵活方便等优点,所以可以用于各个领域,对各行各业的技术改造和产品更新换代起到重要的推动作用。本人经过学习,用AT89C52设计了一个自行车里程/速度计。本设计可轮流显 示自行车行使的里程和速度,采用TC4024芯片作为计数器以及2C401存储数据, 3个单级共阴数码管作为显示系统。本系统具有超速信响提醒功能,里程数据自动 记忆,也可应用于电动自行车、摩托车、汽车等机动车仪表上。2 AT89C52单片机2.1 AT89C52单片机简介本设计选用AT89C52单片机,AT89C52是一种低功耗、高性能 CMOS 8位微 控制器。使用Atmel公司高密度非易失

5、性存储器技术制造,可与工业 AT89C51产 品指令和引脚完全兼容。2.2 AT89C52的管脚及其含义AT89C52的管脚及各管脚含义如下:各引脚功能说明:VCC电源电压;GND接地;P0 口 P0 口是一组8位漏极开路型双向I/O 口,也即地址/数据总线复用口。 作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口 P0写“1”时,可作为高阻抗输入端用;在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻;在FLASH编程时,P0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻;P1 口 P1

6、口是一个带内部上拉电阻的8位双向I/O 口,P1的输出缓冲级可驱动 (吸收或输出电流)4个TTL逻辑门电路。对端口写“ 1”,通过内部的上拉电阻 把端口拉到高电平,此时可作输出口。作输入口使用时,因为内部存在上拉电阻, 某个引脚被外部信号拉低时会输出一个电流;与AT89C51不同之处是,P1.0和P1.1还可分别作为定时/计数器2的外部计数输 入( P1.0/T2)和输入(P1.1/T2EX);FLASH编程和程序校验期间,P1接收低8位地址;P1.0和P1.1的第二功能:P1.0 T2 (定时/计数器2外部计数脉冲输入),时钟输出 ;P1.1 T2EX (定时/计数2捕获/重装载触发和方向控

7、制);P2 口 P2是一个带内部上拉电阻的8位双向I/O 口,P2的输出缓冲级可驱动(吸 收或输出电流)4个TTL逻辑门电路。对端口 P2写“ 1”,通过内部的上拉电阻 把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻, 某个引脚被外部信号拉低时会输出一个电流;在访问外部程序存储器或16位地址的外部数据存储器时,P2 口送出高8位地址数 据。在访问8位地址的外部数据存储器时,P2 口输出P2锁存器的内容;FLASH编程或校验时,P2亦接收高位地址和一些控制信号;P3 口 P3 口是一组带有内部上拉电阻的 8位双向I/O 口。P3 口输出缓冲级可 驱动(吸收或输出电流)4个

8、TTL逻辑门电路。对P3 口写入“ 1”时,它们被内 部上拉电阻拉高并可作为输入端口。此时,被外部拉低的 P3 口将用上拉电阻输出 电流;P3 口除了作为一般的I/O 口线外,更重要的用途是它的第二功能:P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 INTO(夕卜中断0)P3.3 INT1(外中断 1)P3.4 TO(定时/计数器0)P3.5T1(定时/计数器1)P3.6 WR(外部数据存储器写选通)P3.7 RD(外部数据存储器读选通)此外,P3 口还接收一些用于FLASH闪存编程和程序校验的控制信号;RST复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电

9、平将是 单片机复位;ALE/ PROG当访问外部程存储器或数据存储器时,ALE (地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每 当访问外部数据存储器时将跳过一个 ALE脉冲;对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG);EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。3 TC4024本程序采用TC4024芯片,它是一个7位的计数器,计数器具有分频的作用,它包含有14个管脚,其7脚接地,14脚接+5V,1脚接AT89C52的INT0,即12 脚

10、,在系统中此芯片起到了二分频的作用。4 24C01芯片4.1 24C01 简介24C01是一个1K位串行 CMOS EEPROM,内部含有 128个8位字节,CATALYST的先进CMOS技术实际上减少了器件的功耗,24C01是一个8位字节 页写缓冲器,该器件通过l2C总线接口进行操作,即此芯片采用I2c协议进行读写 数据。有一个专门的写保护功能。24C01是I2C接口的,但标准51是不带I2C接口的,串口方式0是不行的,需 要用IO模拟,所以随便接两个IO都可以,而且都要接上拉电阻,大概几 K就行 了,因为不是总线方式,所以不能用 MOV指令,也不能用SBUF,要判断是否 为满,可以在程序里

11、设个变量。在这里要注意E2P芯片的寿命(一般是读写100万次,足够了)。存储数据的 时候,可以对操作数和存储的数据进行比较,不相等则存储,这样可以增加使用 寿命,比有些每隔1秒钟进行存储的会好多了。以下是 24C01的管脚图:18273545A1眩VSSVCC 昨SCLSB A图4.1管脚图表3.124C01的管脚描述管脚名称功能A0 A1、A2器件地址选择SDA串行数据/地址SCL串行时钟WP写保护VCC+1.8V6.0V工作电压VSS接地4.2 24C01的特性:24C01芯片具有以下特性:1. 与400KHZ的I2C总线兼容;2. +1.8-6.0 V工作电压范围;3. 低功耗CMOS技

12、术;4. 写保护功能:当 WP为高电平时进入写保护状态;5. 页写缓冲器;6. 自定时擦写周期;7. 1, 000,000编程擦除/周期;8. 可保存数据100年;9. 8 脚 DIP、SOIC、TSSOP封装;10温度范围:商业级、工业级和汽车级。5硬件电路的设计5.1 系统硬件电路自行车里程/速度计能自动显示自行车行驶的总里程数及行车速度,具有超速 信响提醒功能,里程数据自动记忆,也可应用于电动自行车、摩托车、汽车等机 动车仪表上。其硬件电路原理图如图 5.1。5.2系统的工作原理本设计能实时地将所测的速度与累计里程数显示出来,主要是将24C01传感器 输入到单片机的脉冲信号,将频率实时地

13、测量出来,然后通过单片机计算出速度 和里程,再将所得的数据存储到TC4024芯片中,通过AT89C52单片机计算出来的 速度和里程的数据,必须通过 BCD码的转换才能输出给数码管。最后由共阴数码 管显示所测速度与里程。自行车里程/速度计采用AT89C52单片机作控制,速度及里程传感器采用霍尔 元件,其电器原理图如图5.1所示。P0 口和P2 口用于七段LED显示器的段码及 扫描输出,在显示里程时,第三位小数点用17脚P3.7 口控制点亮。P1.0和P1.1口分别用于显示里程状态和速度状态。P1.2、 P1.3、P1.6和P1.7 口分别用于设置轮圈的大小。P3.0 口的开关用于确定显示的方式,

14、当开关闭合时,显示速度; 打开时显示里程。第12脚外中断0用于对轮子圈数的计数输入,轮子每转一圈, 霍尔传感器输出一个地电平脉冲。第13脚外中断1用于控制定时器T1的启停,当输入为0时关闭定时器。此控制信号是将轮子圈数的计数脉冲经二分频后形成(见图5.1),这样,每次定时器T1的开启时间刚好为转一圈的时间。 根据轮子的 周长就可以计算出自行车的速度。P1.4和P1.5 口用于EEPROM存储器24C01的 存取控制。11脚输出用于速度超速时的报警。6软件设计6.1系统内存的规划由于本系统处理功能较多,因而一部分内存单元用于特定的用处。其主要内存单元用处如下:50H: EEPROM器件寻址字节存

15、放单元;51H: EEPROM传送字节数存放单元;30H: EEPROM发送数据缓冲单元;40H: EEPROM读出数据存放单元;0A0H: EEPROM寻址字节字节写;0A1H: EEPROM寻址字节字节读;62 H: DPTR计数器扩展高8位;6C H:定时器T1计数器扩展高8位;6D H:定时器T1计数器扩展高816位;60 H、61 H、62 H:里程计数单元;68 H、69 H、6A H、6B H :存放自行车每圈时间数;70 H、71 H、72 H、73 H:显示BCD码数据存放用;11 H15 H :存放被除数;16 H19 H :存放除数。6.2系统的主要程序设计1. 初始化程

16、序在本系统初始化程序中,主要完成以下工作:将T1设为外部控制定时器方式;外中断0及外中断1设为边沿触发方式;将部分内存单元清零;设置轮子 周长值;开中断及定时器;将 EEPROM中的数据调入内存等。2. 轮圈设置出错处理程序P1.2、P1.3、P1.6、P1.7端口的开关用于设定轮子的周长,当没有设定时(至少让一个开关闭合),能从P3.1 口输出一个周期为0.5S的方波信号,用作发光管闪烁及信响器提醒。3. 主程序主程序根据P3.0的开关状态选择里程或速度显示,其流程图如图 6.2所示。图6.2 主程序流程图4. 里程计数程序(外中断0服务程序)外中断0服务程序用于对12脚输入的圈脉冲进行计数

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

18、换算成 Km/h单 位。最后放入70 73H,进行数据显示。7系统调试要完成一个产品的设计,有很多纷繁复杂的步骤和过程,其中最为重要和最为关键的就是系统调试。调试的步骤和方法有很多。本人也看过不少,在 这次系统调试的中调试的过程我充分的发挥了仿真器的作用。7.1 硬件调试硬件的焊接是一个比较繁琐的过程,繁琐的地方在于3个单联数码管的连接,线路较多,在焊接时要特别的细心,在焊接完成并烧入程序之后通电 发现数码管不亮,检查了好几遍,电路无焊没有错误,于是我就怀疑可能是 数码管的问题,拿去贝尔(学院的社团)测试没问题,数码管并没有烧坏。在插入芯片时要特别注意不能把芯片插反,否则就会把芯片烧掉;也要注意极性电容的方向,长的脚为正,短的为负,不能把负的接+5V,正的接地; 在焊接三极管时也要注意其三个管脚的排布,还有为保护三极管不被烧换, 所以3个三极管要各自接一个限流电阻(这里为 4.7 K)。7.2软件调试软件调试是调试的重点,同时也是出错最多的地方;在整个软件调试调试过 程中我采取先部分后整体的调试方法。在整个程序的编写调试过程中我首先调试的是数码管显示系统,为此我编写了以下一段程序用于数码管显示调试,要求数码管显示0、1、2。ORG0000HMAIN:MOVP2, #0 FFHMOVP0, 0C0HMOVP2, #0FEHACALLDELAY 1MOVP2, #0FF

温馨提示

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

评论

0/150

提交评论