下面是我改的一個(gè)例子,可是下到片子中不行,希望大家?guī)兔?!下載之后,最高位燈都不亮的,新手大家?guī)蛶桶? #include
//如果使用鍵盤(pán)中斷請(qǐng)定義 #define USE_KEY 1 #define uchar unsigned char
//須主程序定義的參數(shù) sbit ch451_dclk=P1^7; //串行數(shù)據(jù)時(shí)鐘上升延激活 sbit ch451_din=P1^6 ; // 串行數(shù)據(jù)輸出,接CH451的數(shù)據(jù)輸入 sbit ch451_load=P1^5 ; //串行命令加載,上升延激活 sbit ch451_dout=P3^3 ; uchar ch451_key; //INT1,鍵盤(pán)中斷和鍵值數(shù)據(jù)輸入,接CH451的數(shù)據(jù)輸出 // 存放鍵盤(pán)中斷中讀取的鍵值
#include
//************************************************* //延時(shí)程序 void delay(){ //在12P下延時(shí)十毫秒 uchar i,j,k; for(i=0;i<10;i++) for(j=0;j<40;j++) for(k=0;k<120;k++); }
//************************************************ void main(){ uchar a,b,c,d; d=0; ch451_init(); //調(diào)用初始化 ch451_write(0x403); ch451_write(0x580); EA=1; if ( !T1 ); { //測(cè)試送入命令 ch451_write(CH451_DIG7|0X08); //最低顯示8 EA=1; ch451_key=0x0ff; while(1){ while(ch451_key==0xff); //等待中斷 a=ch451_key; d=a ; ch451_key=0x0ff; ch451_write(0x0302); //右移兩位 ch451_write(0x0302); a&=0x3f; //顯示十進(jìn)制數(shù)據(jù) b=a; a-=1; ch451_write(CH451_DIG7|a); b+=1; ch451_write(CH451_DIG6|b); delay(); c=ch451_read(); while(c==d) //測(cè)試按鍵是否釋放 { ch451_write(CH451_DIG7|b|0xf0); delay(); c=ch451_read(); } ch451_write(CH451_DIG0|b); } } }