标题:
LED数码码管轮显,按键中断延时去抖
[打印本页]
作者:
伟哥C51
时间:
2024-3-24 13:24
标题:
LED数码码管轮显,按键中断延时去抖
每天坚持码几行代码,日后必有收获
#include<STC89C5xRC.H>
#define uint unsigned int
#define uchar unsigned char
uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,
0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
void k6_0(uchar);
uint flag;
sbit k6=P3^2;
sbit led1=P1^0;
sbit led2=P1^1;
sbit ge=P2^3;
sbit shi=P2^2;
sbit bai=P2^1;
sbit qian=P2^0;
void main()
{
while(1)
{
ge=1;
P0=table[flag%10];//除十求余数
ge=0;
ge=1;
P0=table[flag%100/10];//除100余数求模
shi=0;
shi=1;
P0=table[flag%1000/100];//除1000余数求模
bai=0;
bai=1;
P0=table[flag/1000];//除1000求模
qian=0;
qian=1;
if(k6==0)
{
TMOD=0X01;
TH0=(65536-40000)/255;//16位计数模式,装载高8位
TL0=(65536-40000)%255;//转载低8位初值
EA=1;//全局中断使能
ET0=1;//定时器T0使能
TR0=1;//启动T0定时器中断
}
}
}
void t0rpt() interrupt 1
{
if(k6==1)
{
TR0=0;
flag++;
}
}
作者:
joyb
时间:
2024-3-24 18:10
每天坚持码几行代码,这个习惯好
作者:
sonique0371
时间:
2024-3-25 08:59
位选信号送完,要延时一下,不然数码管是不显示的。
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1