基于89C51单片机的秒表设计.doc_第1页
基于89C51单片机的秒表设计.doc_第2页
基于89C51单片机的秒表设计.doc_第3页
基于89C51单片机的秒表设计.doc_第4页
基于89C51单片机的秒表设计.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

单片机原理与应用课程设计报告基于89C51单片机的秒表设计专业:学号:姓名:2015-12-25一、课题名称基于89C51单片机的秒表设计二、任务要求1、计时范围:059分59.59秒,整数四位数和小数两位数显示;2、计时精度10毫秒;3、复位按钮,计时器清零,并做好下次计时准备;4、可以对两个对象(A、B)计时,具有启/停控制;3、设开始、停止A、停止B、显示A、显示B、复位按钮。三、任务分析1、设计中包括硬件电路的设计和系统程序的设计。其硬件电路主要有主控制器,计时与显示电路和回零、启动和停表电路等。主控制器采用单片机89C52显示电路采用共阳极LED数码管显示计时时间。2、利用89C52单片机的定时器/计数器定时和记数的原理,使其能精确计时。3、P0口输出段码数据,P2.0-P2.4口作列扫描输出,P1.1、P3.2、P3.3、P2.5口接四个按钮开关,分别实现开始、暂停、清零和查看上次计时时间功能。4、利用中断系统使其能实现开始暂停的功能。四、设计方案1、硬件方案工作原理:计时采用定时器T0中断完成,定时溢出中断周期为1ms,当一处中断后向CPU发出溢出中断请求,每发出一次中断请求就对毫秒计数单元进行加一,达到10次就对十毫秒位进行加一,依次类推,直到99.99秒重新复位。再看按键的处理。这四个键可以采用中断的方法,也可以采用扫描的方法来识别。复位键和查看主要功能在于数值复位和查询上次计时时间,对于时间的要求不是很严格。而开始和停止键则是用于对时间的锁定,需要比较准确的控制。因此可以对复位和查看按键采取扫描的方式。而对开始和停止键采用外部中断的方式。设计中包括硬件电路的设计和系统程序的设计。其硬件电路主要有主控制器,显示电路和回零、启动、查看、计次电路等。主控制器采用单片机89C52,显示电路采用共阳极LED数码管显示计时时间,四个按键均采用触点式按键。程序流程图:2、 软件方案使用keil软件编程,protues软件仿真。五、具体实现1、硬件电路图及工作原理描述2、51单片机51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8031单片机,后来随着Flash rom技术的发展,8031单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片机,还是应用最广泛的一种。3、LED数码显示器本设计采用的是7SEG-MPX2-CC-BLUE型号双数码管,它是一种半导体发光器件,其基本单元是发光二极管。如下图所示:4、软件流程图及对应实现程序 实现程序#include#define uchar unsigned char#define uint unsigned intsbit P01=P01;sbit P00=P00;/延时void delay(uint z) uint x,y;for(x=z;x0;x-) for(y=110;y0;y-);void main() uint temp; uchar n; while(1) P0=0xff; P1=0xff; delay(100);/ 刚开始熄灭所有灯 /(1)依次单独点亮。 temp=0x01; /给初始值 for(n=0;n8); delay(100); temp=1; /(2)5个亮5个不亮循环4次。 for(n=0;n4;n+) P1=0x55; P00=0; P01=1; /第1,3,5,7,9,灯亮。 delay(100); P1=0xaa; P00=1; P01=0;/第2,4,6,8,10个灯不亮。 delay(100); /(3)两边各5个,轮流亮,循环4次。 for(n=0;n8;n+=2) P1=0xe0; P00=1; P01=1; /第1,2,3,4,5个灯亮。第6,7,8,9,10个灯不亮。 delay(100); P1=0x1f; P00=0; P01=0; /第1,2,3,4,5个灯亮。第6,7,8,9,10个灯不亮。 delay(100); /(4)灭三个亮两个,亮两个灭三个,循环四次。 for(n=0;n4;n+) P1=0xe7;P00=0;P01=0; /第1,2,3,6,7,8灯不亮。第4,5,9,10个灯亮。 delay(100); P1=0x18;P00=1;P01=1; /第1,2,3,6,7,8灯亮。第4,5,9,10不亮。 delay(100); 六、仿真、实验验证过程及硬件结果、现象1、对秒表设计进行分析,决定几组方案;2、在Pruteus软件中,画电路图,进行仿真、调试;3、对自己想要实现的秒表现象,在keil软件中进行编程,编译,并于Proteus联调。4、仿真电路图以及仿真结果如下图所示:仿真效果图1仿真效果图2七、总结(体会)通过这次的课程设计,让我学习到了很多知识以及认识到了很多问题。同时我意识到了一个很重要的问题,那就是课程设计之前的准备工作也是很重要的,包括提前预习设计的题目,上网和去图书馆查阅资料。我清楚的知道了,资料也是那么重要,否则在一个新颖的题目面

温馨提示

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

评论

0/150

提交评论