定时计数器T0作定时应用技术(二)

定时计数器t0作定时应用技术(二)
1. 实验任务
用at89s51的定时/计数器t0产生2秒钟的定时,每当2秒定时到来时,更换指示灯闪烁,每个指示闪烁的频率为0.2秒,也就是说,开始l1指示灯以0.2秒的速率闪烁,当2秒定时到来之后,l2开始以0.2秒的速率闪烁,如此循环下去。0.2秒的闪烁速率也由定时/计数器t0来完成。
2. 电路原理图
图4.16.1
3. 系统板硬件连线
(1. 把“单片机系统”区域中的p1.0-p1.3用导线连接到“八路发光二极管指示模块”区域中的l1-l4上
4. 程序设计内容
(1. 由于采用中断方式来完成,因此,对于中断源必须它的中断入口地址,对于定时/计数器t0来说,中断入口地址为000bh,因此在中断入口地方加入长跳转指令来执行中断服务程序。书写汇编源程序格式如下所示:
org 00h
ljmp start
org 0bh ;定时/计数器t0中断入口地址
ljmp int_t0
start: nop ;主程序开始
.
.
int_t0: push acc ;定时/计数器t0中断服务程序
push psw
.
.
pop psw
pop acc
reti ;中断服务程序返回
end
(2. 定时2秒,采用16位定时50ms,共定时40次才可达到2秒,每50ms产生一中断,定时的40次数在中断服务程序中完成,同样0.2秒的定时,需要4次才可达到0.2秒。对于中断程序,在主程序中要对中断开中断。
(3. 由于每次2秒定时到时,l1-l4要交替闪烁。采用id来号来识别。当id=0时,l1在闪烁,当id=1时,l2在闪烁;当id=2时,l3在闪烁;当id=3时,l4在闪烁
5. 程序框图
t0中断服务程序框图
主程序框图
图4.16.2 
6. 汇编源程序
6. 汇编源程序
tcount2s equ 30h
tcnt02s equ 31h
id equ 32h
org 00h
ljmp start
org 0bh
ljmp int_t0
start: mov tcount2s,#00h
mov tcnt02s,#00h
mov id,#00h
mov tmod,#01h
mov th0,#(65536-50000) / 256
mov tl0,#(65536-50000) mod 256
setb tr0
setb et0
setb ea
sjmp $
int_t0: mov th0,#(65536-50000) / 256
mov tl0,#(65536-50000) mod 256
inc tcount2s
mov a,tcount2s
cjne a,#40,next
mov tcount2s,#00h
inc id
mov a,id
cjne a,#04h,next
mov id,#00h
next: inc tcnt02s
mov a,tcnt02s
cjne a,#4,done
mov tcnt02s,#00h
mov a,id
cjne a,#00h,sid1
cpl p1.0
sjmp done
sid1: cjne a,#01h,sid2
cpl p1.1
sjmp done
sid2: cjne a,#02h,sid3
cpl p1.2
sjmp done
sid3: cjne a,#03h,sid4
cpl p1.3
sid4: sjmp done
done: reti
end
7. c语言源程序
#include
unsigned char tcount2s;
unsigned char tcount02s;
unsigned char id;
void main(void)
{
tmod=0x01;
th0=(65536-50000)/256;
tl0=(65536-50000)%256;
tr0=1;
et0=1;
ea=1;
while(1);
}
void t0(void) interrupt 1 using 0
{
tcount2s++;
if(tcount2s==40)
{
tcount2s=0;
id++;
if(id==4)
{
id=0;
}
}
tcount02s++;
if(tcount02s==4)
{
tcount02s=0;
switch(id)
{
case 0:
p1_0=~p1_0;
break;
case 1:
p1_1=~p1_1;
break;
case 2:
p1_2=~p1_2;
break;
case 3:
p1_3=~p1_3;
break;
}
}
}

拒绝拖延,从Huawei Share一碰传开始
智能孔板流量计测量时不准确怎么办
无人机驾驶员合格证数量爆发性增长,相应政策顺势出台
科创板容百科技独立董事赵懿清介绍、履历信息
今日看点丨富士康被查 立讯精密、和硕有望迎转单; 科大讯飞:华为昇腾 910B 能力基本可对标英伟达 A100
定时计数器T0作定时应用技术(二)
RF MIMO解决方案的功耗设计与前端设计挑战分析
Electronica虎家展台Demo第三期 | 回环测试呈现Samtec产品组合卓越性能
放射在线监管系统提升医疗机构管理水平
Redmi K40系列细节揭晓:2月25日正式发布
麒麟980定了!余承东:将全球首发7nm手机SoC 性能遥遥领先845
新行业角色:云办公时代,中小微实体企业的数字化转型服务员
Dual Comparator Forms Temperat
什么是RAM和内存?
关于AI是教育未来驱动力的性能分析和介绍
iPhone7,再见吧!乔布斯或许真该消失了!
Xtool朗仁H6系列领跑汽车智能诊断新趋势
广汽集团表示石墨烯电池已经逐渐走向实车的量产测试
判断空气流量计坏了的标准是什么
诺基亚面向运营商5G部署正式推出了1830时延敏感分组交换机