問題:unsigned char code tab[],這個數(shù)組我該怎么理解?里面16進制轉換成什么進制的?
DUAN=tab[min/10];這里面min在上面定義了,但我又該怎么理解呢?
unsigned char code tab[]={0xa0,0xbb,0x62,0x2a,0x39,0x2c,0x24,0xba,0x20,0x28,0xff}; //數(shù)字0-9的編碼
unsigned char code tab_dian[]={0x80,0x9b,0x42,0x0a,0x19,0x0c,0x04,0x9a,0x00,0x08,0xdf}; //帶點的數(shù)字0-9的編碼
char min,sec; //定義計時分秒
uchar flag_set=0; //設置變量:0 正常 1 調分 2 調秒
單片機型號:STC89C51/52
部分代碼如下:
void display()
{
if(flag_set==0) //正常模式下
{
DUAN=tab[min/10]; //送入段碼
W0=0; //打開位地址
delay(1); //小延時
W0=1; //關閉位地址
DUAN=tab_dian[min%10]; //下同
W1=0;
delay(1);
W1=1;
DUAN=tab[sec/10];
W2=0;
delay(1);
W2=1;
DUAN=tab[sec%10];
W3=0;
delay(1);
W3=1;
} |