时钟综合实验.doc

时钟综合实验.doc

ID:51832977

大小:134.50 KB

页数:8页

时间:2020-03-16

时钟综合实验.doc_第1页
时钟综合实验.doc_第2页
时钟综合实验.doc_第3页
时钟综合实验.doc_第4页
时钟综合实验.doc_第5页
资源描述:

《时钟综合实验.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、单片机实验报告实验名称:时钟综合实验姓名:陈小燕学号:100401203班级:电信(2)时间:2012.12.28南京理工大学紫金学院电光系一、实验目的(四号+黑体)1、学习Proteus软件基础使用方法;2、掌握定时/计数器与外部中断工作原理;3、学习设计单片机控制的多位数码管扫描显示电路;4、理解数码管动态显示的原理。二、实验原理AT89C51单片机位控制器,四位7段数码管分别显示分的十位、分的个位、秒的十位和秒的个位,其中数码管的位选口为P2口高四位,段选口位P0口,分和秒的能动态显示。定时器实现1秒准确定

2、时,外部中断0引脚外接键盘BUTTON1,实现手动校分功能;外部中断1引脚外接键盘BUTTON2,实现清零功能。开始分钟加1定时器T1赋计数初值变量赋初值到60min了吗到1s了吗定时器T1赋计数初值设置外部中断控制字分钟清零秒加1到1min了吗结束设置外部中断模式N秒清零开中断外部中断1开计数器分钟清零分加1送位选字秒钟清零到60min了吗送段选码结束分清零延时结束(a)主流程图(b)定时中断流程图(c)外部中断流程一、实验内容1、时钟程序根据实验任务设计要求,在Keil软件中实现程序编辑、编译与执行等操作。对

3、编译通过的过程可选择单步调试的方式来观察运行的结果,以及各个寄存器的值如何变化。参考程序流程:主程序流程:开始→变量赋初值→定时器T1赋计数初值→设置外部中断控制字→开中断→开计数器→送位选字→送段选码→延时→送位选字,定时器T1中断流程:定时器T1赋计数初值→到1秒了吗?→Y秒加1orN结束→到1分钟了吗?→Y秒清零orN结束→分钟加1→到60分钟了吗?→Y分钟清零orN结束→结束,外部中断0流程:分钟加1→到60分钟了吗?→Y分钟清零orN结束→结束,外部中断1:分钟清零→秒清零→结束。#include

4、g51.h>unsignedcharmin,sec,hour,i;chardis[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};voiddelay(){intj=200;while(j--);}voidmain(){min=0;sec=0;hour=0;TMOD=0x10;TH1=(65536-50000)/256;TL1=(65536-50000)%256;IT0=1;PT1=0;PX0=1;PX1=1;EX0=1;EX1=1;ET1=1;EA=1;

5、TR1=1;while(1){P2=0x01;P0=dis[hour/10];delay();P2=0x02;P0=dis[hour%10];delay();P2=0x04;P0=0xbf;delay();P2=0x08;P0=dis[min/10];delay();P2=0x10;P0=dis[min%10];delay();P2=0x20;P0=0xbf;delay();P2=0x40;P0=dis[sec/10];delay();P2=0x80;P0=dis[sec%10];delay();}}voidt1

6、()interrupt3{TH1=(65536-50000)/256;TL1=(65536-50000)%256;i++;if(i==20){i=0;sec++;if(sec==60){sec=0;min++;if(min==60){min=0;hour++;if(hour==24){hour=0;}}}}}voidint0()interrupt0{min++;if(min==60){min=0;}}voidint1()interrupt2{hour=0;min=0;sec=0;}2、电路图思考题:1、(1)一个

7、数码管有八段:A,B,C,D,E,F,G,H,DP,即由八个发光二极管组成;因为发光二极管导通的方向是一定的(导通电压一般取为1.7V),这八个发光二极管的公共端有两种:可以分别接+5V(即为共阳极数码管)或接地(即为共阴极数码管);故可分共阳极(公共端接高电平或+5V电压)和共阴极(共低电平或接地)两种数码管(2)其中每个段均有0(不导通)和1(导通发光)两种状态,但共阳极数码管和共阴极数码管显然是不同的(3)它在程序中的应用是用一个八位二进制数表示,A为最低位,...,F为最高位(第八位)(4)共阳极:位选为

8、高电平(即1)选中数码管,各段选为低电平(即0接地时)选中各数码段,由0到f的编码为:ucharcodetable[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};共阴极:位选为低电平(即0)选中数码管,各段选为高电平(即1接+5V时)选中各数码段,uc

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。