📄 main.txt
字号:
;;;161 printf(" start to display______");
000096 a016 ADR r0,|L6.240|
000098 f7fff7ff BL __1printf
;;;162 /* Initialize the LCD */
;;;163 STM3210E_LCD_Init();
00009c f7fff7ff BL STM3210E_LCD_Init
;;;164
;;;165 /* Clear the LCD */
;;;166 // LCD_Clear(Red);
;;;167
;;;168 /* If HSE is not detected at program startup */
;;;169 if(HSEStartUpStatus == ERROR)
0000a0 7820 LDRB r0,[r4,#0] ; HSEStartUpStatus
0000a2 b910 CBNZ r0,|L6.170|
;;;170 {
;;;171 /* Generate NMI exception */
;;;172 NVIC_SetSystemHandlerPendingBit(SystemHandler_NMI);
0000a4 201f MOVS r0,#0x1f
0000a6 f7fff7ff BL NVIC_SetSystemHandlerPendingBit
|L6.170|
;;;173 }
;;;174
;;;175 /* Checks the availability of the bitmap files */
;;;176 // CheckBitmapFilesStatus();
;;;177 // LCD_DrawChar(100,(uc16)100,(uc16)ASCII_Table[1]);
;;;178 LCD_DisplayStringLine(2,"12345");
0000aa a117 ADR r1,|L6.264|
0000ac 2002 MOVS r0,#2
0000ae f7fff7ff BL LCD_DisplayStringLine
;;;179 //LCD_DisplayHZ(16,5,1);
;;;180 //LCD_Clear(White);
;;;181 LCD_DisplayHanziLine(Line2,"012");
0000b2 a117 ADR r1,|L6.272|
0000b4 2030 MOVS r0,#0x30
0000b6 f7fff7ff BL LCD_DisplayHanziLine
;;;182 LCD_DrawCircle(100,100,50);
0000ba 2164 MOVS r1,#0x64
0000bc 2232 MOVS r2,#0x32
0000be 4608 MOV r0,r1
0000c0 f7fff7ff BL LCD_DrawCircle
;;;183 //LCD_SetBackColor(Red);
;;;184 //LCD_DrawPIC_xXx(Line2,23,40,40,0);
;;;185 for(i=0;i<999999;i++)
0000c4 4a13 LDR r2,|L6.276|
0000c6 2100 MOVS r1,#0
|L6.200|
;;;186 for(j=0;j<10;j++);
0000c8 2000 MOVS r0,#0
|L6.202|
0000ca 1c40 ADDS r0,r0,#1
0000cc 280a CMP r0,#0xa
0000ce d3fc BCC |L6.202|
0000d0 1c49 ADDS r1,r1,#1 ;185
0000d2 4291 CMP r1,r2 ;185
0000d4 d3f8 BCC |L6.200|
;;;187 // LCD_DrawPIC_xXx__VorH(Line0,0,240,320,flower,DISP_240X320);
;;;188
;;;189 // LCD_Clear(White);
;;;190
;;;191 LCD_DrawLine(Line7,319,200,0x00);
0000d6 e8bde8bd POP {r4-r6,lr}
0000da 2300 MOVS r3,#0
0000dc 22c8 MOVS r2,#0xc8
0000de f240f240 MOV r1,#0x13f
0000e2 20a8 MOVS r0,#0xa8
0000e4 f7fff7ff B.W LCD_DrawLine
;;;192 //void LCD_DrawLine(u8 Xpos, u16 Ypos, u16 Length, u8 Direction)
;;;193 /* Display the STM32 introduction */
;;;194 // STM32Intro();
;;;195
;;;196 /* Clear the LCD */
;;;197 //LCD_Clear(White);
;;;198
;;;199 /* Initialize the Calendar */
;;;200 // Calendar_Init();
;;;201
;;;202 /* Enable Leds toggling */
;;;203 //LedShow(ENABLE);
;;;204
;;;205 /* Initialize the Low Power application*/
;;;206 //LowPower_Init();
;;;207
;;;208 /* Set the LCD Back Color */
;;;209 //LCD_SetBackColor(Red);
;;;210
;;;211 /* Set the LCD Text Color */
;;;212 // LCD_SetTextColor(White);
;;;213
;;;214 /* Initialize the Menu */
;;;215 // Menu_Init();
;;;216
;;;217 /* Display the main menu icons */
;;;218 //ShowMenuIcons();
;;;219 }
;;;220
ENDP
|L6.232|
0000e8 00000000 DCD ||.data||
|L6.236|
0000ec 40010800 DCD 0x40010800
|L6.240|
0000f0 20737461 DCB " sta"
0000f4 72742074 DCB "rt t"
0000f8 6f206469 DCB "o di"
0000fc 73706c61 DCB "spla"
000100 795f5f5f DCB "y___"
000104 5f5f5f00 DCB "___\0"
|L6.264|
000108 31323334 DCB "1234"
00010c 35000000 DCB "5\0\0\0"
|L6.272|
000110 30313200 DCB "012\0"
|L6.276|
000114 000f423f DCD 0x000f423f
AREA ||i.main||, CODE, READONLY, ALIGN=2
main PROC
;;;42 int main(void)
;;;43 {
000000 b570 PUSH {r4-r6,lr}
;;;44
;;;45 #ifdef DEBUG
;;;46 debug();
;;;47 #endif
;;;48
;;;49 /* Initialize the Demo */
;;;50 Demo_Init();
000002 f7fff7ff BL Demo_Init
;;;51 /* Configure PD.03 as input floating */
;;;52 // GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;
;;;53 // GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
;;;54 // GPIO_Init(GPIOD, &GPIO_InitStructure);
;;;55
;;;56 GPIO_ResetBits(GPIOA,GPIO_Pin_4);
000006 2110 MOVS r1,#0x10
000008 4808 LDR r0,|L7.44|
00000a f7fff7ff BL GPIO_ResetBits
00000e 4c08 LDR r4,|L7.48|
000010 2500 MOVS r5,#0
|L7.18|
;;;57 // GPIO_SetBits(GPIOA,GPIO_Pin_4);
;;;58 while (1)
;;;59 {
;;;60 /* If SEL pushbutton is pressed */
;;;61 if(SELStatus == 1)
000012 68e0 LDR r0,[r4,#0xc] ; SELStatus
000014 2801 CMP r0,#1
000016 d1fc BNE |L7.18|
;;;62 {
;;;63 /* External Interrupt Disable */
;;;64 IntExtOnOffConfig(DISABLE);
000018 2000 MOVS r0,#0
00001a f7fff7ff BL IntExtOnOffConfig
;;;65
;;;66 /* Execute Sel Function */
;;;67 SelFunc();
00001e f7fff7ff BL SelFunc
;;;68
;;;69 /* External Interrupt Enable */
;;;70 IntExtOnOffConfig(ENABLE);
000022 2001 MOVS r0,#1
000024 f7fff7ff BL IntExtOnOffConfig
;;;71 /* Reset SELStatus value */
;;;72 SELStatus = 0;
000028 60e5 STR r5,[r4,#0xc] ; SELStatus
00002a e7f2 B |L7.18|
;;;73 }
;;;74 }
;;;75 }
;;;76
ENDP
|L7.44|
00002c 40010800 DCD 0x40010800
|L7.48|
000030 00000000 DCD ||.data||
AREA ||i.Delay||, CODE, READONLY, ALIGN=2
Delay PROC
;;;421 void Delay(u32 nCount)
;;;422 {
000000 b510 PUSH {r4,lr}
;;;423 TimingDelay = nCount;
000002 4c08 LDR r4,|L8.36|
000004 6060 STR r0,[r4,#4] ; TimingDelay
;;;424
;;;425 /* Enable the SysTick Counter */
;;;426 SysTick_CounterCmd(SysTick_Counter_Enable);
000006 2001 MOVS r0,#1
000008 f7fff7ff BL SysTick_CounterCmd
|L8.12|
;;;427
;;;428 while(TimingDelay != 0)
00000c 6860 LDR r0,[r4,#4] ; TimingDelay
00000e 2800 CMP r0,#0
000010 d1fc BNE |L8.12|
;;;429 {
;;;430 }
;;;431
;;;432 /* Disable the SysTick Counter */
;;;433 SysTick_CounterCmd(SysTick_Counter_Disable);
000012 1e80 SUBS r0,r0,#2
000014 f7fff7ff BL SysTick_CounterCmd
;;;434
;;;435 /* Clear the SysTick Counter */
;;;436 SysTick_CounterCmd(SysTick_Counter_Clear);
000018 e8bde8bd POP {r4,lr}
00001c 2000 MOVS r0,#0
00001e f7fff7ff B.W SysTick_CounterCmd
;;;437 }
;;;438
ENDP
000022 0000 DCW 0x0000
|L8.36|
000024 00000000 DCD ||.data||
AREA ||i.DelayJoyStick||, CODE, READONLY, ALIGN=2
DelayJoyStick PROC
;;;447 u32 DelayJoyStick(u32 nTime)
;;;448 {
000000 b570 PUSH {r4-r6,lr}
000002 4606 MOV r6,r0
;;;449 vu32 keystate = 0;
000004 2400 MOVS r4,#0
;;;450
;;;451 /* Enable the SysTick Counter */
;;;452 SysTick_CounterCmd(SysTick_Counter_Enable);
000006 2001 MOVS r0,#1
000008 f7fff7ff BL SysTick_CounterCmd
;;;453
;;;454 TimingDelay = nTime;
00000c 4d08 LDR r5,|L9.48|
00000e 606e STR r6,[r5,#4] ; TimingDelay
;;;455
;;;456 while((TimingDelay != 0) && (keystate != RIGHT) && (keystate != LEFT) && (keystate != SEL))
000010 e003 B |L9.26|
;;;457 {
;;;458 keystate = ReadKey();
000012 bf00 NOP
|L9.20|
000014 f7fff7ff BL ReadKey
000018 4604 MOV r4,r0
|L9.26|
00001a 6868 LDR r0,[r5,#4] ;456 ; TimingDelay
00001c b128 CBZ r0,|L9.42|
00001e 2c02 CMP r4,#2 ;456
000020 d003 BEQ |L9.42|
000022 2c03 CMP r4,#3 ;456
000024 d001 BEQ |L9.42|
000026 2c01 CMP r4,#1 ;456
000028 d1f4 BNE |L9.20|
|L9.42|
;;;459 }
;;;460
;;;461 return keystate;
00002a 4620 MOV r0,r4
;;;462 }
00002c bd70 POP {r4-r6,pc}
;;;463
ENDP
00002e 0000 DCW 0x0000
|L9.48|
000030 00000000 DCD ||.data||
AREA ||i.Decrement_TimingDelay||, CODE, READONLY, ALIGN=2
Decrement_TimingDelay PROC
;;;472 {
;;;473 if (TimingDelay != 0x00)
000000 4803 LDR r0,|L10.16|
000002 6841 LDR r1,[r0,#4] ; TimingDelay
000004 2900 CMP r1,#0
000006 d002 BEQ |L10.14|
;;;474 {
;;;475 TimingDelay--;
000008 6841 LDR r1,[r0,#4] ; TimingDelay
00000a 1e49 SUBS r1,r1,#1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -