📄 system.c
字号:
#include "system.h"
static data volatile uchar key=KEY_NONE;
static data volatile uchar pressed=0;
static data uchar timer;
uchar gettimer()
{
return timer;
}
void cleartimer()
{
timer = 0;
}
uchar readkey()
{
uchar tmpkey=KEY_NONE;
ET0 = 0;
if(pressed)
{
pressed = 0;
tmpkey = key;
key = KEY_NONE;
}
ET0 = 1;
return tmpkey;
}
void intx0() interrupt 0 {}
void intx1() interrupt 2 {}
void intt1() interrupt 3 {}
void ints() interrupt 4 {}
void intt0() interrupt 1
{
unsigned char i,tmpkey;
TH0 = 55535/256;
TL0 = 55535%256;
timer++;
if(pressed) return;
P0 = 0x1f;
tmpkey = P0 & 0x1f;
if(tmpkey == 0x1f && key != KEY_NONE)
{
pressed = 1;
return;
}
/**/
key = KEY_NONE;
for(i=0;i<5;i++)
{
if(!(tmpkey&0x01))
{
key = i+1;
break;
}
tmpkey >>= 1;
}
}
/*
void printtime()
{
uchar buf[20];
uchar second,minute,hour,date,month,year;
if(gettimer() > 50)
{
cleartimer();
second = readsecond();
minute = readminute();
hour = readhour();
date = readdate();
month = readmonth();
year = readyear();
sprintf(buf,"20%02bx/%02bx/%02bx %02bx:%02bx:%02bx",year,month,date,hour,minute,second);
printstring8 (0,0,27,buf);//
}
}
*/
void printtime()
{
uchar buf[20];
uchar second,minute,hour,date,month,year;
if(gettimer() > 50)
{
cleartimer();
second = readsecond();
minute = readminute();
hour = readhour();
date = readdate();
month = readmonth();
year = readyear();
sprintf(buf,"20%02bx-%02bx-%02bx",year,month,date);
printstring16(0,0,26,buf);//
sprintf(buf,"%02bx:%02bx:%02bx",hour,minute,second);
printstring16(0,2,28,buf);//
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -