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

📄 aa_lines.txt

📁 STM32F103ZET6+UCOSII+UCGUI源码
💻 TXT
字号:
; generated by ARM/Thumb C/C++ Compiler with , RVCT3.1 [Build 934] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\aa_lines.o --depend=.\Obj\aa_lines.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 -D__MICROLIB ..\..\source\aa_lines.c]
                          THUMB

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

                  _DemoAntialiasing PROC
;;;29     */
;;;30     static void _DemoAntialiasing(void) {
000000  e92de92d          PUSH     {r4-r10,lr}
;;;31       int i, x1, x2, y1, y2;
;;;32       const GUI_FONT *font_old;
;;;33       y1 = 65;
000004  2541              MOVS     r5,#0x41
;;;34       y2 = 5;
000006  2605              MOVS     r6,#5
;;;35       /* Set drawing attributes */
;;;36       GUI_SetColor(GUI_WHITE);
000008  f06ff06f          MVN      r0,#0xff000000
00000c  f7fff7ff          BL       GUI_SetColor
;;;37       GUI_SetBkColor(GUI_BLACK);
000010  2000              MOVS     r0,#0
000012  f7fff7ff          BL       GUI_SetBkColor
;;;38       GUI_SetPenShape(GUI_PS_FLAT);
000016  2001              MOVS     r0,#1
000018  f7fff7ff          BL       GUI_SetPenShape
;;;39       GUI_Clear();
00001c  f7fff7ff          BL       GUI_Clear
;;;40       /* draw headline */
;;;41       font_old = GUI_SetFont(&GUI_Font24_ASCII);
000020  4856              LDR      r0,|L1.380|
000022  f7fff7ff          BL       GUI_SetFont
000026  4680              MOV      r8,r0
;;;42       GUI_SetTextAlign(GUI_TA_HCENTER);
000028  2002              MOVS     r0,#2
00002a  f7fff7ff          BL       GUI_SetTextAlign
;;;43       GUI_DispStringAt("AA_Lines - Sample", 160, 5);
00002e  2205              MOVS     r2,#5
000030  21a0              MOVS     r1,#0xa0
000032  a053              ADR      r0,|L1.384|
000034  f7fff7ff          BL       GUI_DispStringAt
;;;44       /* Draw lines without antialiased */
;;;45       GUI_Delay(1000);
000038  f44ff44f          MOV      r0,#0x3e8
00003c  f7fff7ff          BL       GUI_Delay
;;;46       GUI_SetFont(&GUI_Font8x16);
000040  4854              LDR      r0,|L1.404|
000042  f7fff7ff          BL       GUI_SetFont
;;;47       GUI_SetTextAlign(GUI_TA_LEFT);
000046  2000              MOVS     r0,#0
000048  f7fff7ff          BL       GUI_SetTextAlign
;;;48       GUI_DispStringAtCEOL("draw normal lines using", 5, 40);
00004c  2228              MOVS     r2,#0x28
00004e  2105              MOVS     r1,#5
000050  a051              ADR      r0,|L1.408|
000052  f7fff7ff          BL       GUI_DispStringAtCEOL
;;;49       GUI_DispStringAtCEOL("GUI_DrawLine", 5, 55);
000056  2237              MOVS     r2,#0x37
000058  2105              MOVS     r1,#5
00005a  a055              ADR      r0,|L1.432|
00005c  f7fff7ff          BL       GUI_DispStringAtCEOL
;;;50       GUI_Delay(2500);
000060  f640f640          MOV      r0,#0x9c4
000064  f7fff7ff          BL       GUI_Delay
;;;51       x1 = 20;
000068  2714              MOVS     r7,#0x14
;;;52       x2 = 100;
00006a  f04ff04f          MOV      r9,#0x64
;;;53       GUI_SetFont(font_old);
00006e  4640              MOV      r0,r8
000070  f7fff7ff          BL       GUI_SetFont
;;;54       GUI_DispStringHCenterAt("Normal", (x1 + x2) / 2, 30 + y1);
000074  213c              MOVS     r1,#0x3c
000076  225f              MOVS     r2,#0x5f
000078  a051              ADR      r0,|L1.448|
00007a  f7fff7ff          BL       GUI_DispStringHCenterAt
;;;55       for (i = 1; i < 8; i++) {
00007e  2401              MOVS     r4,#1
                  |L1.128|
;;;56         GUI_SetPenSize(i);
000080  b2e0              UXTB     r0,r4
000082  f7fff7ff          BL       GUI_SetPenSize
;;;57         GUI_DrawLine(x1, 40 + i * 15 + y1, x2, 40 + i * 15 + y1 + y2);
000086  ebc4ebc4          RSB      r0,r4,r4,LSL #4
00008a  1941              ADDS     r1,r0,r5
00008c  198b              ADDS     r3,r1,r6
00008e  3328              ADDS     r3,r3,#0x28
000090  3128              ADDS     r1,r1,#0x28
000092  464a              MOV      r2,r9
000094  4638              MOV      r0,r7
000096  f7fff7ff          BL       GUI_DrawLine
00009a  1c64              ADDS     r4,r4,#1              ;55
00009c  2c08              CMP      r4,#8                 ;55
00009e  dbef              BLT      |L1.128|
;;;58       }
;;;59       /* Draw lines with antialiasing quality factor 2 */
;;;60       GUI_Delay(3000);
0000a0  f640f640          MOV      r0,#0xbb8
0000a4  f7fff7ff          BL       GUI_Delay
;;;61       GUI_SetFont(&GUI_Font8x16);
0000a8  483a              LDR      r0,|L1.404|
0000aa  f7fff7ff          BL       GUI_SetFont
;;;62       GUI_DispStringAtCEOL("", 5, 40);
0000ae  2228              MOVS     r2,#0x28
0000b0  2105              MOVS     r1,#5
0000b2  a042              ADR      r0,|L1.444|
0000b4  f7fff7ff          BL       GUI_DispStringAtCEOL
;;;63       GUI_DispStringAtCEOL("", 5, 55);
0000b8  2237              MOVS     r2,#0x37
0000ba  2105              MOVS     r1,#5
0000bc  a03f              ADR      r0,|L1.444|
0000be  f7fff7ff          BL       GUI_DispStringAtCEOL
;;;64       GUI_Delay(200);
0000c2  20c8              MOVS     r0,#0xc8
0000c4  f7fff7ff          BL       GUI_Delay
;;;65       GUI_DispStringAtCEOL("draw antialiased lines using", 5, 40);
0000c8  2228              MOVS     r2,#0x28
0000ca  2105              MOVS     r1,#5
0000cc  a03e              ADR      r0,|L1.456|
0000ce  f7fff7ff          BL       GUI_DispStringAtCEOL
;;;66       GUI_DispStringAtCEOL("GUI_AA_DrawLine", 5, 55);
0000d2  2237              MOVS     r2,#0x37
0000d4  2105              MOVS     r1,#5
0000d6  a044              ADR      r0,|L1.488|
0000d8  f7fff7ff          BL       GUI_DispStringAtCEOL
;;;67       GUI_Delay(3500);
0000dc  f640f640          MOV      r0,#0xdac
0000e0  f7fff7ff          BL       GUI_Delay
;;;68       x1 = 120;
0000e4  2778              MOVS     r7,#0x78
;;;69       x2 = 200;
0000e6  f04ff04f          MOV      r9,#0xc8
;;;70       GUI_AA_SetFactor(2);
0000ea  2002              MOVS     r0,#2
0000ec  f7fff7ff          BL       GUI_AA_SetFactor
;;;71       GUI_SetFont(font_old);
0000f0  4640              MOV      r0,r8
0000f2  f7fff7ff          BL       GUI_SetFont
;;;72       GUI_DispStringHCenterAt("Antialiased\nusing factor 2", (x1 + x2) / 2, 30 + y1);
0000f6  f105f105          ADD      r2,r5,#0x1e
0000fa  21a0              MOVS     r1,#0xa0
0000fc  4692              MOV      r10,r2
0000fe  a03e              ADR      r0,|L1.504|
000100  f7fff7ff          BL       GUI_DispStringHCenterAt
;;;73       for (i = 1; i < 8; i++) {
000104  2401              MOVS     r4,#1
                  |L1.262|
;;;74         GUI_SetPenSize(i);
000106  b2e0              UXTB     r0,r4
000108  f7fff7ff          BL       GUI_SetPenSize
;;;75         GUI_AA_DrawLine(x1, 40 + i * 15 + y1, x2, 40 + i * 15 + y1 + y2);
00010c  ebc4ebc4          RSB      r0,r4,r4,LSL #4
000110  1941              ADDS     r1,r0,r5
000112  198b              ADDS     r3,r1,r6
000114  3328              ADDS     r3,r3,#0x28
000116  3128              ADDS     r1,r1,#0x28
000118  464a              MOV      r2,r9
00011a  4638              MOV      r0,r7
00011c  f7fff7ff          BL       GUI_AA_DrawLine
000120  1c64              ADDS     r4,r4,#1              ;73
000122  2c08              CMP      r4,#8                 ;73
000124  dbef              BLT      |L1.262|
;;;76       }
;;;77       /* Draw lines with antialiasing quality factor 6 */
;;;78       GUI_Delay(1500);
000126  f240f240          MOV      r0,#0x5dc
00012a  f7fff7ff          BL       GUI_Delay
;;;79       x1 = 220;
00012e  27dc              MOVS     r7,#0xdc
;;;80       x2 = 300;
000130  f44ff44f          MOV      r9,#0x12c
;;;81       GUI_AA_SetFactor(6);
000134  2006              MOVS     r0,#6
000136  f7fff7ff          BL       GUI_AA_SetFactor
;;;82       GUI_SetFont(font_old);
00013a  4640              MOV      r0,r8
00013c  f7fff7ff          BL       GUI_SetFont
;;;83       GUI_DispStringHCenterAt("Antialiased\nusing factor 6", (x1 + x2) / 2, 30 + y1);
000140  f44ff44f          MOV      r1,#0x104
000144  4652              MOV      r2,r10
000146  a033              ADR      r0,|L1.532|
000148  f7fff7ff          BL       GUI_DispStringHCenterAt
;;;84       for (i = 1; i < 8; i++) {
00014c  2401              MOVS     r4,#1
                  |L1.334|
;;;85         GUI_SetPenSize(i);
00014e  b2e0              UXTB     r0,r4
000150  f7fff7ff          BL       GUI_SetPenSize
;;;86         GUI_AA_DrawLine(x1, 40 + i * 15 + y1, x2, 40 + i * 15 + y1 + y2);
000154  ebc4ebc4          RSB      r0,r4,r4,LSL #4
000158  1941              ADDS     r1,r0,r5
00015a  198b              ADDS     r3,r1,r6
00015c  3328              ADDS     r3,r3,#0x28
00015e  3128              ADDS     r1,r1,#0x28
000160  464a              MOV      r2,r9
000162  4638              MOV      r0,r7
000164  f7fff7ff          BL       GUI_AA_DrawLine
000168  1c64              ADDS     r4,r4,#1              ;84
00016a  2c08              CMP      r4,#8                 ;84
00016c  dbef              BLT      |L1.334|
;;;87       }
;;;88       GUI_Delay(7500);
00016e  e8bde8bd          POP      {r4-r10,lr}
000172  f641f641          MOV      r0,#0x1d4c
000176  f7fff7ff          B.W      GUI_Delay
;;;89     }
;;;90     
                          ENDP

00017a  0000              DCW      0x0000
                  |L1.380|
00017c  00000000          DCD      GUI_Font24_ASCII
                  |L1.384|
000180  41415f4c          DCB      "AA_L"
000184  696e6573          DCB      "ines"
000188  202d2053          DCB      " - S"
00018c  616d706c          DCB      "ampl"
000190  65000000          DCB      "e\0\0\0"
                  |L1.404|
000194  00000000          DCD      GUI_Font8x16
                  |L1.408|
000198  64726177          DCB      "draw"
00019c  206e6f72          DCB      " nor"
0001a0  6d616c20          DCB      "mal "
0001a4  6c696e65          DCB      "line"
0001a8  73207573          DCB      "s us"
0001ac  696e6700          DCB      "ing\0"
                  |L1.432|
0001b0  4755495f          DCB      "GUI_"
0001b4  44726177          DCB      "Draw"
0001b8  4c696e65          DCB      "Line"
                  |L1.444|
0001bc  00000000          DCB      "\0\0\0\0"
                  |L1.448|
0001c0  4e6f726d          DCB      "Norm"
0001c4  616c0000          DCB      "al\0\0"
                  |L1.456|
0001c8  64726177          DCB      "draw"
0001cc  20616e74          DCB      " ant"
0001d0  69616c69          DCB      "iali"
0001d4  61736564          DCB      "ased"
0001d8  206c696e          DCB      " lin"
0001dc  65732075          DCB      "es u"
0001e0  73696e67          DCB      "sing"
0001e4  00000000          DCB      "\0\0\0\0"
                  |L1.488|
0001e8  4755495f          DCB      "GUI_"
0001ec  41415f44          DCB      "AA_D"
0001f0  7261774c          DCB      "rawL"
0001f4  696e6500          DCB      "ine\0"
                  |L1.504|
0001f8  416e7469          DCB      "Anti"
0001fc  616c6961          DCB      "alia"
000200  7365640a          DCB      "sed\n"
000204  7573696e          DCB      "usin"
000208  67206661          DCB      "g fa"
00020c  63746f72          DCB      "ctor"
000210  20320000          DCB      " 2\0\0"
                  |L1.532|
000214  416e7469          DCB      "Anti"
000218  616c6961          DCB      "alia"
00021c  7365640a          DCB      "sed\n"
000220  7573696e          DCB      "usin"
000224  67206661          DCB      "g fa"
000228  63746f72          DCB      "ctor"
00022c  20360000          DCB      " 6\0\0"

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

                  MainTask PROC
;;;99     
;;;100    void MainTask(void) {
000000  b510              PUSH     {r4,lr}
;;;101      GUI_Init();
000002  f7fff7ff          BL       GUI_Init
;;;102      while (1) {
;;;103        _DemoAntialiasing();
000006  bf00              NOP      
                  |L2.8|
000008  f7fff7ff          BL       _DemoAntialiasing
00000c  e7fc              B        |L2.8|
;;;104      }
;;;105    }
                          ENDP

⌨️ 快捷键说明

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