久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3120|回復: 1
打印 上一主題 下一主題
收起左側

STM32單片機LCD12864結構體菜單程序

  [復制鏈接]
跳轉到指定樓層
樓主
   12864結構體菜單


單片機源程序如下:
  1. #include "stm32f10x.h"
  2. #include"stm32f10x_conf.h"
  3. extern u8 stm[];  //外部定義nova logo
  4. extern u8 lan[],ya[],cai[],ji1[],zhong[],duan[];
  5. extern u8 qing[],dian[],zi[];
  6. u16        count=0;
  7. u8  func_index=0;
  8. u8  buffer[15]={'
  9. ,'N','O','V','A',0x00};        //發送buffer
  10. u8 BUFFER[8]={0};//接收buffer
  11. u8 bf_number;        //接收字節指示
  12. void (*current_operation_index)(); //執行當前顯示函數
  13. typedef struct
  14.    {
  15.         u8 current;        //當前狀態號
  16.         u8  up;//向上翻索引號
  17.         u8 down;//向下翻索引號
  18.         u8 enter;//確認索引號
  19.         u8 num_ent;//編碼器確認鍵
  20.         void (*current_operation)(); //要執行的函數
  21.         } key_table;

  22. key_table table[32]=
  23. {
  24.           {0,0,1,3,0,(*fun1)},
  25.          {1,0,2,7,1,(*fun2)}, //菜單元素列表
  26.         {2,1,2,11,2,(*fun3)},
  27.         {3,3,4,0,3,(*fun4)},
  28.         {4,3,5,0,4,(*fun5)},
  29.         {5,4,6,0,5,(*fun6)},
  30.          {6,5,6,0,6,(*fun7)},
  31.         {7,7,8,15,7,(*fun8)},
  32.         {8,7,9,19,8,(*fun9)},
  33.         {9,8,10,23,9,(*fun10)},
  34.         {10,9,10,1,10,(*fun11)},
  35.         {11,11,12,28,11,(*fun12)},
  36.         {12,11,13,31,12,(*fun13)},
  37.         {13,12,14,13,13,(*fun14)},
  38.         {14,13,14,2,14,(*fun15)},
  39.         {15,15,16,15,25,(*fun16)},
  40.         {16,15,17,16,25,(*fun17)},
  41.         {17,16,18,17,25,(*fun18)},
  42.         {18,17,18,7,18,(*fun19)},
  43.         {19,19,20,19,26,(*fun20)},
  44.         {20,19,21,20,26,(*fun21)},
  45.         {21,20,22,21,26,(*fun22)},
  46.         {22,21,22,8,22,(*fun23)},
  47.         {23,23,24,23,27,(*fun24)},
  48.         {24,23,24,9,24,(*fun25)},
  49.         {25,7,7,7,7,(*fun26)},
  50.         {26,8,8,8,8,(*fun27)},
  51.         {27,9,9,9,9,(*fun28)},
  52.         {28,28,29,30,28,(*fun29)},
  53.         {29,28,29,30,29,(*fun30)},
  54.         {30,11,11,11,11,(*fun31)},
  55.         {31,12,12,12,12,(*fun32)}
  56. };


  57.                           
  58. int main(void)
  59. {          u8 num;
  60.   //SystemInit();         //        初始系統時鐘,3.5版本庫在啟動文件里已經把時鐘初始為72MHZ ,不需要自己初始化了。
  61.   //LED_Init();        //led 初始化
  62.   key_Init();         //按鍵初始化
  63.   delay_init(36); //延時初始化
  64.   NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //中斷分組
  65.   SPI_GPIO_Config();        //SPI端口初始化
  66.   //EXTIX_Init();         //外部中斷初始化
  67.   spi_init();          // SPI初始化
  68.   usart_init();
  69.   /* config the led */
  70.   ENC_Init(); //定時器4編碼器模式初始化
  71. //Timerx_Init( 0,0);
  72. // WKUP_Init(); // 待機模式初始化 ,不注釋掉,得按WAKP來開機
  73.   delay_ms(5);
  74.   initial_lcd();//液晶初始化
  75.   clear_screen();    //clear all dots
  76.   Lcdwritecom(0xb0);   //設置頁地址
  77.   //GPIO_ResetBits(GPIOB,GPIO_Pin_1);

  78.   while(1)
  79.   {         
  80.   
  81.             blue_init();
  82.           // BL_PW_OFF ;  //高電平關斷藍牙模塊電壓
  83.           Lcdwritecom(0xaf);  /*開顯示*/
  84.           clear_screen();
  85.     delay_ms(20);
  86.     display_128x64(stm);
  87.           delay_ms(1000);
  88.           delay_ms(1000);
  89.                 delay_ms(1000);
  90.           delay_ms(1000);
  91.           clear_screen();    //clear all dots
  92.                 display_graphic_16x16(4,32,qing);
  93.           display_graphic_16x16(4,48,qing);
  94.           display_graphic_16x16(4,64,dian);
  95.           display_graphic_16x16(4,80,zi);
  96.                 delay_ms(1000);
  97.           delay_ms(1000);
  98.                 delay_ms(1000);
  99.           delay_ms(1000);
  100.                 clear_screen();    //clear all dots
  101.           display_graphic_16x16(4,80,zhong);
  102.           display_graphic_16x16(4,16,lan);
  103.           display_graphic_16x16(4,32,ya);
  104.           display_graphic_16x16(4,48,cai);
  105.           display_graphic_16x16(4,64,ji1);
  106.           display_graphic_16x16(4,80,zhong);
  107.           display_graphic_16x16(4,96,duan);
  108.           delay_ms(1000);
  109.                 delay_ms(1000);
  110.           clear_screen();    //clear all dots

  111.         while(1)
  112.          {
  113.                  num=KEY_Scan();//得到鍵值
  114.                 if(num)
  115.         
  116.                 {
  117.                 switch(num)
  118.                         {
  119.                                 case 1:

  120.                                 func_index=table[func_index].up;  break;  //向上翻
  121.                         
  122.                         case 2:
  123.                                 func_index=table[func_index].down; break;   //向下翻
  124.                
  125.                                 case 3:
  126.                         
  127.                                 func_index=table[func_index].enter; break;   //確認
  128.                                 case 4:

  129.                                 func_index=table[func_index].num_ent; break;
  130.         
  131.                         }           
  132.          clear_screen();    //clear all dots
  133.                  }                                
  134.                 current_operation_index=table[func_index].current_operation;
  135.                 (*current_operation_index)();//執行當前操作函數
  136.     }
  137.   }
  138. }
復制代碼

Keil代碼下載(僅供參考): 液晶菜單.7z (647.55 KB, 下載次數: 145)
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏10 分享淘帖 頂2 踩
回復

使用道具 舉報

沙發
ID:837690 發表于 2022-12-14 21:42 | 只看該作者
謝謝分享,正需要這個屏幕資料,在這個論壇真的能學到很多東西
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 91日b| 亚州综合一区 | 国产一区在线免费观看视频 | 在线播放国产一区二区三区 | 91精品国产综合久久精品图片 | 91精品国产91久久久久久最新 | 成人av免费在线观看 | 91久久精品一区二区二区 | 成人在线视频网址 | 99热国产精品 | 色综合色综合色综合 | 99热在线播放 | 日韩中文字幕一区 | 国产小视频在线观看 | 中文字幕第一页在线 | 91 久久 | 免费在线看a | 九九视频在线观看 | 四虎在线观看 | 亚洲成人精 | 欧美男人亚洲天堂 | 午夜精| 在线一区二区三区 | 午夜免费视频 | 久久久久久一区 | 伊人久操 | 久久久精选 | 九一精品| 精品一二 | 一区二区三区精品在线视频 | 国产日韩中文字幕 | 亚洲一区视频在线播放 | 午夜丰满少妇一级毛片 | 亚洲国产成人精品久久久国产成人一区 | 一级毛片在线播放 | 一区二区av | 亚洲性视频网站 | 国产精品久久av | 欧美日韩一区在线 | 国产成人精品高清久久 | 毛片视频免费 |