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

📄 gui_errorout.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\gui_errorout.o --depend=.\Obj\gui_errorout.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\GUI_ErrorOut.c]
                          THUMB

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

                  GUI_ErrorOut PROC
;;;61     */
;;;62     void GUI_ErrorOut(const char *s) { GUI_X_ErrorOut(s); }
000000  f7ffbffe          B.W      GUI_X_ErrorOut
;;;63     
                          ENDP


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

                  GUI_ErrorOut1 PROC
;;;67     */
;;;68     void GUI_ErrorOut1(const char *s, int p0) {
000000  b530              PUSH     {r4,r5,lr}
000002  b091              SUB      sp,sp,#0x44
000004  4605              MOV      r5,r0
000006  460c              MOV      r4,r1
;;;69       char ac[MAXLEN + 10];
;;;70       char* sOut = ac;
000008  a802              ADD      r0,sp,#8
;;;71       GUI_MEMSET((U8*)ac, 0, sizeof(ac));
00000a  223c              MOVS     r2,#0x3c
00000c  2100              MOVS     r1,#0
00000e  9001              STR      r0,[sp,#4]
000010  f7fffffe          BL       GUI__memset
;;;72       _CopyString(ac, s, MAXLEN);
000014  2232              MOVS     r2,#0x32
000016  4629              MOV      r1,r5
000018  a802              ADD      r0,sp,#8
00001a  f7fffffe          BL       _CopyString
;;;73       sOut += strlen(sOut);
00001e  9801              LDR      r0,[sp,#4]
000020  f7fffffe          BL       strlen
000024  9901              LDR      r1,[sp,#4]
;;;74       GUI__AddSpaceHex(p0, 8, &sOut);
000026  aa01              ADD      r2,sp,#4
000028  4408              ADD      r0,r0,r1              ;73
00002a  9001              STR      r0,[sp,#4]
00002c  2108              MOVS     r1,#8
00002e  4620              MOV      r0,r4
000030  f7fffffe          BL       GUI__AddSpaceHex
000034  a802              ADD      r0,sp,#8
000036  f7fffffe          BL       GUI_X_ErrorOut
;;;75       GUI_ErrorOut(ac);
;;;76     }
00003a  b011              ADD      sp,sp,#0x44
00003c  bd30              POP      {r4,r5,pc}
;;;77     
                          ENDP


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

                  GUI_ErrorOut2 PROC
;;;81     */
;;;82     void GUI_ErrorOut2(const char *s, int p0, int p1) {
000000  b570              PUSH     {r4-r6,lr}
000002  b094              SUB      sp,sp,#0x50
000004  4606              MOV      r6,r0
000006  460c              MOV      r4,r1
000008  4615              MOV      r5,r2
;;;83       char ac[MAXLEN + 20];
;;;84       char* sOut = ac;
00000a  a802              ADD      r0,sp,#8
;;;85       GUI_MEMSET((U8*)ac, 0, sizeof(ac));
00000c  2246              MOVS     r2,#0x46
00000e  2100              MOVS     r1,#0
000010  9001              STR      r0,[sp,#4]
000012  f7fffffe          BL       GUI__memset
;;;86       _CopyString(ac, s, MAXLEN);
000016  2232              MOVS     r2,#0x32
000018  4631              MOV      r1,r6
00001a  a802              ADD      r0,sp,#8
00001c  f7fffffe          BL       _CopyString
;;;87       sOut += strlen(sOut);
000020  9801              LDR      r0,[sp,#4]
000022  f7fffffe          BL       strlen
000026  9901              LDR      r1,[sp,#4]
;;;88       GUI__AddSpaceHex(p0, 8, &sOut);
000028  aa01              ADD      r2,sp,#4
00002a  4408              ADD      r0,r0,r1              ;87
00002c  9001              STR      r0,[sp,#4]
00002e  2108              MOVS     r1,#8
000030  4620              MOV      r0,r4
000032  f7fffffe          BL       GUI__AddSpaceHex
;;;89       GUI__AddSpaceHex(p1, 8, &sOut);
000036  aa01              ADD      r2,sp,#4
000038  2108              MOVS     r1,#8
00003a  4628              MOV      r0,r5
00003c  f7fffffe          BL       GUI__AddSpaceHex
000040  a802              ADD      r0,sp,#8
000042  f7fffffe          BL       GUI_X_ErrorOut
;;;90       GUI_ErrorOut(ac);
;;;91     }
000046  b014              ADD      sp,sp,#0x50
000048  bd70              POP      {r4-r6,pc}
;;;92     
                          ENDP


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

                  GUI_ErrorOut3 PROC
;;;96     */
;;;97     void GUI_ErrorOut3(const char *s, int p0, int p1, int p2) {
000000  b5f0              PUSH     {r4-r7,lr}
000002  b095              SUB      sp,sp,#0x54
000004  4607              MOV      r7,r0
000006  460c              MOV      r4,r1
000008  4615              MOV      r5,r2
;;;98       char ac[MAXLEN + 30];
;;;99       char* sOut = ac;
00000a  a801              ADD      r0,sp,#4
00000c  461e              MOV      r6,r3                 ;97
;;;100      GUI_MEMSET((U8*)ac, 0, sizeof(ac));
00000e  2250              MOVS     r2,#0x50
000010  2100              MOVS     r1,#0
000012  9000              STR      r0,[sp,#0]
000014  f7fffffe          BL       GUI__memset
;;;101      _CopyString(ac, s, MAXLEN);
000018  2232              MOVS     r2,#0x32
00001a  4639              MOV      r1,r7
00001c  a801              ADD      r0,sp,#4
00001e  f7fffffe          BL       _CopyString
;;;102      sOut += strlen(sOut);
000022  9800              LDR      r0,[sp,#0]
000024  f7fffffe          BL       strlen
000028  9900              LDR      r1,[sp,#0]
;;;103      GUI__AddSpaceHex(p0, 8, &sOut);
00002a  466a              MOV      r2,sp
00002c  4408              ADD      r0,r0,r1              ;102
00002e  9000              STR      r0,[sp,#0]
000030  2108              MOVS     r1,#8
000032  4620              MOV      r0,r4
000034  f7fffffe          BL       GUI__AddSpaceHex
;;;104      GUI__AddSpaceHex(p1, 8, &sOut);
000038  466a              MOV      r2,sp
00003a  2108              MOVS     r1,#8
00003c  4628              MOV      r0,r5
00003e  f7fffffe          BL       GUI__AddSpaceHex
;;;105      GUI__AddSpaceHex(p2, 8, &sOut);
000042  466a              MOV      r2,sp
000044  2108              MOVS     r1,#8
000046  4630              MOV      r0,r6
000048  f7fffffe          BL       GUI__AddSpaceHex
00004c  a801              ADD      r0,sp,#4
00004e  f7fffffe          BL       GUI_X_ErrorOut
;;;106      GUI_ErrorOut(ac);
;;;107    }
000052  b015              ADD      sp,sp,#0x54
000054  bdf0              POP      {r4-r7,pc}
;;;108    
                          ENDP


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

                  GUI_ErrorOut4 PROC
;;;112    */
;;;113    void GUI_ErrorOut4(const char *s, int p0, int p1, int p2, int p3) {
000000  e92d41f0          PUSH     {r4-r8,lr}
000004  b098              SUB      sp,sp,#0x60
000006  4680              MOV      r8,r0
000008  460c              MOV      r4,r1
00000a  4615              MOV      r5,r2
00000c  461e              MOV      r6,r3
;;;114      char ac[MAXLEN + 40] = {0};
00000e  215c              MOVS     r1,#0x5c
000010  a801              ADD      r0,sp,#4
000012  9f1e              LDR      r7,[sp,#0x78]
000014  f7fffffe          BL       __aeabi_memclr4
;;;115      char* sOut = ac;
000018  a801              ADD      r0,sp,#4
;;;116      GUI_MEMSET((U8*)ac, 0, sizeof(ac));
00001a  225a              MOVS     r2,#0x5a
00001c  2100              MOVS     r1,#0
00001e  9000              STR      r0,[sp,#0]
000020  f7fffffe          BL       GUI__memset
;;;117      _CopyString(ac, s, MAXLEN);
000024  2232              MOVS     r2,#0x32
000026  4641              MOV      r1,r8
000028  a801              ADD      r0,sp,#4
00002a  f7fffffe          BL       _CopyString
;;;118      sOut += strlen(sOut);
00002e  9800              LDR      r0,[sp,#0]
000030  f7fffffe          BL       strlen
000034  9900              LDR      r1,[sp,#0]
;;;119      GUI__AddSpaceHex(p0, 8, &sOut);
000036  466a              MOV      r2,sp
000038  4408              ADD      r0,r0,r1              ;118
00003a  9000              STR      r0,[sp,#0]
00003c  2108              MOVS     r1,#8
00003e  4620              MOV      r0,r4
000040  f7fffffe          BL       GUI__AddSpaceHex
;;;120      GUI__AddSpaceHex(p1, 8, &sOut);
000044  466a              MOV      r2,sp
000046  2108              MOVS     r1,#8
000048  4628              MOV      r0,r5
00004a  f7fffffe          BL       GUI__AddSpaceHex
;;;121      GUI__AddSpaceHex(p2, 8, &sOut);
00004e  466a              MOV      r2,sp
000050  2108              MOVS     r1,#8
000052  4630              MOV      r0,r6
000054  f7fffffe          BL       GUI__AddSpaceHex
;;;122      GUI__AddSpaceHex(p3, 8, &sOut);
000058  466a              MOV      r2,sp
00005a  2108              MOVS     r1,#8
00005c  4638              MOV      r0,r7
00005e  f7fffffe          BL       GUI__AddSpaceHex
000062  a801              ADD      r0,sp,#4
000064  f7fffffe          BL       GUI_X_ErrorOut
;;;123      GUI_ErrorOut(ac);
;;;124    }
000068  b018              ADD      sp,sp,#0x60
00006a  e8bd81f0          POP      {r4-r8,pc}
;;;125    
                          ENDP


                          AREA ||i._CopyString||, CODE, READONLY, ALIGN=2

                  _CopyString PROC
;;;43     */
;;;44     static void _CopyString(char*d, const char*s, int MaxLen) {
000000  e004              B        |L6.12|
;;;45       while ((MaxLen > 0) && *s) {
;;;46         *d++ = *s++;
000002  bf00              NOP      
                  |L6.4|
000004  1c49              ADDS     r1,r1,#1
000006  f8003b01          STRB     r3,[r0],#1
;;;47         MaxLen--;
00000a  1e52              SUBS     r2,r2,#1
                  |L6.12|
00000c  2a00              CMP      r2,#0                 ;45
00000e  dd02              BLE      |L6.22|
000010  780b              LDRB     r3,[r1,#0]            ;45
000012  2b00              CMP      r3,#0                 ;45
000014  d1f6              BNE      |L6.4|
                  |L6.22|
;;;48       }
;;;49       *d = 0;
000016  2100              MOVS     r1,#0
000018  7001              STRB     r1,[r0,#0]
;;;50     }
00001a  4770              BX       lr
;;;51     
                          ENDP

⌨️ 快捷键说明

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