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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2070|回復: 1
收起左側

一個占用內存極少的菜單系統的實現(搬磚) 附代碼

[復制鏈接]
ID:519108 發表于 2022-10-28 11:15 | 顯示全部樓層 |閱讀模式
感謝作者梁炎昌分享這份代碼
1. MenuSampleCode目錄是代碼  這份代碼我在我的硬件上測試過。
2.說明文檔是:一個占用內存極少的菜單系統的實現.pdf
3.menu.gif是一個演示 Simulation.exe是uCGUI上移植的演
4.目錄說明
MenuSampleCode\SI    Source Insight 3.5 的工程文件
MenuSampleCode\Menu.Uv2  Keil 的工程
MenuSampleCode\Src   源代碼
MenuSampleCode\Obj   目標文件
MenuSampleCode\Lst   列表文件
可以看MenuSampleCode\Lst\menu.m51最后編譯的結果:
代碼狀況:

Program Size: data=9.0 xdata=110 code=15731
creating hex file from ".\Obj\menu"...
".\Obj\menu" - 0 Error(s), 0 Warning(s).
這是打開動態條項生成功能時的結果。

Program Size: data=9.0 xdata=79 code=15155
creating hex file from ".\Obj\menu"...
".\Obj\menu" - 0 Error(s), 0 Warning(s).
這是關閉動態條項生成功能時的結果。

菜單深度均為4層深度。
25+4*3 = 37Byte 可見占用內存還是挺小的。
源文件說明
CPU.H        CPU相關定義
Main.C       主函數
Ks0108.C     LCD驅動
ASCII.c      8x8 8x16 英文字模
KeyScan.C    鍵盤掃描
MenuPara.C   菜單函數使用模版
MenuTop.C    頂層菜單和菜單核心代碼
MenuFSM.C    菜單核心和FSM代碼
MenuFunc.C   功能菜單和動態條項生成代碼
MenuLanguage.C   語言切換代碼
MenuMeasure.C    空例子
PIC.C            圖標
MenuMain.C       菜單主循環
KeyScan.H      
Ks0108.H     
Menu.H
Menu.C           main函數
Chinese.txt      用到的中文
Chinese.C        中文字模

Simulation.exe是uCGUI上移植的演示。
可以通過你的鍵盤控制菜單:
你的PC鍵盤的四個方向鍵:
向上鍵  :確定  
向下鍵  :ESC
向左鍵  :向左
向右鍵  :向右
默認語言是英文,你可以進入設置成中文。
PS:不提供這個的代碼。請不要問我要。其實Src的源代碼的效果也就是這個的運行效果。
包括動態條項生成功能。

一些界面的分析                                          
圖標層代碼實現分析                                               
條項層代碼實現分析                                                
菜單框架的代碼實現                                             
模版代碼講解                                                     
動態內容層菜單                                                
動態生成條項菜單內容                                          
數字快捷方式的實現                                               
菜單函數調用圖                                                  
問答FAQ                                                            
這個東西哪來的?                                                  
能在51這種低速CPU上跑不?                                       
我擔心我的CPU速度不夠快,能用這個菜單不?                        
這個菜單框架的內存耗損大不不大?                                   
怎么移植?                                                        
關于移植的建議                                                   
雜項                          
開機直接執行某些功能
如何實現中斷中使用LCD?
數字建快捷方式
關于多國語言切換:
關于內存耗損:
關于更多的改進:
關于快捷方式:
關于如何實現在線幫助提示
如何快速創建一個條項層菜單?
在FramBuffer型LCD上直接使用這份代碼                           
為什么公布這份代碼,使用的話需要授權什么的么?   
1.png
KeilUv2版本的代碼下載: 一個占用內存極少的菜單系統的實現.rar (1.61 MB, 下載次數: 69)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:507641 發表于 2022-11-12 10:32 | 顯示全部樓層
這個曾移植到TFT 還行,但想加個時鐘功能就不會了.有沒有弄過的朋友
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩手机视频 | 亚洲视频区 | 精品亚洲一区二区三区 | 欧美一级欧美一级在线播放 | 欧美一级欧美一级在线播放 | 国产精品美女久久久久aⅴ国产馆 | 一级毛片视频在线 | 日韩一区二区久久 | 污视频免费在线观看 | 在线视频 中文字幕 | 国产精品久久久久久久免费大片 | 日本特黄a级高清免费大片 特黄色一级毛片 | 国产精品精品视频一区二区三区 | 亚洲一区在线播放 | 国产日韩久久 | 老头搡老女人毛片视频在线看 | 亚洲成人一区二区 | 日韩成人免费中文字幕 | jⅰzz亚洲 | 亚洲综合区 | 午夜久久久 | 国产精品美女一区二区 | 国产精品一区二区电影 | 一二区视频| 在线免费观看毛片 | 国产乱精品一区二区三区 | 国产欧美日韩精品一区 | 99精品福利视频 | 日本高清aⅴ毛片免费 | 男人天堂色 | 亚洲国产成人精品久久久国产成人一区 | 亚洲第一av | 污片在线免费观看 | 中文久久 | 国产午夜av片| 一区二区三区在线免费观看视频 | 美女视频一区二区三区 | 国产乱码精品1区2区3区 | 欧美激情久久久 | 人人做人人澡人人爽欧美 | 久久精品电影 |