|
- #include <reg51.h>
- #include <intrins.h>
- #define unchar unsigned char
- #define unint unsigned int
- sbit LOAD=P1^2;
- sbit DIN=P1^0;
- sbit DCLK=P1^1;
- sbit DOUT=P3^3;
- void CH451_init()
- {P1=0x60;
- DIN=0;
- DCLK=1;
- DIN=1;
- LOAD=1;
- DOUT=1;
- _nop_();}
- //*****************************************************
- //輸出命令子程序
- //定義一無符號(hào)整型變量存儲(chǔ)12字節(jié)的命令字。
- void ch451_write(unint cmd)
- {
- unchar i;
- EX1=0; //禁止鍵盤中斷
-
- LOAD=0; //命令開始
- for(i=0;i<12;i++){ //送入12位數(shù)據(jù),低位在前
- DIN=cmd&1;
- DCLK=0;
- cmd>>=1;
- DCLK=1; //上升沿有效
- }
- LOAD=1; //加載數(shù)據(jù)
-
- }
- //*************************************************
- void delay_ms(unint ms)
- {unchar i;
- while(ms!=0)
- {for(i=1;i<=4;i++)
- {_nop_();
- _nop_();
- _nop_();
- _nop_();}}}
- void main(void)
- { unchar i;
- ch451_init(); //調(diào)用初始化
- ch451_write(0x401);
- ch451_write(0x580); //測試送入命令
- ch451_write(0x801);
- ch451_write(0x300);
- ch451_write(0x802);
- ch451_write(0x300);
- ch451_write(0x803);
- ch451_write(0x601);
- while(1);
-
-
-
- }
復(fù)制代碼
|
|