📄 ex4-9.c
字号:
#include <REGX51.H>
#define TIMER0_COUNT 0xEE11 /* 10000h-((12,000,000/(12*200))*/
code seven_seg[16]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,
0X90,0X88,0X83,0XC6,0XA1,0X86,0X8E};
code scan[4]={0X0E,0X0D,0X0B,0X07};
unsigned char counter[4]={0,0,0,0};
unsigned char timer0_tick,k=0;
extern char keyscan();
static void timer0_isr(void) interrupt TF0_VECTOR using 1
{
TR0=0;
TL0=(TIMER0_COUNT & 0x00FF);
TH0=(TIMER0_COUNT >> 8);
TR0=1;
// P1=seven_seg[counter[k]];
// P0=scan[k];
k++;
if(k==4) k=0;
timer0_tick++;
if (timer0_tick==200) timer0_tick=0;
}
static void timer0_initialize(void)
{
EA=0;
timer0_tick=0;
TR0=0;
TMOD &= 0XF0;
TMOD |=0x01;
TL0=(TIMER0_COUNT & 0x00FF);
TH0=(TIMER0_COUNT >> 8);
PT0=0;
ET0=1;
TR0=1;
EA=1;
}
void main (void)
{
unsigned char c=0;
char ch;
timer0_initialize();
while(1)
{
ch=keyscan();
P2&=ch;
}
/* do {
ch=gotkey();
for(c=3;c>0;c--)
counter[c]=counter[c-1];
counter[0]=ch;
} while(1); */
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -