- 1、本文档共17页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《基于单片机的
自行车里程表、测速仪》
单片机大作业
09电子2班
薛 强
学号:423
目 录
摘要
第一章 系统设计
1.1 设计任务和要求
1.1.1设计任务
1.1.2 基本要求
1.2 总体设计方案
1.2.1系统总体设计思路
1.2.2方案设计与讨论
1.3功能描述
1.4操作说明
1.5结构框图
1.6原理说明
第二章 硬件设计
2.1 硬件电路
2.2 主要元件介绍
第三章 软件设计
3.1 系统主程序流程图
3.2 仿真截图
3.3 源程序代码
基于80C51单片机的
自行车里程表、测速仪
摘 要:AT89C51作为系统控制核心,过单片机信号进行,关键词:;单片机;光电传感器系统设计
1.1 设计任务和要求1.1.1设计任务
设计1.1.2 基本要求
1.2 总体设计方案
1.2.1系统总体设计思路
本系统实现。总体设计思路如图1所示。系统包括控制器模块、信号检测模块、部分。
系统工作时,传感器信号,” 18” 20” 22” 24” 26” 28” 28.5” 厘米 40cm 45cm 50cm 55cm 61cm 66cm 71cm 72cm 【结构框图】
系统由霍尔元件传感器、显示模块、LED报警模块、供电模块和单片机小系统构。
【工作原理】
里程、速度等都是由霍尔元器件测量。通过频率计或者按钮输出脉冲,代表车轮转动圈数,已知自行车轮胎的周长为2.15m,轮子每转动一圈,安装在车轮辐条上的磁钢接近霍尔传感器一次,传感器送一个脉冲信号给单片机的外部中断计数器T1,产生一次中断,圈数加一。圈数*2.15即为车前进距离,而通过单片机T0定时器记录时间,间隔5秒,5秒内的前进距离除以时间5秒,得到5秒内的当前速度。而总里程L除以总时间t得到平均速度。
处理速度数据时同时刷新平均速度、当前速度、运行里程。
若速度大于25km/h(6.95m/s)则P3.7输出低电平,LED警示灯亮,提示速度过大。
单片机定时器0定时时间为50ms,每20次刷新系统时钟及计算累计行驶时间。
【具体电路图】
【相关元器件及其简介】
(1)AT89C51单片机简介
AT89C51是一种低功耗、高性能CMOS 8位微控制器,具有2K?在系统可编程Flash?存储器。使用Atmel?公司高密度非易失性存储器技术制造,与工业80C51?产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8?位CPU?和在系统可编程Flash,使得AT89C51为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
AT89C51具有以下标准功能:4k字节Flash,128字节RAM,32?位I/O?口线,看门狗定时器,2?个数据指针,2个16?位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89C51?可降至0Hz?静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
(2)1602LCD液晶显示模块
液晶显示模块具有体积小、功耗低、显示内容丰富等特点,现在字符型液晶显示模块已经是单片机应用设计中最常用的信息显示器件了。
本里程表使用常见的1602字符型LCD模块。1602可以显示2行16个字符,有8位数据总线D0-D7,和RS、R/W、E三个控制端口,工作电压为5V,并且带有字符对比度调节和背光。
(3)霍尔元件
霍尔传感器是利用霍尔效应把磁输入信号转换成电信号的器件。把开关型霍尔传感器安装在自行车贴近车轮的支架上,磁钢安装在辐条上,当磁钢靠近霍尔传感器的时候,传感器输出一个无抖动的低电平,单片机根据此信号可计算里程、速度等。霍尔传感器的优点是稳定和安装简易,缺点是成本较高。
附录 程序流程图及程序代码
主程序流程图:
中断服务子程序流程图:
仿真截图:
用频率计输入频率为5HZ的信号,得到速度10.75m/s
手动按钮,得到当前速度7.74m/s
全部运行结果(含超速报警)
全部运行结果(未超速,报警灯未亮)
程序代码:
#includereg52.h
#includeintrins.h //包含_nop_();函数定义的头文件
void timer0_int();
sbit LED=P3^7;
sbit E=P3^2; //1602使能引脚
sbit RW=P3^1; //1602读写引脚
sbit RS=P3^0; //1602数据/命令选择引脚
unsigned char hour,minute,second;
unsigned char n,co
您可能关注的文档
- 数据结构设计报告毕业设计(论文).doc
- 基于uC_COS的直流电机PID转速闭环调速控制系统Proteus...毕业设计(论文).doc
- 编译程序的设计与实现毕业设计(论文).doc
- 机械工程系设计论文指导书.doc
- 基于AT89S51单片机酒精浓度探测仪的设计与实现设计论文(论文)word格式.doc
- 高频信号源的原理与制作课程设计 模版毕业设计(论文).doc
- 简易数控直流稳压电源毕业设计(论文).doc
- 城市交通灯控制系统设计微机原理课程设计毕业设计(论文).doc
- 基于vc++企业工资管理系统论文设计论文(论文)word格式.doc
- AR基于LCD的电子时钟M7电子时钟嵌入式_课程设计报告毕业设计(论文).doc
文档评论(0)