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

📄 guival.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\guival.o --depend=.\Obj\guival.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\Core\GUIVal.c]
                          THUMB

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

                  GUI_DispDec PROC
;;;95     */
;;;96     void GUI_DispDec(I32 v, U8 Len) {
000000  2200              MOVS     r2,#0
;;;97       GUI_DispDecShift(v, Len,0);
000002  f7ffbffe          B.W      GUI_DispDecShift
;;;98     }
;;;99     
                          ENDP


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

                  GUI_DispDecAt PROC
;;;103    */
;;;104    void GUI_DispDecAt(I32 v, I16P x, I16P y, U8 Len) {
000000  b57f              PUSH     {r0-r6,lr}
000002  4615              MOV      r5,r2
000004  460c              MOV      r4,r1
;;;105    	char ac[12];
;;;106    	char* s = ac;
000006  aa01              ADD      r2,sp,#4
000008  4619              MOV      r1,r3                 ;104
;;;107      GUI_AddDecShift(v, Len, 0, &s);
00000a  9200              STR      r2,[sp,#0]
00000c  466b              MOV      r3,sp
00000e  2200              MOVS     r2,#0
000010  f7fffffe          BL       GUI_AddDecShift
;;;108      GUI_DispStringAt(ac, x, y);
000014  462a              MOV      r2,r5
000016  4621              MOV      r1,r4
000018  a801              ADD      r0,sp,#4
00001a  f7fffffe          BL       GUI_DispStringAt
;;;109    }
00001e  bd7f              POP      {r0-r6,pc}
;;;110    
                          ENDP


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

                  GUI_DispDecMin PROC
;;;56     */
;;;57     void GUI_DispDecMin(I32 v) {
000000  b51f              PUSH     {r0-r4,lr}
;;;58     	char ac[12];
;;;59     	char* s = ac;
000002  a901              ADD      r1,sp,#4
;;;60       GUI_AddDecMin(v, &s);
000004  9100              STR      r1,[sp,#0]
000006  4669              MOV      r1,sp
000008  f7fffffe          BL       GUI_AddDecMin
;;;61       GUI_DispString(ac);
00000c  a801              ADD      r0,sp,#4
00000e  f7fffffe          BL       GUI_DispString
;;;62     }
000012  bd1f              POP      {r0-r4,pc}
;;;63     
                          ENDP


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

                  GUI_DispDecShift PROC
;;;33     */
;;;34     void GUI_DispDecShift(I32 v, U8 Len, U8 Shift) {
000000  b51f              PUSH     {r0-r4,lr}
;;;35     	char ac[12];
;;;36     	char* s = ac;
000002  ab01              ADD      r3,sp,#4
;;;37       GUI_AddDecShift(v, Len, Shift, &s);
000004  9300              STR      r3,[sp,#0]
000006  466b              MOV      r3,sp
000008  f7fffffe          BL       GUI_AddDecShift
;;;38       GUI_DispString(ac);
00000c  a801              ADD      r0,sp,#4
00000e  f7fffffe          BL       GUI_DispString
;;;39     }
000012  bd1f              POP      {r0-r4,pc}
;;;40     
                          ENDP


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

                  GUI_DispDecSpace PROC
;;;67     */
;;;68     void GUI_DispDecSpace(I32 v, U8 MaxDigits) {
000000  b57f              PUSH     {r0-r6,lr}
000002  1e05              SUBS     r5,r0,#0
;;;69     	char ac[12];
;;;70     	char* s = ac;
000004  a801              ADD      r0,sp,#4
000006  460c              MOV      r4,r1                 ;68
;;;71       U8 Len;
;;;72       if (v < 0) {
000008  9000              STR      r0,[sp,#0]
00000a  da06              BGE      |L5.26|
;;;73         v = GUI_AddSign(v, &s);
00000c  4669              MOV      r1,sp
00000e  4628              MOV      r0,r5
000010  f7fffffe          BL       GUI_AddSign
;;;74         MaxDigits--;
000014  1e64              SUBS     r4,r4,#1
000016  4605              MOV      r5,r0                 ;73
000018  b2e4              UXTB     r4,r4
                  |L5.26|
;;;75       }
;;;76       Len = GUI_Long2Len(v);
00001a  4628              MOV      r0,r5
00001c  f7fffffe          BL       GUI_Long2Len
000020  b2c1              UXTB     r1,r0
;;;77       while (Len++ < MaxDigits) {
;;;78         *s++ = ' ';
000022  2020              MOVS     r0,#0x20
000024  e003              B        |L5.46|
                  |L5.38|
000026  9a00              LDR      r2,[sp,#0]
000028  f8020b01          STRB     r0,[r2],#1
00002c  9200              STR      r2,[sp,#0]
                  |L5.46|
00002e  460a              MOV      r2,r1                 ;77
000030  1c49              ADDS     r1,r1,#1              ;77
000032  b2c9              UXTB     r1,r1                 ;77
000034  42a2              CMP      r2,r4                 ;77
000036  d3f6              BCC      |L5.38|
;;;79       }
;;;80       GUI_AddDecMin(v, &s);
000038  4669              MOV      r1,sp
00003a  4628              MOV      r0,r5
00003c  f7fffffe          BL       GUI_AddDecMin
;;;81       GUI_DispString(ac);
000040  a801              ADD      r0,sp,#4
000042  f7fffffe          BL       GUI_DispString
;;;82     }
000046  bd7f              POP      {r0-r6,pc}
;;;83     
                          ENDP


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

                  GUI_DispSDec PROC
;;;87     */
;;;88     void GUI_DispSDec(I32 v, U8 Len) {
000000  2200              MOVS     r2,#0
;;;89       GUI_DispSDecShift(v,Len,0);
000002  f7ffbffe          B.W      GUI_DispSDecShift
;;;90     }
;;;91     
                          ENDP


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

                  GUI_DispSDecShift PROC
;;;44     */
;;;45     void GUI_DispSDecShift(I32 v, U8 Len, U8 Shift) {
000000  b57f              PUSH     {r0-r6,lr}
000002  460d              MOV      r5,r1
;;;46     	char ac[12];
;;;47     	char* s = ac;
000004  a901              ADD      r1,sp,#4
;;;48       v = GUI_AddSign(v, &s);
000006  9100              STR      r1,[sp,#0]
000008  4614              MOV      r4,r2                 ;45
00000a  4669              MOV      r1,sp
00000c  f7fffffe          BL       GUI_AddSign
;;;49       GUI_AddDecShift(v, --Len, Shift, &s);
000010  1e6d              SUBS     r5,r5,#1
000012  b2e9              UXTB     r1,r5
000014  466b              MOV      r3,sp
000016  4622              MOV      r2,r4
000018  f7fffffe          BL       GUI_AddDecShift
;;;50       GUI_DispString(ac);
00001c  a801              ADD      r0,sp,#4
00001e  f7fffffe          BL       GUI_DispString
;;;51     }
000022  bd7f              POP      {r0-r6,pc}
;;;52     
                          ENDP

⌨️ 快捷键说明

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