標(biāo)題: 12864引索法寫(xiě)多級(jí)菜單例子 51單片機(jī)程序 [打印本頁(yè)]

作者: 蘭小方    時(shí)間: 2016-12-7 15:25
標(biāo)題: 12864引索法寫(xiě)多級(jí)菜單例子 51單片機(jī)程序
這是一個(gè)12864菜單程序包 12864引索法寫(xiě)多級(jí)菜單,   為什么我的KIL4不能編程



源碼下載:
12864多級(jí)菜單例子 (1).zip (55.42 KB, 下載次數(shù): 249)


主程序:
  1. /***************************************************************************
  2. 原創(chuàng)重慶三峽學(xué)院創(chuàng)新實(shí)驗(yàn)室唐老鴨
  3. ***************************************************************************/
  4. #include <reg52.h>
  5. #include "fun.h"
  6. #include "lcd12864.h"
  7. #include "delay.h"
  8. #define uchar unsigned char
  9. sbit keydown=P0^0;
  10. sbit keyenter=P0^1;
  11. sbit keyup=P0^2;
  12. uchar func_index=0;
  13. void (*current_operation_index)();
  14. typedef struct
  15.    {
  16.         uchar current;
  17.         uchar up;//向上翻索引號(hào)
  18.         uchar down;//向下翻索引號(hào)
  19.         uchar enter;//確認(rèn)索引號(hào)
  20.         void (*current_operation)();
  21.         } key_table;
  22. key_table code table[30]=
  23. {
  24.         {0,3,1,4,(*fun1)},//第一層,顯示 【清華大學(xué)】、北京大學(xué)、重慶三峽學(xué)院 、返回
  25.         {1,0,2,8,(*fun2)},//第一層,顯示 清華大學(xué)、【北京大學(xué)】、重慶三峽學(xué)院 、返回
  26.         {2,1,3,12,(*fun3)},//第一層,顯示 清華大學(xué)、北京大學(xué)、【重慶三峽學(xué)院】 、返回                       
  27.         {3,2,0,25,(*fun4)},//第一層,顯示 清華大學(xué)、北京大學(xué)、重慶三峽學(xué)院 、【返回】
  28.         {4,7,5,16,(*fun5)},//第二層,清華大學(xué)層下顯示 【地點(diǎn)】、創(chuàng)建時(shí)間、簡(jiǎn)介、返回                                               
  29.         {5,4,6,17,(*fun6)},//第二層,清華大學(xué)層下顯示 地點(diǎn)、【創(chuàng)建時(shí)間】、簡(jiǎn)介、返回       
  30.         {6,5,7,18,(*fun7)}, //第二層,清華大學(xué)層下顯示 地點(diǎn)、創(chuàng)建時(shí)間、【簡(jiǎn)介】、返回                                                                       
  31.         {7,6,4,0,(*fun8)},//第二層,清華大學(xué)層下顯示 地點(diǎn)、創(chuàng)建時(shí)間、簡(jiǎn)介、【返回】       
  32.         {8,11,9,19,(*fun9)},//第二層,北京大學(xué)層下顯示 【歷史】、政治、簡(jiǎn)介、返回                                               
  33.         {9,8,10,20,(*fun10)},//第二層,北京大學(xué)層下顯示 歷史、【政治】、簡(jiǎn)介、返回       
  34.         {10,9,11,21,(*fun11)}, //第二層,北京大學(xué)層下顯示 歷史、政治、【簡(jiǎn)介】、返回                                                                       
  35.         {11,10,8,1,(*fun12)},//第二層,北京大學(xué)層下顯示 歷史、政治、簡(jiǎn)介、【返回】       
  36.         {12,15,13,22,(*fun13)},//第二層,重慶三峽學(xué)院層下顯示 【簡(jiǎn)介】、最佳院系、最佳實(shí)驗(yàn)室、返回                                               
  37.         {13,12,14,23,(*fun14)}, //第二層,重慶三峽學(xué)院層下顯示 簡(jiǎn)介、【最佳院系】、最佳實(shí)驗(yàn)室、返回                                                               
  38.         {14,13,15,24,(*fun15)}, //第二層,重慶三峽學(xué)院層下顯示 簡(jiǎn)介、最佳院系、【最佳實(shí)驗(yàn)室】、返回                                                               
  39.         {15,14,12,2,(*fun16)}, //第二層,重慶三峽學(xué)院層下顯示 簡(jiǎn)介、最佳院系、最佳實(shí)驗(yàn)室、【返回】   
  40.         {16,16,16,4,(*fun17)}, //第三層,清華大學(xué)地點(diǎn)層                                                               
  41.         {17,17,17,5,(*fun18)}, //第三層,清華大學(xué)創(chuàng)時(shí)間層                                                       
  42.         {18,18,18,6,(*fun19)}, //第三層,清華大學(xué)簡(jiǎn)介層
  43.         {19,19,19,8,(*fun20)}, //第三層,北京大學(xué)歷史層                                                               
  44.         {20,20,20,9,(*fun21)}, //第三層,北京大學(xué)政治層                                                       
  45.         {21,21,21,10,(*fun22)}, //第三層,北京大學(xué)簡(jiǎn)介層
  46.         {22,22,22,12,(*fun23)}, //第三層,重慶三峽學(xué)院簡(jiǎn)介層                                                               
  47.         {23,23,23,13,(*fun24)}, //第三層,重慶三峽學(xué)院最佳院系層                                                       
  48.         {24,24,24,14,(*fun25)}, //第三層,重慶三峽學(xué)院最佳實(shí)驗(yàn)室層       
  49.         {25,25,25,0,(*fun26)}, //第0層       
  50.                                                                        
  51. };
  52. void main()
  53. {  
  54.          init_lcd(); //初始化LCD模塊  
  55.    while(1)
  56.    {     
  57.         /*******************find index****************************/
  58.                         if((keyup==0)||(keydown==0)||(keyenter==0))
  59.                         {
  60.                                 delay(10);//消抖
  61.                                 if(keyup==0)
  62.                                 {
  63.                                 func_index=table[func_index].up;    //向上翻
  64.                                 while(!keyup);//松手檢測(cè)
  65.                                 }
  66.                                 if(keydown==0)
  67.                                 {
  68.                                 func_index=table[func_index].down;    //向下翻
  69.                                 while(!keydown);
  70.                                 }
  71.                                 if(keyenter==0)
  72.                                 {
  73.                                 func_index=table[func_index].enter;    //確認(rèn)
  74.                                 while(!keyenter);
  75.                                 }
  76.                           init_lcd();
  77.                          }                               
  78.                         current_operation_index=table[func_index].current_operation;
  79.                         (*current_operation_index)();//執(zhí)行當(dāng)前操作函數(shù)
  80.                 }
  81. }
復(fù)制代碼



作者: SURUBU1976    時(shí)間: 2022-3-6 18:30
我的KIL4能編程  .可能是你KIL4沒(méi)破解吧




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