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

📄 stm32f10x_it.txt

📁 STM32外部SRAM用作datamemery的程序 开发环境MDK
💻 TXT
📖 第 1 页 / 共 4 页
字号:
; generated by ARM/Thumb C/C++ Compiler with , RVCT3.1 [Build 934] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\stm32f10x_it.o --depend=.\Obj\stm32f10x_it.d --device=DARMSTM --apcs=interwork -O3 -I..\..\include -I..\..\..\FWLib\library\inc -I..\..\..\USBLib\library\inc -I..\..\SRAM -I"D:\Program Files\MDK KEIL\ARM\INC\ST\STM32F10x" -D__MICROLIB --omf_browse=.\Obj\stm32f10x_it.crf ..\..\source\stm32f10x_it.c]
                          THUMB

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

                  NMIException PROC
;;;39     void NMIException(void)
;;;40     {
000000  b570              PUSH     {r4-r6,lr}
;;;41       u32 tmp = 318, index = 0;
;;;42     
;;;43       RCC_AHBPeriphClockCmd(RCC_AHBPeriph_FSMC, ENABLE);
000002  2101              MOVS     r1,#1
000004  f44ff44f          MOV      r5,#0x13e             ;41
000008  2400              MOVS     r4,#0                 ;41
00000a  0208              LSLS     r0,r1,#8
00000c  f7fff7ff          BL       RCC_AHBPeriphClockCmd
;;;44     
;;;45       /* Disable LCD Window mode */
;;;46       LCD_WindowModeDisable(); 
000010  f7fff7ff          BL       LCD_WindowModeDisable
;;;47     
;;;48       /* If HSE is not detected at program startup or HSE clock failed during program execution */
;;;49       if((Get_HSEStartUpStatus() == ERROR) || (RCC_GetITStatus(RCC_IT_CSS) != RESET))
000014  f7fff7ff          BL       Get_HSEStartUpStatus
000018  b120              CBZ      r0,|L1.36|
00001a  2080              MOVS     r0,#0x80
00001c  f7fff7ff          BL       RCC_GetITStatus
000020  2800              CMP      r0,#0
000022  d07c              BEQ      |L1.286|
                  |L1.36|
;;;50       { 
;;;51         /* Clear the LCD */
;;;52         LCD_Clear(White);
000024  f64ff64f          MOV      r6,#0xffff
000028  4630              MOV      r0,r6
00002a  f7fff7ff          BL       LCD_Clear
;;;53         /* Set the LCD Back Color */
;;;54         LCD_SetBackColor(Blue);
00002e  201f              MOVS     r0,#0x1f
000030  f7fff7ff          BL       LCD_SetBackColor
;;;55     
;;;56         /* Set the LCD Text Color */
;;;57         LCD_SetTextColor(White);
000034  4630              MOV      r0,r6
000036  f7fff7ff          BL       LCD_SetTextColor
;;;58     
;;;59         /* Display " No Clock Detected  " message */
;;;60         LCD_DisplayStringLine(Line0, "No HSE Clock        ");
00003a  a139              ADR      r1,|L1.288|
00003c  2000              MOVS     r0,#0
00003e  f7fff7ff          BL       LCD_DisplayStringLine
;;;61         LCD_DisplayStringLine(Line1, "Detected. STANDBY   ");
000042  a13d              ADR      r1,|L1.312|
000044  2018              MOVS     r0,#0x18
000046  f7fff7ff          BL       LCD_DisplayStringLine
;;;62         LCD_DisplayStringLine(Line2, "mode in few seconds.");
00004a  a141              ADR      r1,|L1.336|
00004c  2030              MOVS     r0,#0x30
00004e  f7fff7ff          BL       LCD_DisplayStringLine
;;;63         
;;;64         LCD_DisplayStringLine(Line5, "If HSE Clock         ");
000052  a145              ADR      r1,|L1.360|
000054  2078              MOVS     r0,#0x78
000056  f7fff7ff          BL       LCD_DisplayStringLine
;;;65         LCD_DisplayStringLine(Line6, "recovers before the  ");
00005a  a149              ADR      r1,|L1.384|
00005c  2090              MOVS     r0,#0x90
00005e  f7fff7ff          BL       LCD_DisplayStringLine
;;;66         LCD_DisplayStringLine(Line7, "time out, a System   ");
000062  a14d              ADR      r1,|L1.408|
000064  20a8              MOVS     r0,#0xa8
000066  f7fff7ff          BL       LCD_DisplayStringLine
;;;67         LCD_DisplayStringLine(Line8, "Reset is generated.  ");
00006a  a151              ADR      r1,|L1.432|
00006c  20c0              MOVS     r0,#0xc0
00006e  f7fff7ff          BL       LCD_DisplayStringLine
;;;68         LCD_ClearLine(Line9);
000072  20d8              MOVS     r0,#0xd8
000074  f7fff7ff          BL       LCD_ClearLine
;;;69         /* Clear Clock Security System interrupt pending bit */
;;;70         RCC_ClearITPendingBit(RCC_IT_CSS);
000078  2080              MOVS     r0,#0x80
00007a  f7fff7ff          BL       RCC_ClearITPendingBit
;;;71     
;;;72         GPIO_SetBits(GPIOF, GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9);
00007e  f44ff44f          MOV      r1,#0x3c0
000082  4851              LDR      r0,|L1.456|
000084  f7fff7ff          BL       GPIO_SetBits
;;;73     
;;;74         /* Enable HSE */
;;;75         RCC_HSEConfig(RCC_HSE_ON);
000088  1c70              ADDS     r0,r6,#1
00008a  f7fff7ff          BL       RCC_HSEConfig
;;;76         LCD_ClearLine(Line4);
00008e  2060              MOVS     r0,#0x60
000090  f7fff7ff          BL       LCD_ClearLine
;;;77         /* Set the Back Color */
;;;78         LCD_SetBackColor(White);
000094  4630              MOV      r0,r6
000096  f7fff7ff          BL       LCD_SetBackColor
;;;79         /* Set the Text Color */
;;;80         LCD_SetTextColor(Red);
00009a  f44ff44f          MOV      r0,#0xf800
00009e  f7fff7ff          BL       LCD_SetTextColor
;;;81         LCD_DrawRect(71, 319, 25, 320);
0000a2  f44ff44f          MOV      r3,#0x140
0000a6  2219              MOVS     r2,#0x19
0000a8  1e59              SUBS     r1,r3,#1
0000aa  2047              MOVS     r0,#0x47
0000ac  f7fff7ff          BL       LCD_DrawRect
;;;82         LCD_SetBackColor(Green); 
0000b0  f44ff44f          MOV      r0,#0x7e0
0000b4  f7fff7ff          BL       LCD_SetBackColor
;;;83         LCD_SetTextColor(White);
0000b8  4630              MOV      r0,r6
0000ba  f7fff7ff          BL       LCD_SetTextColor
0000be  4e43              LDR      r6,|L1.460|
0000c0  e024              B        |L1.268|
                  |L1.194|
;;;84     
;;;85         /* Wait till HSE is ready */
;;;86         while(RCC_GetFlagStatus(RCC_FLAG_HSERDY) == RESET)
;;;87         {
;;;88           if(index == 0x3FFFF)
0000c2  42b4              CMP      r4,r6
0000c4  d106              BNE      |L1.212|
;;;89           {
;;;90             LCD_DisplayChar(Line3, tmp, 0x20);
0000c6  2220              MOVS     r2,#0x20
0000c8  b2a9              UXTH     r1,r5
0000ca  2048              MOVS     r0,#0x48
0000cc  f7fff7ff          BL       LCD_DisplayChar
;;;91             tmp -= 16;
0000d0  3d10              SUBS     r5,r5,#0x10
;;;92             index = 0;
0000d2  2400              MOVS     r4,#0
                  |L1.212|
;;;93           }
;;;94           index++;
0000d4  1c64              ADDS     r4,r4,#1
;;;95           /* Enters the system in STANDBY mode */
;;;96           if(tmp < 16)
0000d6  2d10              CMP      r5,#0x10
0000d8  d218              BCS      |L1.268|
;;;97           {
;;;98             LCD_SetBackColor(Blue);
0000da  201f              MOVS     r0,#0x1f
0000dc  f7fff7ff          BL       LCD_SetBackColor
;;;99             LCD_ClearLine(Line3);
0000e0  2048              MOVS     r0,#0x48
0000e2  f7fff7ff          BL       LCD_ClearLine
;;;100            LCD_ClearLine(Line4);
0000e6  2060              MOVS     r0,#0x60
0000e8  f7fff7ff          BL       LCD_ClearLine
;;;101            LCD_ClearLine(Line5);
0000ec  2078              MOVS     r0,#0x78
0000ee  f7fff7ff          BL       LCD_ClearLine
;;;102            LCD_ClearLine(Line6);
0000f2  2090              MOVS     r0,#0x90
0000f4  f7fff7ff          BL       LCD_ClearLine
;;;103            LCD_DisplayStringLine(Line7, " MCU in STANDBY Mode"); 
0000f8  a135              ADR      r1,|L1.464|
0000fa  20a8              MOVS     r0,#0xa8
0000fc  f7fff7ff          BL       LCD_DisplayStringLine
;;;104            LCD_DisplayStringLine(Line8, "To exit press Wakeup");
000100  a139              ADR      r1,|L1.488|
000102  20c0              MOVS     r0,#0xc0
000104  f7fff7ff          BL       LCD_DisplayStringLine
;;;105            /* Request to enter STANDBY mode */
;;;106            PWR_EnterSTANDBYMode();
000108  f7fff7ff          BL       PWR_EnterSTANDBYMode
                  |L1.268|
00010c  2031              MOVS     r0,#0x31              ;86
00010e  f7fff7ff          BL       RCC_GetFlagStatus
000112  2800              CMP      r0,#0                 ;86
000114  d0d5              BEQ      |L1.194|
;;;107          }
;;;108        }
;;;109      
;;;110        /* Generate a system reset */  
;;;111        NVIC_GenerateSystemReset();
000116  e8bde8bd          POP      {r4-r6,lr}
00011a  f7fff7ff          B.W      NVIC_GenerateSystemReset
                  |L1.286|
;;;112      }
;;;113    }
00011e  bd70              POP      {r4-r6,pc}
;;;114    
                          ENDP

                  |L1.288|
000120  4e6f2048          DCB      "No H"
000124  53452043          DCB      "SE C"
000128  6c6f636b          DCB      "lock"
00012c  20202020          DCB      "    "
000130  20202020          DCB      "    "
000134  00000000          DCB      "\0\0\0\0"
                  |L1.312|
000138  44657465          DCB      "Dete"
00013c  63746564          DCB      "cted"
000140  2e205354          DCB      ". ST"
000144  414e4442          DCB      "ANDB"
000148  59202020          DCB      "Y   "
00014c  00000000          DCB      "\0\0\0\0"
                  |L1.336|
000150  6d6f6465          DCB      "mode"
000154  20696e20          DCB      " in "
000158  66657720          DCB      "few "
00015c  7365636f          DCB      "seco"
000160  6e64732e          DCB      "nds."
000164  00000000          DCB      "\0\0\0\0"
                  |L1.360|
000168  49662048          DCB      "If H"
00016c  53452043          DCB      "SE C"
000170  6c6f636b          DCB      "lock"
000174  20202020          DCB      "    "
000178  20202020          DCB      "    "
00017c  20000000          DCB      " \0\0\0"
                  |L1.384|
000180  7265636f          DCB      "reco"
000184  76657273          DCB      "vers"
000188  20626566          DCB      " bef"
00018c  6f726520          DCB      "ore "
000190  74686520          DCB      "the "
000194  20000000          DCB      " \0\0\0"
                  |L1.408|
000198  74696d65          DCB      "time"
00019c  206f7574          DCB      " out"
0001a0  2c206120          DCB      ", a "
0001a4  53797374          DCB      "Syst"
0001a8  656d2020          DCB      "em  "
0001ac  20000000          DCB      " \0\0\0"
                  |L1.432|
0001b0  52657365          DCB      "Rese"
0001b4  74206973          DCB      "t is"
0001b8  2067656e          DCB      " gen"
0001bc  65726174          DCB      "erat"
0001c0  65642e20          DCB      "ed. "
0001c4  20000000          DCB      " \0\0\0"
                  |L1.456|
0001c8  40011c00          DCD      0x40011c00
                  |L1.460|
0001cc  0003ffff          DCD      0x0003ffff
                  |L1.464|
0001d0  204d4355          DCB      " MCU"
0001d4  20696e20          DCB      " in "
0001d8  5354414e          DCB      "STAN"
0001dc  44425920          DCB      "DBY "
0001e0  4d6f6465          DCB      "Mode"
0001e4  00000000          DCB      "\0\0\0\0"
                  |L1.488|
0001e8  546f2065          DCB      "To e"
0001ec  78697420          DCB      "xit "
0001f0  70726573          DCB      "pres"
0001f4  73205761          DCB      "s Wa"
0001f8  6b657570          DCB      "keup"
0001fc  00000000          DCB      "\0\0\0\0"

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

                  HardFaultException PROC
;;;124      /* Go to infinite loop when Hard Fault exception occurs */
;;;125      while (1)
000000  e7fe              B        HardFaultException
;;;126      {
;;;127      }
;;;128    }
;;;129    
                          ENDP


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

                  MemManageException PROC
;;;139      /* Go to infinite loop when Memory Manage exception occurs */
;;;140      while (1)
000000  e7fe              B        MemManageException
;;;141      {
;;;142      }
;;;143    }
;;;144    
                          ENDP


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

                  BusFaultException PROC
;;;154      /* Go to infinite loop when Bus Fault exception occurs */
;;;155      while (1)
000000  e7fe              B        BusFaultException
;;;156      {
;;;157      }
;;;158    }
;;;159    
                          ENDP


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

                  UsageFaultException PROC
;;;169      /* Go to infinite loop when Usage Fault exception occurs */
;;;170      while (1)
000000  e7fe              B        UsageFaultException
;;;171      {
;;;172      }
;;;173    }
;;;174    
                          ENDP


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

                  DebugMonitor PROC
;;;183    {
;;;184    }
000000  4770              BX       lr
;;;185    
                          ENDP


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

                  SVCHandler PROC
;;;194    {
;;;195    }
000000  4770              BX       lr
;;;196    
                          ENDP


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

                  PendSVC PROC
;;;205    {
;;;206    }
000000  4770              BX       lr
;;;207    
                          ENDP


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

                  SysTickHandler PROC
;;;217      /* Decrement the TimingDelay variable */
;;;218      Decrement_TimingDelay();
000000  f7fff7ff          B.W      Decrement_TimingDelay
;;;219    }
;;;220    
                          ENDP


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

⌨️ 快捷键说明

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