<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)c語(yǔ)言中菜單系統(tǒng)源碼分析

          單片機(jī)c語(yǔ)言中菜單系統(tǒng)源碼分析

          作者: 時(shí)間:2016-11-27 來(lái)源:網(wǎng)絡(luò) 收藏
          最近在學(xué)習(xí)單片機(jī)菜單系統(tǒng)時(shí),發(fā)現(xiàn)有這么一些代碼,定義了4個(gè)按鍵,確認(rèn)鍵,返回鍵,上鍵,下鍵,先貼出來(lái)在vc里邊建的,先定義一個(gè)結(jié)構(gòu)體KbdTabStruct,在用結(jié)構(gòu)體定義一個(gè)const型的數(shù)組KBD[],那么數(shù)組的每一個(gè)成員對(duì)應(yīng)的原本結(jié)構(gòu)體的數(shù)則是它的初始化值,并且這個(gè)值初始化后就成立,以后不再改變。比如說(shuō)KBD[0].KeyCurrentIndex所對(duì)應(yīng)的則是數(shù)組table中成員0 的值,這些值就是它的初始化值,相當(dāng)于KBD[0].KeyCurrentIndex=0,但如果這樣寫(xiě)N層的菜單,如此定義肯定麻煩,所以用這樣的數(shù)組實(shí)現(xiàn)。

          int main()
          {
          typedef struct
          {
          u8 KeyCurrentIndex;//當(dāng)前狀態(tài)索引號(hào)
          u8 KeyEnterState;//按下【enter】鍵時(shí)轉(zhuǎn)向的索引號(hào)
          u8 KeyCancelState;//按下【cancel】鍵時(shí)轉(zhuǎn)向的索引號(hào)
          u8 KeyUpState;//按下【up】鍵時(shí)轉(zhuǎn)向的索引號(hào)
          u8 KeyDownState;//按下【down】鍵時(shí)轉(zhuǎn)向的索引號(hào)
          void (*CurrentOperate)(); //當(dāng)前狀態(tài)下執(zhí)行的功能操作
          }KbdTabStruct;

          本文引用地址:http://www.ex-cimer.com/article/201611/322301.htm

          const KbdTabStruct KBD[]=
          {
          {0,1,2,3,4,(*main)},
          {6,7,8,9,10,(*main)},
          {0,1,2,3,4,,(*main)},
          {0,1,2,3,4,(*main)},
          };
          printf("%d",KBD[0].KeyCurrentIndex);
          printf("%d",KBD[0].KeyEnterState);
          printf("%d",KBD[0].KeyCancelState);
          printf("%d",KBD[0].KeyUpState);
          printf("%d",KBD[0].KeyDownState);
          printf("%d",KBD[1].KeyCurrentIndex);
          printf("%d",KBD[1].KeyEnterState);
          printf("%d",KBD[1].KeyCancelState);
          printf("%d",KBD[1].KeyUpState);
          printf("%d",KBD[1].KeyDownState);
          printf("%5s",KBD[0].CurrentOperate);

          }



          評(píng)論


          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();