00-99秒表设计说明书(共9页)_第1页
00-99秒表设计说明书(共9页)_第2页
00-99秒表设计说明书(共9页)_第3页
00-99秒表设计说明书(共9页)_第4页
00-99秒表设计说明书(共9页)_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

1、精选优质文档-倾情为你奉上单片机课程设计说明书电子秒表的设计 目 录一、设计的任务与要求 二、硬件电路设计 三、软件设计流程四、设计调试过程五、源程序代码六、收获体会 七、参考文献一、 设计的任务与要求用AT89C51设计一个2位的LED数码显示作为“秒表”:显示时间为0099秒,每秒自动加1,另设计一个“开始”键和一个“复位”键。按键说明:按“开始”按键,开始计数,数码管显示从00开始每秒自动加一,再按“开始”键,停止计数;按“复位”按键,系统清零,数码管显示00。二、 硬件电路设计AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序

2、存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C52单片机在电子行业中有着广泛的应用。 AT89C52引脚图主要功能特性:1、兼容MCS51指令系统 2、8k可反复擦写(大于1000次)Flash ROM; 3、32个双向I/O口; 4、256x8bit内部RAM; 5、3个16位可编程定时/计数器中断; 6、时钟频率0-24MHz; 7、2个串行中断,可编程UART串行通道; 8、2个外部中断源,共8个中断源; 9、2个读写中断口线,3级加密位

3、; 10、低功耗空闲和掉电模式,软件设置睡眠和唤醒功能; 11、有PDIP、PQFP、TQFP及PLCC等几种封装形式,以适应不同产品的需求。本设计利用AT89C52单片机的定时器/计时器定时和计数的原理,使其能精确计时。设计中包括硬件电路的设计和系统程序的设计,其硬件电路主要有主控制器、计时与显示电路和复位电路等。主控制器用AT89C52,显示电路采用共阴极LED数码管显示计时时间。利用中断系统使其能实现开始暂停的功能。P3.0,P3.1,RST开口接四个按钮,分别实现开始,暂停,复位的功能。电路原理图设计最基本得要求是正确性,其次布局合理,最后在正确性和布局合理的前提下力求完美。由于条件限

4、制本系统采用软件模拟硬件系统,采用proteus软件进行模拟设计及调试工作。 图3 七段数码管引脚图三、 软件设计流程是否是否手动开关定时器溢出中断对定时器重新赋值进行加一操作后重新计算时间往P0口和P2口送显示时间数码管显示中断返回主函数对定时器/计数器初始化始化程序开始判断P04口是否有低电平信号开中断并启动定时器开始、暂停或者继续计数置零判断P07口是否有低电平信号四、设计调试过程利用51单片机设计一个秒表,最大能显示99秒,具有启停、复位等功能,数码管显示!1、确立总体设计方案;2、系统整体框图设计;3、各个单元电路设计与分析;4、应用软件设计与调试;5、系统仿真与调试;6、分析结果,

5、得出结论以及展望。 Proteus调试效果图五、源程序代码= #include<reg52.h>#define uchar unsigned char /把 unsigned char 宏定义为 uchar sbit P20=P20; /定义p20为P2.0口 sbit P21=P21; sbit KS=P25; sbit KP=P26; int ge,shi; uchar code tab=0x3F, 0x06,0x5B, 0x4F, 0x66,0x6D, 0x7D,0x07,0x7F, 0x6F; /0-9定义void delay_ms(unsigned int ms) /1m

6、s延时uchar a;while(ms-)for(a=123;a>0;a-); void tointinit() /定时器T0初始化 TMOD=0x01; /设置定时器T0工作方式为1 TH0=0x3c; /50ms定时(M=65536,没50ms溢出一次,计算周期1us。X=65536-50000=15536=3CB0H) TL0=0xb0; EA=1; 中断允许总控制为1 ET0=1; 允许定时器中断 void display() P20=0; P0=tabge; delay_ms(1); P20=1; P21=0; P0=tabshi; delay_ms(1); P21=1; vo

7、id Timer0Interrut(void) interrupt 1 /定时器T0中断 方式1 uchar time; TH0=0x3c; TL0=0xb0; time+; if(time=20) /20*50ms=1s time=0; ge+; void main() tointinit(); while(1) display(); while(!KS) display(); if(KS) TR0=1; while(!KP) display(); if(KP) TR0=0; while(!KC)display();if(KC)TR0=0;shi=0;ge=0;if(ge=10)ge=0;shi+;if(shi=10)shi=0; =六、收获体会 在设计过程中我深感自己在培养动手能力这方面还需很大的努力。单片机课程设计不仅给我提供了一个很好的展现应用自己所掌握的知识的平台,又是检验自己所学知识的一次考核。在设计的过程中我也不可避免的遇到了很多的问题。尤其是在调试过程中,会因为某些原因出不来结果,但通过老师对我的帮助最后还是成功的完成了这次的设计。经过过这次的系统设计,我也发现了不少自己不会的知识,通过查询各方面资料,我也进步了很多,也学会了很多上课时

温馨提示

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

评论

0/150

提交评论