KEY3(),KEY4()按鍵函數,是檢測頁面,KEY5().key6();按下時d_set()內寫,就寫入24C02,不按下就在change()讀; 但現在寫不進去,也讀不出來 ,向各位請教了,謝謝,我感覺問題出在主函數MAIN()這了.但就是查不出來
void main()
{
while(1)
{
if(bz_e) 判斷頁面
{
key5(); // 掃描按鍵
key6();
s_min = s_v; //十位 設置
s_sec = s_v; //個位設置
d_set();
}
else
{
change_p();
g=s_v;
dis_play(g);
for(i =2; i<0; i--)
{
dis_play(xss[i-1]);
}
}
}
}
void key3() //上翻頁面
{
if(S3==0)
{
delay(10);
if(S3==0)
{
delay(20);
if(!bz_e)
{
if(bz_p <2)
{
bz_p =8;
}
else
{
bz_p--;
}
}
}
}
}
void key4() 下翻頁面
{ if(S4==0)
{
delay(10);
if(S4==0)
{
delay(20);
if(!bz_e) //工件直徑選擇
{
if(bz_p >7)
{
bz_p =1;
}
else
{
bz_p++;
}
}
}
}
void change_p() // 讀出顯示
{
if(bz1==0)
{
if(bz_p == 1)
{
led_page2(0);
sdz[14]=Read24c02(0x10);
sdz[15]=Read24c02(0x12);
sdz[14]=a;
sdz[15]=c;
}
if(bz_p == 2)
{
led_page2(1);
sdz[16]=Read24c02(0x14);
sdz[17]=Read24c02(0x16);
sdz[16]=a;
sdz[17]=c;
}
if(bz_p == 3)
{
led_page2(2);
sdz[18]=Read24c02(0x18);
sdz[19]=Read24c02(0x20);
sdz[18]=sdz[31];
sdz[19]=sdz[32];
}
if(bz_p == 4)
{
led_page2(3);
sdz[20]=Read24c02(0x22);
sdz[21]=Read24c02(0x24);
sdz[20]=a;
sdz[21]=c;
}
if(bz_p == 5)
{
led_page2(4);
sdz[22]=Read24c02(0x26);
sdz[23]=Read24c02(0x28);
sdz[22]=sdz[31];
sdz[23]=sdz[32];
}
if(bz_p == 6)
{
led_page2(5);
sdz[24]=Read24c02(0x30);
sdz[25]=Read24c02(0x32);
sdz[24]=a;
sdz[25]=c;
}
if(bz_p == 7)
{
led_page2(6);
sdz[26]=Read24c02(0x34);
sdz[27]=Read24c02(0x36);
sdz[26]=a;
sdz[27]=c;
}
if(bz_p == 8)
{
led_page2(7);
sdz[28]=Read24c02(0x38);
sdz[29]=Read24c02(0x40);
sdz[28]=a;
sdz[29]=c;
}
}
}
void d_set() //按鍵按下就寫入
{
if(bz1==0)
{
if(bz_p==1)
{
led_page2(0);
s_min= sdz[14];
Write24c02(s_min,0x10);
s_sec= sdz[15];
Write24c02(s_sec,0x12);
}
if(bz_p==2)
{
led_page2(1);
s_min= sdz[16];
Write24c02(s_min,0x14);
s_sec= sdz[17];
Write24c02(s_sec,0x16);
}
if(bz_p==3)
{
led_page2(2);
s_min= sdz[18];
Write24c02(s_min,0x18);
s_sec= sdz[19];
Write24c02(s_sec,0x20);
}
if(bz_p==4)
{
led_page2(3);
s_min= sdz[20];
Write24c02(s_min,0x22);
s_sec= sdz[21];
Write24c02(s_sec,0x24);
}
if(bz_p==5)
{
led_page2(4);
s_min= sdz[22];
Write24c02(s_min,0x26);
s_sec= sdz[23];
Write24c02(s_sec,0x28);
}
if(bz_p==6)
{
led_page2(5);
s_min= sdz[24];
Write24c02(s_min,0x30);
s_sec= sdz[25];
Write24c02(s_sec,0x32);
}
if(bz_p==7)
{
led_page2(6);
s_min= sdz[26];
Write24c02(s_min,0x34);
s_sec= sdz[27];
Write24c02(s_sec,0x36);
}
if(bz_p==8)
{
led_page2(7);
s_min= sdz[28];
Write24c02(s_min,0x38);
s_sec= sdz[29];
Write24c02(s_sec,0x40);
}
}
}
void dis_play(int i) //顯示函數
{
if (i<99)
{
// sdz[31]=i%100/10;//十
// sdz[32]=i%10; //個
a=i/10;//十
c=i%10;
}
else
a=c=0xff;
xss[0]=get_code(c);
xss[1]=get_code(a);
return;
}
void key5()
{
if(S5==0)
{
delay(10);
if(S5==0)
{ delay(20);
if(s_v > 58)
{
s_v = 0;
}
else
{
s_v++;
}
}
}
}
/****按鍵6鍵*******/
void key6()
{
if(S6==0)
{
delay(10);
if(S6==0)
{ delay(20);
if(s_v < 1)
{
s_v = 59;
}
else
{
s_v--;
}
}
}
}
|