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

📄 dashboard.txt

📁 STM32F103ZET6+UCOSII+UCGUI源码
💻 TXT
📖 第 1 页 / 共 5 页
字号:
00017c  9904              LDR      r1,[sp,#0x10]
00017e  f06ff06f          MVN      r0,#3
000182  eb00eb00          ADD      r0,r0,r1,ASR #1
000186  2800              CMP      r0,#0
000188  dc00              BGT      |L16.396|
00018a  2000              MOVS     r0,#0
                  |L16.396|
00018c  f7fff7ff          BL       __aeabi_i2f
000190  4659              MOV      r1,r11
000192  f7fff7ff          BL       __aeabi_fmul
000196  f04ff04f          MOV      r1,#0x40800000
00019a  f7fff7ff          BL       __aeabi_fadd
00019e  f7fff7ff          BL       __aeabi_f2iz
;;;6942         GUI_DispStringAt(acText, xt - w / 2 + 1, yt - h + 1);
0001a2  eba8eba8          SUB      r2,r8,r0
0001a6  eb09eb09          ADD      r0,r9,r9,LSR #31
0001aa  eba7eba7          SUB      r1,r7,r0,ASR #1
0001ae  1c52              ADDS     r2,r2,#1
0001b0  1c49              ADDS     r1,r1,#1
0001b2  4668              MOV      r0,sp
0001b4  f7fff7ff          BL       GUI_DispStringAt
;;;6943         Cnt += pObj->NumStep * _Pow10[pObj->NumExp];
0001b8  4a08              LDR      r2,|L16.476|
0001ba  6da1              LDR      r1,[r4,#0x58]
0001bc  6d20              LDR      r0,[r4,#0x50]
0001be  f852f852          LDR      r1,[r2,r1,LSL #2]
0001c2  1c6d              ADDS     r5,r5,#1              ;6933
0001c4  fb00fb00          MLA      r6,r0,r1,r6
                  |L16.456|
0001c8  f8d4f8d4          LDR      r8,[r4,#0x24]         ;6933
0001cc  45a8              CMP      r8,r5                 ;6933
0001ce  f73ff73f          BGT      |L16.162|
                  |L16.466|
;;;6944       }
;;;6945     }
;;;6946   }
0001d2  b005              ADD      sp,sp,#0x14
0001d4  e8bde8bd          POP      {r4-r11,pc}
;;;6947   
                          ENDP

                  |L16.472|
0001d8  00000000          DCD      GUI_Font6x8
                  |L16.476|
0001dc  00000000          DCD      ||.constdata||
                  |L16.480|
0001e0  544486e0
0001e4  400921fb          DCFD     0x400921fb544486e0 ; 3.1415926536000001
                  |L16.488|
0001e8  00000000
0001ec  40568000          DCFD     0x4056800000000000 ; 90
                  |L16.496|
0001f0  00000000
0001f4  40668000          DCFD     0x4066800000000000 ; 180

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

                  _DrawLine PROC
;;;6855   */
;;;6856   static void _DrawLine(const SCALE* pObj, int r1, int r2, float Angel) {
000000  e92de92d          PUSH     {r4-r12,lr}
000004  4606              MOV      r6,r0
000006  460f              MOV      r7,r1
000008  4690              MOV      r8,r2
00000a  4618              MOV      r0,r3
;;;6857     float co = cos(Angel / 180.) * FACTOR;
00000c  f7fff7ff          BL       __aeabi_f2d
000010  4604              MOV      r4,r0
000012  a031              ADR      r0,|L17.216|
000014  c80c              LDM      r0!,{r2,r3}
000016  4620              MOV      r0,r4
000018  f7fff7ff          BL       __aeabi_ddiv
00001c  4689              MOV      r9,r1
00001e  4605              MOV      r5,r0
000020  f7fff7ff          BL       ||cos||
000024  a42e              ADR      r4,|L17.224|
000026  e9d4e9d4          LDRD     r2,r3,[r4,#0]
00002a  f7fff7ff          BL       __aeabi_dmul
00002e  f7fff7ff          BL       __aeabi_d2f
000032  4682              MOV      r10,r0
000034  4628              MOV      r0,r5
000036  4649              MOV      r1,r9
;;;6858     float si = sin(Angel / 180.) * FACTOR;
000038  f7fff7ff          BL       ||sin||
00003c  cc0c              LDM      r4!,{r2,r3}
00003e  f7fff7ff          BL       __aeabi_dmul
000042  f7fff7ff          BL       __aeabi_d2f
000046  4681              MOV      r9,r0
;;;6859     int x0 = pObj->x0 * FACTOR - r1 * co;
000048  4638              MOV      r0,r7
00004a  f7fff7ff          BL       __aeabi_i2f
00004e  4605              MOV      r5,r0
000050  4651              MOV      r1,r10
000052  f7fff7ff          BL       __aeabi_fmul
000056  4604              MOV      r4,r0
000058  68b0              LDR      r0,[r6,#8]
00005a  f04ff04f          MOV      r11,#6
00005e  fb00fb00          MUL      r0,r0,r11
000062  f7fff7ff          BL       __aeabi_i2f
000066  4607              MOV      r7,r0
000068  4621              MOV      r1,r4
00006a  f7fff7ff          BL       __aeabi_fsub
00006e  f7fff7ff          BL       __aeabi_f2iz
000072  4604              MOV      r4,r0
;;;6860     int y0 = pObj->y0 * FACTOR - r1 * si;
000074  4649              MOV      r1,r9
000076  4628              MOV      r0,r5
000078  f7fff7ff          BL       __aeabi_fmul
00007c  4605              MOV      r5,r0
00007e  68f0              LDR      r0,[r6,#0xc]
000080  fb00fb00          MUL      r0,r0,r11
000084  f7fff7ff          BL       __aeabi_i2f
000088  4606              MOV      r6,r0
00008a  4629              MOV      r1,r5
00008c  f7fff7ff          BL       __aeabi_fsub
000090  f7fff7ff          BL       __aeabi_f2iz
000094  4605              MOV      r5,r0
;;;6861     int x1 = pObj->x0 * FACTOR - r2 * co;
000096  4640              MOV      r0,r8
000098  f7fff7ff          BL       __aeabi_i2f
00009c  4680              MOV      r8,r0
00009e  4651              MOV      r1,r10
0000a0  f7fff7ff          BL       __aeabi_fmul
0000a4  4601              MOV      r1,r0
0000a6  4638              MOV      r0,r7
0000a8  f7fff7ff          BL       __aeabi_fsub
0000ac  f7fff7ff          BL       __aeabi_f2iz
0000b0  4607              MOV      r7,r0
;;;6862     int y1 = pObj->y0 * FACTOR - r2 * si;
0000b2  4649              MOV      r1,r9
0000b4  4640              MOV      r0,r8
0000b6  f7fff7ff          BL       __aeabi_fmul
0000ba  4601              MOV      r1,r0
0000bc  4630              MOV      r0,r6
0000be  f7fff7ff          BL       __aeabi_fsub
0000c2  f7fff7ff          BL       __aeabi_f2iz
;;;6863     GUI_AA_DrawLine(x0, y0, x1, y1);
0000c6  4603              MOV      r3,r0
0000c8  463a              MOV      r2,r7
0000ca  4629              MOV      r1,r5
0000cc  4620              MOV      r0,r4
0000ce  e8bde8bd          POP      {r4-r12,lr}
0000d2  f7fff7ff          B.W      GUI_AA_DrawLine
;;;6864   }
;;;6865   
                          ENDP

0000d6  0000              DCW      0x0000
                  |L17.216|
0000d8  00000000
0000dc  40668000          DCFD     0x4066800000000000 ; 180
                  |L17.224|
0000e0  00000000
0000e4  40180000          DCFD     0x4018000000000000 ; 6

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

                  _DrawLines PROC
;;;6869   */
;;;6870   static void _DrawLines(const SCALE* pObj, int iEnd, int rStart, int rEnd) {
000000  e92de92d          PUSH     {r0-r11,lr}
000004  b081              SUB      sp,sp,#4
000006  4683              MOV      r11,r0
000008  460d              MOV      r5,r1
;;;6871     int i, ArcLen = _GetArcLen(pObj);
00000a  f7fff7ff          BL       _GetArcLen
;;;6872     float Angel;
;;;6873     GUI_SetColor(_CalcColor(&pObj->Color[0]));
00000e  9000              STR      r0,[sp,#0]
000010  f10bf10b          ADD      r0,r11,#0xa0
000014  f7fff7ff          BL       _CalcColor
000018  f7fff7ff          BL       GUI_SetColor
;;;6874     HIRES_ON();
00001c  f7fff7ff          BL       GUI_AA_EnableHiRes
;;;6875     for (i = 0; i <= iEnd; i++) {
000020  2400              MOVS     r4,#0
000022  a61e              ADR      r6,|L18.156|
000024  e032              B        |L18.140|
;;;6876       Angel = (i * ArcLen * PI) / _Max(iEnd, 1) + (pObj->ArcStart - 90.) * PI;
000026  bf00              NOP      
                  |L18.40|
000028  f8dbf8db          LDR      r0,[r11,#0x10]
00002c  f7fff7ff          BL       __aeabi_i2d
000030  4607              MOV      r7,r0
000032  a01c              ADR      r0,|L18.164|
000034  c80c              LDM      r0!,{r2,r3}
000036  4638              MOV      r0,r7
000038  f7fff7ff          BL       __aeabi_dsub
00003c  e9d6e9d6          LDRD     r2,r3,[r6,#0]
000040  f7fff7ff          BL       __aeabi_dmul
000044  4682              MOV      r10,r0
000046  460f              MOV      r7,r1
000048  4628              MOV      r0,r5
00004a  2d01              CMP      r5,#1
00004c  dc00              BGT      |L18.80|
00004e  2001              MOVS     r0,#1
                  |L18.80|
000050  f7fff7ff          BL       __aeabi_i2d
000054  4689              MOV      r9,r1
000056  9900              LDR      r1,[sp,#0]
000058  4680              MOV      r8,r0
00005a  fb04fb04          MUL      r0,r4,r1
00005e  f7fff7ff          BL       __aeabi_i2d
000062  e9d6e9d6          LDRD     r2,r3,[r6,#0]
000066  f7fff7ff          BL       __aeabi_dmul
00006a  464b              MOV      r3,r9
00006c  4642              MOV      r2,r8
00006e  f7fff7ff          BL       __aeabi_ddiv
000072  463b              MOV      r3,r7
000074  4652              MOV      r2,r10
000076  f7fff7ff          BL       __aeabi_dadd
00007a  f7fff7ff          BL       __aeabi_d2f
;;;6877       _DrawLine(pObj, rStart, rEnd, Angel);
00007e  e9dde9dd          LDRD     r1,r2,[sp,#0xc]
000082  4603              MOV      r3,r0                 ;6876
000084  4658              MOV      r0,r11
000086  f7fff7ff          BL       _DrawLine
00008a  1c64              ADDS     r4,r4,#1              ;6875
                  |L18.140|
00008c  42ac              CMP      r4,r5                 ;6875
00008e  ddcb              BLE      |L18.40|
;;;6878     }
;;;6879     HIRES_OFF();
000090  b005              ADD      sp,sp,#0x14
000092  e8bde8bd          POP      {r4-r11,lr}
000096  f7fff7ff          B.W      GUI_AA_DisableHiRes
;;;6880   }
;;;6881   
                          ENDP

00009a  0000              DCW      0x0000
                  |L18.156|
00009c  544486e0
0000a0  400921fb          DCFD     0x400921fb544486e0 ; 3.1415926536000001
                  |L18.164|
0000a4  00000000
0000a8  40568000          DCFD     0x4056800000000000 ; 90

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

                  _DrawArcs PROC
;;;6994   */
;;;6995   static void _DrawArcs(const SCALE* pObj) {
000000  e92de92d          PUSH     {r2-r8,lr}
000004  4604              MOV      r4,r0
;;;6996     int Start, End, r1, r2;
;;;6997     Start = (pObj->ArcStart < pObj->ArcEnd) ? 270 - pObj->ArcStart : 630 - pObj->ArcStart;
000006  6900              LDR      r0,[r0,#0x10]
000008  6961              LDR      r1,[r4,#0x14]
00000a  4288              CMP      r0,r1
00000c  da02              BGE      |L19.20|
00000e  f5c0f5c0          RSB      r5,r0,#0x10e
000012  e002              B        |L19.26|
                  |L19.20|
000014  f2a0f2a0          SUB      r0,r0,#0x276
000018  4245              RSBS     r5,r0,#0
                  |L19.26|
;;;6998     End   = 270 - pObj->ArcEnd;
00001a  f5c1f5c1          RSB      r6,r1,#0x10e
;;;6999     r1 = pObj->ArcRadius;
;;;7000     r2 = pObj->ArcRadius - pObj->ArcPos - pObj->ArcWidth;
00001e  69a7              LDR      r7,[r4,#0x18]
000020  6e60              LDR      r0,[r4,#0x64]
000022  6b61              LDR      r1,[r4,#0x34]
000024  1a38              SUBS     r0,r7,r0
000026  eba0eba0          SUB      r8,r0,r1
;;;7001     GUI_SetColor(_CalcColor(&pObj->Color[0]));
00002a  f104f104          ADD      r0,r4,#0xa0
00002e  f7fff7ff          BL       _CalcColor
000032  f7fff7ff          BL       GUI_SetColor
;;;7002     GUI_SetPenSize(pObj->PenSize3);
000036  6c60              LDR      r0,[r4,#0x44]
000038  b2c0              UXTB     r0,r0
00003a  f7fff7ff          BL       GUI_SetPenSize
;;;7003     if (pObj->Flags & (1 << (FLAG_SHOW_ARC+3))) {
00003e  f8b4f8b4          LDRH     r0,[r4,#0x70]
000042  0640              LSLS     r0,r0,#25
000044  d507              BPL      |L19.86|
;;;7004       GUI_AA_DrawArc(pObj->x0, pObj->y0, r1, r1, End, Start);
000046  e9cde9cd          STRD     r6,r5,[sp,#0]
00004a  e9d4e9d4          LDRD     r0,r1,[r4,#8]
00004e  463b              MOV      r3,r7
000050  463a              MOV      r2,r7
000052  f7fff7ff          BL       GUI_AA_DrawArc
                  |L19.86|
;;;7005     }
;;;7006     if (pObj->Flags & (1 << (FLAG_SHOW_ARC+4))) {
000056  f8b4f8b4          LDRH     r0,[r4,#0x70]
00005a  0600              LSLS     r0,r0,#24
00005c  d53b              BPL      |L19.214|
;;;7007       GUI_AA_DrawArc(pObj->x0, pObj->y0, r2, r2, End, Start);

⌨️ 快捷键说明

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