内容正文:
外部中断调整时钟的仿真
更多模板请关注:https://haosc.taobao.com
CONTENTS
目录
01
02
外部中断调整时钟电路设计
外部中断调整时钟程序设计
道艺兼修
敬业乐群
外部中断调整始终电路设计
01
3
外部中断调整时钟程序设计
02
(3)程序设计流程图
主程序
开始
初始化
Y
秒==60?
定时器中断50次?
Y
N
Y
次数回0,秒++
分==60?
N
秒回0,分++
时==24?
Y
分回0,时++
N
时回0
N
4
外部中断程序设计
02
02
(3)程序设计流程图
TH、TL初始值
正常8位动态显示一次
中断入口
记录中断次数
返回
定时器1中断程序
标志位==1?
Y
N
需要闪烁显示?
N
Y
闪烁间隔长短控制变量+1
变量<30?
判断哪一位灭
送有一位灭的显示
Y
N
正常显示
显示间隔控制
5
外部中断程序设计
02
02
(3)程序设计流程图
中断入口
移位变量w+1
外部中断0程序
是移位按键?
Y
N
是调整按键?
Y
N
返回
w=7?
W=0
Y
N
w=0?
Y
qd=1
N
qd=0
返回
w=1?
时十位+1
Y
N
w=2?
Y
时十位控制
N
时个位+1
时十位控制
w=6?
Y
N
秒个位+1
时十位控制
。。。。。。
时间计算
6
外部中断程序设计
02
02
#include <reg51.h>
unsigned char code smg[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F, 0x77,0x7C,0x39,0x5E,0x79,0x71,0x40,0x00};
// 字型码:0-9,a-f, -, 全灭
unsigned char num[8]={0,0,16,0,0,16,0,0};//显示缓冲区
unsigned char w;// 闪烁控制位
unsigned char miao,fen,shi;//时间
unsigned char t,i;// t记录定时器中断次数,
bit qd=1;//时钟启停控制位
sbit wei =P3^0;//移位按键
sbit tiao=P3^1;//调整按键
(4)初始化定义
7
外部中断程序设计
02
02
(5)T1中断程序
8
外部中断程序设计
02
02
(5)T1中断程序
9
外部中断程序设计
02
02
(6)外部中断0服务程序
10
外部中断程序设计
02
02
(6)外部中断0服务程序
11
外部中断程序设计
02
02
(6)外部中断0服务程序
12
外部中断程序设计
02
02
(6)外部中断0服务程序
13
外部中断程序设计
02
02
(7)主程序
14
外部中断程序设计
02
02
(7)主程序
15
外部中断程序设计
02
02
16
谢谢观看!
Simple Gifts
Jewel
Lullaby
167584.05
胡祝兵
$$