menumain.lis
来自「Atmega64单片机程序(完整工程)」· LIS 代码 · 共 69 行
LIS
69 行
.module MenuMain.C
.area text(rom, con, rel)
.even
0000 _MenuMainLoop::
0000 ; /******************************************************************************
0000 ; * MenuMain.C - 菜单主循环函数
0000 ; ******************************************************************************/
0000 ; #include "SYS_Config.h"
0000 ; #include "GUI.h"
0000 ; #include "Menu.H"
0000 ; #include "time.h"
0000 ;
0000 ; /*
0000 ; *****************************************************************************
0000 ; * MenuMainLoop - 菜单主循环
0000 ; * DESCRIPTION: -
0000 ; * Main函数调用该函数,本函数并不会返回
0000 ; * @Para void:
0000 ; * Return :
0000 ; *****************************************************************************
0000 ; */
0000 ; void MenuMainLoop(void)
0000 ; {
0000 ; DispMenuTop();
0000 0E940000 xcall _DispMenuTop
0004 14C0 xjmp L3
0006 L2:
0006 ; while(1)
0006 ; {
0006 ; if(CheckKey())
0006 0E940000 xcall _CheckKey
000A 0023 tst R16
000C 21F0 breq L5
000E ; {//检查菜单
000E ; GUI_Delay(50);//无有效按键输入的时候才执行
000E 02E3 ldi R16,50
0010 10E0 ldi R17,0
0012 0E940000 xcall _GUI_Delay
0016 ; }
0016 L5:
0016 ; if(!KeyFuncIndex)//待机界面代码,用来显示时钟
0016 20900000 lds R2,_KeyFuncIndex
001A 2220 tst R2
001C 41F4 brne L7
001E ; { //KeyFuncIndex为0时是待机界面
001E ; #if DATE_TIME_EN==1
001E ; GUI_Display_Time(20,30); //待机界面代码,用来显示时钟
001E 2EE1 ldi R18,30
0020 04E1 ldi R16,20
0022 0E940000 xcall _GUI_Display_Time
0026 ; GUI_Delay(50);
0026 02E3 ldi R16,50
0028 10E0 ldi R17,0
002A 0E940000 xcall _GUI_Delay
002E ; #endif
002E ; }
002E L7:
002E ; else
002E ; {
002E ;
002E ; }
002E L8:
002E L3:
002E EBCF xjmp L2
0030 X0:
0030 L1:
0030 .dbline 0 ; func end
0030 0895 ret
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?