|
這樣寫的 大循環(huán)掃描按鍵程序,一直掃描不到,問下這個(gè)怎么改, 我按鍵4個(gè)功能 一個(gè)功能鍵一個(gè)加減鍵還有一個(gè)返回鍵 一直檢測(cè)不到,上電時(shí)間在走,就是檢測(cè)不到按鍵掃描,。
大家給個(gè)建議,
void main()
{
down_init(); //自動(dòng)下載的頭文件剛開始調(diào)用這個(gè)函數(shù)就可自動(dòng)下載 不需要關(guān)掉開關(guān)
cmg88();
lcd_init(); //調(diào)用液晶屏初始化子函數(shù)
//ds1302_init(); //調(diào)用DS1302時(shí)鐘的初始化子函數(shù)
init(); //調(diào)用定時(shí)計(jì)數(shù)器的設(shè)置子函數(shù)
while(1) //無限循環(huán)下面的語句:
{
keyscan(); //調(diào)用鍵盤掃描子函數(shù)
}
}
void timer0() interrupt 1 //取得并顯示日歷和時(shí)間
{
TH0=(65536-45872)/256; //定時(shí)器T0的高四位=0
TL0=(65536-45872)%256;
//讀取溫度返回值。
flag=ReadTemperature();
//讀取秒時(shí)分周日月年七個(gè)數(shù)據(jù)
miao = BCD_Decimal(read_1302(0x81));
fen = BCD_Decimal(read_1302(0x83));
shi = BCD_Decimal(read_1302(0x85));
ri = BCD_Decimal(read_1302(0x87));
yue = BCD_Decimal(read_1302(0x89));
nian=BCD_Decimal(read_1302(0x8d));
week=BCD_Decimal(read_1302(0x8b));
//顯示溫度、秒、時(shí)、分?jǐn)?shù)據(jù):
writetemp(10,flag);//顯示溫度,從第二行第12個(gè)字符后開始顯示
write_sfm(0x47,miao);//秒,從第二行第8個(gè)字后開始顯示(調(diào)用時(shí)分秒顯示子函數(shù))
write_sfm(0x44,fen);//分,從第二行第5個(gè)字符后開始顯示
write_sfm(0x41,shi);//小時(shí),從第二行第2個(gè)字符后開始顯示
//顯示星
write_week(week);
//顯示日、月、年數(shù)據(jù):
write_nyr(0x09,ri);//日期,從第二行第9個(gè)字符后開始顯示
write_nyr(0x06,yue);//月份,從第二行第6個(gè)字符后開始顯示
write_nyr(0x03,nian);//年,從第二行第3個(gè)字符后開始顯示
}
|
|