?? c14489.c
字號:
//曰: 一個簡單的串口輸入5位LED驅動
#define db oe sb
#define Uchar unsigned char
sbit DATA=0x90; //定義P1.0為DATA IN
sbit CLK=0X91; //定義P1.1為CLOCK
sbit ENA=0x92; //定義P1.2為ENABLE
void DSPCMD(Uchar CMD){ //單字節命令函數寫入14489內部設置寄存器
Uchar i;
ENA=0;
for(i=8;i>=1;i--){ //使能14489
DATA=CMD&0x80; //寫入單字節命令
CMD=CMD<<1;
CLK=0;
CLK=1;
}
ENA=1; //禁止14489
}
void DSPDATA(Uchar DSCMD,Uchar DSDATA1,Uchar DSDATA2){
Uchar i,j; //多字節命令函數,寫入14489顯示寄存器
i=0;
ENA=0; //使能14489
while(i<24){ //寫入3字節顯示數據
if(i<8){DSP=DSCMD;}
else if(i<16) {DSP=DSDATA1;}
else{DSP=DSDATA2;}
for(i=8;i>=1;i--){
DATA=DSP&0x80;
DSP=DSP<<1;
CLK=0;
CLK=1;
}
i=i+8;
}
ENA=1;
}
void main(){
DSPCMD(0x01); // 單字節命令,點亮所有LED
DSPDATA(0x85,0x43,0x21); //在5位LED上分別顯示54321,滿亮度顯示,
DSPDATA(0x01,0x23,0x45); //在5位LED上顯示12345,半亮度顯示
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -