⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wm_enablewindow.txt

📁 STM32F103ZET6+UCOSII+UCGUI源码
💻 TXT
字号:
; generated by ARM C/C++ Compiler with , RVCT4.0 [Build 524] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\wm_enablewindow.o --depend=.\Obj\wm_enablewindow.d --device=DARMSTM --apcs=interwork -O3 -I..\..\include -I..\..\..\FWLib\library\inc -I..\..\..\USBLib\library\inc -I..\..\Config -I..\..\GUI\Core -I..\..\GUI\Font -I..\..\GUI\ConvertColor -I..\..\GUI\AntiAlias -I..\..\GUI\ConvertMono -I..\..\GUI\JPEG -I..\..\GUI\MemDev -I..\..\GUI\MultiLayer -I..\..\GUI\Widget -I..\..\GUI\WM -IC:\Keil\ARM\INC\ST\STM32F10x ..\..\GUI\WM\WM_EnableWindow.c]
                          THUMB

                          AREA ||i.WM_DisableWindow||, CODE, READONLY, ALIGN=1

                  WM_DisableWindow PROC
;;;67     */
;;;68     void WM_DisableWindow(WM_HWIN hWin) {
000000  2100              MOVS     r1,#0
;;;69       WM_SetEnableState(hWin, 0);
000002  f7ffbffe          B.W      WM_SetEnableState
;;;70     }
;;;71     #else
                          ENDP


                          AREA ||i.WM_EnableWindow||, CODE, READONLY, ALIGN=1

                  WM_EnableWindow PROC
;;;59     */
;;;60     void WM_EnableWindow(WM_HWIN hWin) {
000000  2101              MOVS     r1,#1
;;;61       WM_SetEnableState(hWin, 1);
000002  f7ffbffe          B.W      WM_SetEnableState
;;;62     }
;;;63     
                          ENDP


                          AREA ||i.WM_SetEnableState||, CODE, READONLY, ALIGN=1

                  WM_SetEnableState PROC
;;;34     */
;;;35     void WM_SetEnableState(WM_HWIN hWin, int State) {
000000  b53e              PUSH     {r1-r5,lr}
000002  4605              MOV      r5,r0
000004  460c              MOV      r4,r1
;;;36       WM_Obj* pWin;
;;;37       U16 Status;
;;;38       WM_LOCK();
;;;39       pWin = WM_H2P(hWin);
000006  f7fffffe          BL       GUI_ALLOC_h2p
;;;40       Status = pWin->Status;
00000a  8b82              LDRH     r2,[r0,#0x1c]
;;;41       if (State) {
;;;42         Status &= ~WM_SF_DISABLED;
00000c  4611              MOV      r1,r2
00000e  b114              CBZ      r4,|L3.22|
000010  f0210110          BIC      r1,r1,#0x10
000014  e001              B        |L3.26|
                  |L3.22|
;;;43       } else {
;;;44         Status |=  WM_SF_DISABLED;
000016  f0410110          ORR      r1,r1,#0x10
                  |L3.26|
;;;45       }
;;;46       if (pWin->Status != Status) {
00001a  428a              CMP      r2,r1
00001c  d007              BEQ      |L3.46|
;;;47         WM_MESSAGE Msg;
;;;48         pWin->Status = Status;
00001e  8381              STRH     r1,[r0,#0x1c]
;;;49         Msg.MsgId  = WM_NOTIFY_ENABLE;
000020  2028              MOVS     r0,#0x28
;;;50         Msg.Data.v = State;
;;;51         WM_SendMessage(hWin, &Msg);
000022  9000              STR      r0,[sp,#0]
000024  4669              MOV      r1,sp
000026  9402              STR      r4,[sp,#8]
000028  4628              MOV      r0,r5
00002a  f7fffffe          BL       WM_SendMessage
                  |L3.46|
;;;52       }
;;;53       WM_UNLOCK();
;;;54     }
00002e  bd3e              POP      {r1-r5,pc}
;;;55     
                          ENDP

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -