標題: 單片機LCD12864無限擴展多級菜單源碼 [打印本頁]

作者: 何必刻意    時間: 2018-4-25 11:34
標題: 單片機LCD12864無限擴展多級菜單源碼
本人弄得 多級菜單 無限擴展

單片機源程序如下:
  1. #include "delay.h"
  2. #include "12864.h"
  3. #include "fun.h"
  4. #include "key.h"
  5. #include "wakeup.h"
  6. u8  func_index=0;

  7. void (*current_operation_index)(); //執(zhí)行當前顯示函數(shù)
  8. typedef struct
  9.    {
  10.         u8 current;        //當前狀態(tài)號
  11.         u8  up;//向上翻索引號
  12.         u8 down;//向下翻索引號
  13.         u8 enter;//確認索引號
  14.         u8 num_ent;//編碼器確認鍵
  15.         void (*current_operation)(); //要執(zhí)行的函數(shù)
  16.         } key_table;

  17.          key_table table[21]=
  18. {
  19.   {0,3,1,4,15,(*fun1)},//運行狀態(tài)
  20.          {1,0,2,6,1,(*fun2)}, //歷史記錄
  21.         {2,1,3,10,2,(*fun3)},//版本信息
  22.         {3,2,0,11,3,(*fun4)},//功能設(shè)置
  23.         {4,5,5,15,4,(*fun5)},//運行參數(shù)
  24.         {5,4,4,0,5,(*fun6)}, //運行時間
  25.          {6,9,7,0,1,(*fun7)},//故障記錄
  26.         {7,6,8,0,1,(*fun8)},//7天記錄
  27.         {8,7,9,0,1,(*fun9)},//今年記錄
  28.         {9,8,6,0,1,(*fun10)}, //往年記錄
  29.          {10,0,0,0,2,(*fun11)},//版本信息
  30.         {11,14,12,19,3,(*fun12)},//設(shè)置通訊地址
  31.         {12,11,13,0,3,(*fun13)},//設(shè)置語言
  32.         {13,12,14,0,3,(*fun14)}, //設(shè)置時間
  33.          {14,13,11,0,3,(*fun15)},//更多
  34.         {15,18,16,0,15,(*fun16)},//主畫面
  35.         {16,15,17,0,15,(*fun17)},//輸入數(shù)據(jù)
  36.         {17,16,18,0,15,(*fun18)}, //輸出數(shù)據(jù)
  37.          {18,17,15,0,15,(*fun19)},//功率參數(shù)
  38.         {19,17,15,0,11,(*fun20)},//通訊地址
  39. };
  40.         
  41.         int main(void)
  42. {
  43.         u8 num;
  44.         SystemInit();                //系統(tǒng)初始化
  45.         delay_init(72);             //延時初始化
  46.         LCD12864_InitPort(); //端口初始化
  47.         LCD12864_Init();         //液晶初始化
  48.   Key_Init();//按鍵初始化
  49.         
  50.         
  51. //  LCD12864_Pos(3,5);
  52.         LCD12684_Wdat(0x35);

  53.                 while(1)
  54.          {
  55.                  num=KEY_Scan();//得到鍵值
  56.                 if(num==3)

  57. //                {
  58. //                switch(num)
  59. //                        {
  60. //                                case 1:
  61. //                                func_index=table[func_index].up;  break;  //向上翻
  62. //                                case 2:
  63. //                                func_index=table[func_index].down; break;   //向下翻
  64. //                                case 3:
  65. //                                func_index=table[func_index].enter; break;   //確認
  66. //                                case 4:
  67. //                                func_index=table[func_index].num_ent; break;
  68. //                                }           
  69. //         LCD12864_Clr();    //clear all dots
  70. //                 }                                
  71. //                current_operation_index=table[func_index].current_operation;
  72. //                (*current_operation_index)();//執(zhí)行當前操作函數(shù)
  73. //   }
  74.         {
  75.                  delay_ms(500);
  76.                 Sys_Enter_Standby();
  77.         }
  78.          
  79. //         if(KEY_Scan()==1)
  80. //         {
  81. //                RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR,ENABLE);
  82. //                 
  83. //         
  84. //         
  85. //         
  86. //         
  87. //         }
  88.   }

  89. ……………………

  90. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

所有資料51hei提供下載:
DIS12864 - 副本.rar (289.68 KB, 下載次數(shù): 328)



作者: abrahamqw    時間: 2018-7-3 09:19
感謝分享!!!!!!!!
作者: letter256    時間: 2018-9-5 16:47
學習一下,共同進步
作者: yekai_yh    時間: 2018-9-8 08:57
全都注釋掉了,怎么用
作者: antyme    時間: 2018-9-13 23:07
學習一下
作者: complicatedRuby    時間: 2018-9-26 22:57
哥們最近在做lcd12864手持查詢快遞裝置能發(fā)給我這資料嗎?QQ郵箱3295773665@qq.com
作者: hilam    時間: 2019-7-26 14:14
程序編譯不能通過呀,好多錯誤
作者: hilam    時間: 2019-7-27 20:18
終于可以了,版本問題
作者: jxchen    時間: 2019-10-6 18:18
學習一下,共同進步
作者: ygflsa    時間: 2019-11-17 21:18
當前狀態(tài)號 是怎么被運用的.老是看不懂.
作者: 放下自在    時間: 2021-5-29 11:18
不算是一個成功的菜單程序。




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