0099秒表设计说明书Word格式.docx
《0099秒表设计说明书Word格式.docx》由会员分享,可在线阅读,更多相关《0099秒表设计说明书Word格式.docx(8页珍藏版)》请在冰豆网上搜索。
![0099秒表设计说明书Word格式.docx](https://file1.bdocx.com/fileroot1/2022-11/28/ac28553e-130b-4ef1-9377-26d57b2d7cff/ac28553e-130b-4ef1-9377-26d57b2d7cff1.gif)
一、
设计的任务与要求
用AT89C51设计一个2位的LED数码显示作为“秒表”:
显示时间为00—99秒,每秒自动加1,另设计一个“开始”键和一个“复位”键。
按键说明:
按“开始”按键,开始计数,数码管显示从00开始每秒自动加一,再按“开始”键,停止计数;
按“复位”按键,系统清零,数码管显示00。
二、硬件电路设计
AT89C52是一个低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C52单片机在电子行业中有着广泛的应用。
AT89C52引脚图
主要功能特性:
1、兼容MCS51指令系统
2、8k可反复擦写(大于1000次)FlashROM;
3、32个双向I/O口;
4、256x8bit内部RAM;
5、3个16位可编程定时/计数器中断;
6、时钟频率0-24MHz;
7、2个串行中断,可编程UART串行通道;
8、2个外部中断源,共8个中断源;
9、2个读写中断口线,3级加密位;
10、低功耗空闲和掉电模式,软件设置睡眠和唤醒功能;
11、有PDIP、PQFP、TQFP及PLCC等几种封装形式,以适应不同产品的需求。
本设计利用AT89C52单片机的定时器/计时器定时和计数的原理,使其能精确计时。
设计中包括硬件电路的设计和系统程序的设计,其硬件电路主要有主控制器、计时与显示电路和复位电路等。
主控制器用AT89C52,显示电路采用共阴极LED数码管显示计时时间。
利用中断系统使其能实现开始暂停的功能。
P3.0,P3.1,RST开口接四个按钮,分别实现开始,暂停,复位的功能。
电路原理图设计最基本得要求是正确性,其次布局合理,最后在正确性和布局合理的前提下力求完美。
由于条件限制本系统采用软件模拟硬件系统,采用proteus软件进行模拟设计及调试工作。
图3七段数码管引脚图
三、软件设计流程
利用51单片机设计一个秒表,最大能显示99秒,具有启停、复位等功能,数码管显示!
1、确立总体设计方案;
2、系统整体框图设计;
3、各个单元电路设计与分析;
4、应用软件设计与调试;
5、系统仿真与调试;
6、分析结果,得出结论以及展望。
Proteus调试效果图
========================================================
#include<
reg52.h>
#defineucharunsignedchar//把unsignedchar宏定义为uchar
sbitP20=P2^0;
//定义p20为P2.0口
sbitP21=P2^1;
sbitKS=P2^5;
sbitKP=P2^6;
intge,shi;
ucharcodetab[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
//0-9定义
voiddelay_ms(unsignedintms)//1ms延时
{
uchara;
while(ms--)
for(a=123;
a>
0;
a--);
}
voidtointinit()//定时器T0初始化
TMOD=0x01;
//设置定时器T0工作方式为1
TH0=0x3c;
//50ms定时(M=65536,没50ms溢出一次,计算周期1us。
X=65536-50000=15536=3CB0H)
TL0=0xb0;
EA=1;
中断允许总控制为1
ET0=1;
允许定时器中断
voiddisplay()
P20=0;
P0=tab[ge];
delay_ms
(1);
P20=1;
P21=0;
P0=tab[shi];
P21=1;
voidTimer0Interrut(void)interrupt1//定时器T0中断方式1
uchartime;
time++;
if(time==20)//20*50ms=1s
time=0;
ge++;
voidmain()
tointinit();
while
(1)
display();
while(!
KS)
if(KS)
TR0=1;
KP)
if(KP)
TR0=0;
KC)
if(KC)
shi=0;
ge=0;
if(ge==10)
shi++;
if(shi==10)
===========================================================
六、收获体会
在设计过程中我深感自己在培养动手能力这方面还需很大的努力。
单片机课程设计不仅给我提供了一个很好的展现应用自己所掌握的知识的平台,又是检验自己所学知识的一次考核。
在设计的过程中我也不可避免的遇到了很多的问题。
尤其是在调试过程中,会因为某些原因出不来结果,但通过老师对我的帮助最后还是成功的完成了这次的设计。
经过过这次的系统设计,我也发现了不少自己不会的知识,通过查询各方面资料,我也进步了很多,也学会了很多上课时没掌握的东西,最后在调试结果出来后,我更是无比的兴奋,无比的自豪。
总之,通过这次电子课程设计,我对自己的知识有了更好的掌握和应用,这使我在以后的学习和生活中受用终身。
《单片机原理与应用》,黄友锐编著,合肥工业大学出版社
THANKS!
!
致力为企业和个人提供合同协议,策划案计划书,学习课件等等
打造全网一站式需求
欢迎您的下载,资料仅供参考