欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 單片機C語言按鍵連加連減不是1,如何處理? [打印本頁]

作者: zhth1979    時間: 2022-4-3 11:54
標(biāo)題: 單片機C語言按鍵連加連減不是1,如何處理?
比如我要加或減到1000,我每按下一次按鍵加5或減5,單片機C語言程序該如何修改?
  switch(key_scan(100))  //key_scan()按鍵判斷
                {
                        
                case 1:
                          switch(wnd)   //wnd為四個窗口中之一的加鍵顯示
                          {                                                
                                       
                        case 0:parm1 = IapRead(0x0400); parm1++;if(parm1>150) parm1=150; IapErase(0x0400);IapProgram(0x0400, parm1);break;        
                        case 1:parm2 = IapRead(0x0500); parm2++;if(parm2>150) parm2=150; IapErase(0x0500);IapProgram(0x0500, parm2);break;  
                        case 2:parm3 = IapRead(0x0600); parm3++;if(parm3>995) parm3=955; IapErase(0x0600);IapProgram(0x0600, parm3);break;      
                        case 3:parm4 = IapRead(0x0700); parm4++;if(parm4>250) parm4=250; IapErase(0x0700);IapProgram(0x0700, parm4);break;                                                            
                        }                                       
                        break;
   

作者: alunli    時間: 2022-4-3 15:39
最簡單的,就是 parm1++改成 parm1=parm1+5;
作者: zhth1979    時間: 2022-4-6 08:48
alunli 發(fā)表于 2022-4-3 15:39
最簡單的,就是 parm1++改成 parm1=parm1+5;

謝謝了,一開始也是這樣改的,不行才問,現(xiàn)在好了!
作者: bulzz    時間: 2022-4-6 09:54
可以通過按鍵時間來判斷嗎,原來1s加1.改成200ms加1的話行不行呢
作者: zhth1979    時間: 2022-4-7 11:35
本帖最后由 zhth1979 于 2022-4-7 11:39 編輯
zhth1979 發(fā)表于 2022-4-6 08:48
謝謝了,一開始也是這樣改的,不行才問,現(xiàn)在好了!

只有三位數(shù)碼管顯示,如果從0到1000為:parm1=parm1+5;(顯示兩位整數(shù)+一位小數(shù))。大于1000,parm1=parm1/10    (parm1縮小10,只顯示三位整數(shù),小數(shù)位去掉)這時parm1不加5加1,parm1++,parm1加到150時等于150.如何實現(xiàn)?
void key_Service()
{         
        switch(key_scan(170))
                {                        
                        case 1:
                                  switch(wnd)
                                  {                                                                                       
                                        case 0:T1Cnt=epxs_short; parm1 = Read_EEPROM_u16(0x0400);  parm1 = parm1+5; if(parm1>1000) {parm1=parm1/10;parm1++;} if (parm1>1500) parm1=1500;Save_EEPROM_u16(0x0400, parm1); break;     這樣改后大于1000時(只顯示三位整數(shù)時還是加5不是加1)   
作者: zhth1979    時間: 2022-4-8 08:22
zhth1979 發(fā)表于 2022-4-7 11:35
只有三位數(shù)碼管顯示,如果從0到1000為:parm1=parm1+5;(顯示兩位整數(shù)+一位小數(shù))。大于1000,parm1=parm ...

自己已經(jīng)搞定了,不需要回復(fù)了!




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1