#include"STC12C5620AD.H"
#include"TM1628.H"
#include"Delay.H"
sbit P22=P2^2; //按键
sbit P23=P2^3; //按键
sbit P30=P3^0; //按键
sbit P31=P3^1; //按键
sbit P21=P2^1; //蜂鸣器
bit SystemTime1Ms=0;
bit SystemTime15Ms=0;
unsigned int TimeCount = 0;
void InitTimer0(void)
{
TMOD = 0x01;
TH0 = 0xE8;
TL0 = 0x90;
EA = 1;
ET0 = 1;
TR0 = 1;
}
void Timer0() interrupt 1
{
TMOD = 0x01;
TH0 = 0xE8; //6MHZ晶振,1ms计数。
TL0 = 0x90;
// SystemTime1Ms=1;
// if(SystemTime1Ms)
// {
// SystemTime1Ms=0;
TimeCount++;
if(TimeCount>=15) //按键延时用,15毫秒
{
TimeCount=0;
SystemTime15Ms=1; //时标
}
}
void key_process(void)
{
if(SystemTime15Ms)
{
SystemTime15Ms=0;
if(P22 == 0)
{
TM1628_display(TAB_duan[1],TAB_duan[1],TAB_duan[1],TAB_duan[1]);
}
else if(P23 == 0)
{
TM1628_display(TAB_duan[1],TAB_duan[1],TAB_duan[1],TAB_duan[1]);
}
}
}
void main()
{
TM1628_init();
Delay(10);
TM1628_display(TAB_duan[1],TAB_duan[1],TAB_duan[1],TAB_duan[1]);
while(1)
{
key_process();
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>