定时器中断实验 编写程序使定时器0或者定时器1工作在方式1,定时500ms使两位数码管从00、01、02……98、99每间隔500ms加1显示。
編寫程序使定時(shí)器0或者定時(shí)器1工作在方式1,定時(shí)500ms使兩位數(shù)碼管從00、01、02……98、99每間隔500ms加1顯示。
程序:
#include <reg51.h>
#define uint unsigned int
#define uchar unsigned char
sbit a = P1^0;
sbit b = P1^1;
uchar code tube[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
void delayms(uint);
void display(uint);
uint num=0;
uchar cnt=0;
void display(uint num)
{
b=1;
P0=tube[num%10];
delayms(5);
P0=0XFF;
b=0;
a=1;
P0=tube[(num/10)%10];
delayms(5);
P0=0XFF;
a=0;
}
void jishu() interrupt 1
{
if(cnt==10)
{
cnt=0;
num++;
}
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
cnt++;
}
void delayms(uint xms)
{
uint i,j;
for(i=xms;i>0;i–)
for(j=110;j>0;j–);
}
void main()
{
}
視頻:
https://www.bilibili.com/video/BV1Qa4y1n7CU/
總結(jié)
以上是生活随笔為你收集整理的定时器中断实验 编写程序使定时器0或者定时器1工作在方式1,定时500ms使两位数码管从00、01、02……98、99每间隔500ms加1显示。的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php 如何单独刷新模板,反馈一个x-a
- 下一篇: ENSP综合配置 实例十二 实战