亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? arm_cm4.s

?? Cortex-M4+example
?? S
?? 第 1 頁 / 共 2 頁
字號:
///////////////////////////////////////////////////////////////////////////////
//                                                                            /
// IAR ANSI C/C++ Compiler V6.10.1.52143/W32 for ARM    16/Apr/2011  16:44:05 /
// Copyright 1999-2010 IAR Systems AB.                                        /
//                                                                            /
//    Cpu mode     =  thumb                                                   /
//    Endian       =  little                                                  /
//    Source file  =  E:\Project\15_K60\03_Software\02_My                     /
//                    program\K60_IAR\01_light\src\cpu\arm_cm4.c              /
//    Command line =  "E:\Project\15_K60\03_Software\02_My                    /
//                    program\K60_IAR\01_light\src\cpu\arm_cm4.c" -D IAR -D   /
//                    TWR_K60N512 -lCN "E:\Project\15_K60\03_Software\02_My   /
//                    program\K60_IAR\01_light\bin\Flash\List\" -lB           /
//                    "E:\Project\15_K60\03_Software\02_My                    /
//                    program\K60_IAR\01_light\bin\Flash\List\" -o            /
//                    "E:\Project\15_K60\03_Software\02_My                    /
//                    program\K60_IAR\01_light\bin\Flash\Obj\" --no_cse       /
//                    --no_unroll --no_inline --no_code_motion --no_tbaa      /
//                    --no_clustering --no_scheduling --debug                 /
//                    --endian=little --cpu=Cortex-M4 -e --fpu=None           /
//                    --dlib_config D:\iar\arm\INC\c\DLib_Config_Normal.h -I  /
//                    "E:\Project\15_K60\03_Software\02_My                    /
//                    program\K60_IAR\01_light\src\common\" -I                /
//                    "E:\Project\15_K60\03_Software\02_My                    /
//                    program\K60_IAR\01_light\src\cpu\" -I                   /
//                    "E:\Project\15_K60\03_Software\02_My                    /
//                    program\K60_IAR\01_light\src\cpu\headers\" -I           /
//                    "E:\Project\15_K60\03_Software\02_My                    /
//                    program\K60_IAR\01_light\src\drivers\" -I               /
//                    "E:\Project\15_K60\03_Software\02_My                    /
//                    program\K60_IAR\01_light\src\drivers\uart\" -I          /
//                    "E:\Project\15_K60\03_Software\02_My                    /
//                    program\K60_IAR\01_light\src\drivers\gpio\" -I          /
//                    "E:\Project\15_K60\03_Software\02_My                    /
//                    program\K60_IAR\01_light\src\drivers\mcg\" -I           /
//                    "E:\Project\15_K60\03_Software\02_My                    /
//                    program\K60_IAR\01_light\src\drivers\wdog\" -I          /
//                    "E:\Project\15_K60\03_Software\02_My                    /
//                    program\K60_IAR\01_light\src\projects\" -I              /
//                    "E:\Project\15_K60\03_Software\02_My                    /
//                    program\K60_IAR\01_light\src\" -Ol --use_c++_inline     /
//    List file    =  E:\Project\15_K60\03_Software\02_My                     /
//                    program\K60_IAR\01_light\bin\Flash\List\arm_cm4.s       /
//                                                                            /
//                                                                            /
///////////////////////////////////////////////////////////////////////////////

        NAME arm_cm4

        EXTERN printf

        PUBLIC disable_irq
        PUBLIC enable_irq
        PUBLIC set_irq_priority
        PUBLIC stop
        PUBLIC wait
        PUBLIC write_vtor

// E:\Project\15_K60\03_Software\02_My program\K60_IAR\01_light\src\cpu\arm_cm4.c
//    1 /*
//    2  * File:		arm_cm4.c
//    3  * Purpose:		Generic high-level routines for ARM Cortex M4 processors
//    4  *
//    5  * Notes:
//    6  */
//    7 
//    8 #include "common.h"
//    9 
//   10 /***********************************************************************/
//   11 /*
//   12  * Configures the ARM system control register for STOP (deep sleep) mode
//   13  * and then executes the WFI instruction to enter the mode.
//   14  *
//   15  * Parameters:
//   16  * none
//   17  *
//   18  * Note: Might want to change this later to allow for passing in a parameter
//   19  *       to optionally set the sleep on exit bit.
//   20  */
//   21 

        SECTION `.text`:CODE:NOROOT(2)
        THUMB
//   22 void stop (void)
//   23 {
//   24 	/* Set the SLEEPDEEP bit to enable deep sleep mode (STOP) */
//   25 	SCB_SCR |= SCB_SCR_SLEEPDEEP_MASK;	
stop:
        LDR.N    R0,??DataTable9  ;; 0xe000ed10
        LDR      R0,[R0, #+0]
        ORRS     R0,R0,#0x4
        LDR.N    R1,??DataTable9  ;; 0xe000ed10
        STR      R0,[R1, #+0]
//   26 
//   27 	/* WFI instruction will start entry into STOP mode */
//   28 	asm("WFI");
        WFI              
//   29 }
        BX       LR               ;; return
//   30 /***********************************************************************/
//   31 /*
//   32  * Configures the ARM system control register for WAIT (sleep) mode
//   33  * and then executes the WFI instruction to enter the mode.
//   34  *
//   35  * Parameters:
//   36  * none
//   37  *
//   38  * Note: Might want to change this later to allow for passing in a parameter
//   39  *       to optionally set the sleep on exit bit.
//   40  */
//   41 

        SECTION `.text`:CODE:NOROOT(2)
        THUMB
//   42 void wait (void)
//   43 {
//   44 	/* Clear the SLEEPDEEP bit to make sure we go into WAIT (sleep) mode instead
//   45 	 * of deep sleep.
//   46 	 */
//   47 	SCB_SCR &= ~SCB_SCR_SLEEPDEEP_MASK;	
wait:
        LDR.N    R0,??DataTable9  ;; 0xe000ed10
        LDR      R0,[R0, #+0]
        BICS     R0,R0,#0x4
        LDR.N    R1,??DataTable9  ;; 0xe000ed10
        STR      R0,[R1, #+0]
//   48 
//   49 	/* WFI instruction will start entry into WAIT mode */
//   50 	asm("WFI");
        WFI              
//   51 }
        BX       LR               ;; return
//   52 /***********************************************************************/
//   53 /*
//   54  * Change the value of the vector table offset register to the specified value.
//   55  *
//   56  * Parameters:
//   57  * vtor     new value to write to the VTOR
//   58  */
//   59 

        SECTION `.text`:CODE:NOROOT(1)
        THUMB
//   60 void write_vtor (int vtor)
//   61 {
//   62         /* Write the VTOR with the new value */
//   63         SCB_VTOR = vtor;	
write_vtor:
        LDR.N    R1,??DataTable9_1  ;; 0xe000ed08
        STR      R0,[R1, #+0]
//   64 }
        BX       LR               ;; return
//   65 /***********************************************************************/
//   66 /*
//   67  * Initialize the NVIC to enable the specified IRQ.
//   68  * 
//   69  * NOTE: The function only initializes the NVIC to enable a single IRQ. 
//   70  * Interrupts will also need to be enabled in the ARM core. This can be 
//   71  * done using the EnableInterrupts macro.
//   72  *
//   73  * Parameters:
//   74  * irq    irq number to be enabled (the irq number NOT the vector number)
//   75  */
//   76 

        SECTION `.text`:CODE:NOROOT(1)
        THUMB
//   77 void enable_irq (int irq)
//   78 {
enable_irq:
        PUSH     {R4,LR}
        MOVS     R4,R0
//   79     int div;
//   80     
//   81     /* Make sure that the IRQ is an allowable number. Right now up to 91 is 
//   82      * used.
//   83      */
//   84     if (irq > 91)
        CMP      R4,#+92
        BLT.N    ??enable_irq_0
//   85         printf("\nERR! Invalid IRQ value passed to enable irq function!\n");
        ADR.W    R0,`?<Constant "\\nERR! Invalid IRQ val...">`
        BL       printf
//   86     
//   87     /* Determine which of the NVICISERs corresponds to the irq */
//   88     div = irq/32;
??enable_irq_0:
        MOVS     R0,#+32
        SDIV     R0,R4,R0
//   89     
//   90     switch (div)
        CMP      R0,#+0
        BEQ.N    ??enable_irq_1
        CMP      R0,#+2
        BEQ.N    ??enable_irq_2
        BCC.N    ??enable_irq_3
        B.N      ??enable_irq_4
//   91     {
//   92     	case 0x0:
//   93               NVICICPR0 |= 1 << (irq%32);
??enable_irq_1:
        LDR.N    R0,??DataTable9_2  ;; 0xe000e280
        LDR      R0,[R0, #+0]
        MOVS     R1,#+1
        MOVS     R2,#+32
        SDIV     R3,R4,R2
        MLS      R3,R3,R2,R4
        LSLS     R1,R1,R3
        ORRS     R0,R1,R0
        LDR.N    R1,??DataTable9_2  ;; 0xe000e280
        STR      R0,[R1, #+0]
//   94               NVICISER0 |= 1 << (irq%32);
        LDR.N    R0,??DataTable9_3  ;; 0xe000e100
        LDR      R0,[R0, #+0]
        MOVS     R1,#+1
        MOVS     R2,#+32
        SDIV     R3,R4,R2
        MLS      R3,R3,R2,R4
        LSLS     R1,R1,R3
        ORRS     R0,R1,R0
        LDR.N    R1,??DataTable9_3  ;; 0xe000e100
        STR      R0,[R1, #+0]
//   95               break;
        B.N      ??enable_irq_4
//   96     	case 0x1:
//   97               NVICICPR1 |= 1 << (irq%32);
??enable_irq_3:
        LDR.N    R0,??DataTable9_4  ;; 0xe000e284
        LDR      R0,[R0, #+0]
        MOVS     R1,#+1
        MOVS     R2,#+32
        SDIV     R3,R4,R2
        MLS      R3,R3,R2,R4
        LSLS     R1,R1,R3
        ORRS     R0,R1,R0
        LDR.N    R1,??DataTable9_4  ;; 0xe000e284
        STR      R0,[R1, #+0]
//   98               NVICISER1 |= 1 << (irq%32);
        LDR.N    R0,??DataTable9_5  ;; 0xe000e104
        LDR      R0,[R0, #+0]
        MOVS     R1,#+1
        MOVS     R2,#+32
        SDIV     R3,R4,R2
        MLS      R3,R3,R2,R4
        LSLS     R1,R1,R3
        ORRS     R0,R1,R0
        LDR.N    R1,??DataTable9_5  ;; 0xe000e104
        STR      R0,[R1, #+0]
//   99               break;
        B.N      ??enable_irq_4
//  100     	case 0x2:
//  101               NVICICPR2 |= 1 << (irq%32);
??enable_irq_2:
        LDR.N    R0,??DataTable9_6  ;; 0xe000e288
        LDR      R0,[R0, #+0]
        MOVS     R1,#+1
        MOVS     R2,#+32
        SDIV     R3,R4,R2
        MLS      R3,R3,R2,R4
        LSLS     R1,R1,R3
        ORRS     R0,R1,R0
        LDR.N    R1,??DataTable9_6  ;; 0xe000e288
        STR      R0,[R1, #+0]
//  102               NVICISER2 |= 1 << (irq%32);
        LDR.N    R0,??DataTable9_7  ;; 0xe000e108
        LDR      R0,[R0, #+0]
        MOVS     R1,#+1
        MOVS     R2,#+32
        SDIV     R3,R4,R2
        MLS      R3,R3,R2,R4
        LSLS     R1,R1,R3
        ORRS     R0,R1,R0
        LDR.N    R1,??DataTable9_7  ;; 0xe000e108
        STR      R0,[R1, #+0]

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
免费三级欧美电影| 国产精品对白交换视频| 蜜桃av一区二区| 日韩三级高清在线| 国产真实乱偷精品视频免| 久久精品日韩一区二区三区| 成人av网站免费观看| 亚洲天堂精品在线观看| 欧美中文字幕亚洲一区二区va在线| 亚洲人123区| 91精品国产综合久久久久久久久久| 麻豆精品一区二区三区| 日本一区二区三区久久久久久久久不 | 精品在线一区二区三区| 久久精品一区二区三区不卡牛牛| 91香蕉视频污| 蜜臀a∨国产成人精品| 中文字幕va一区二区三区| 在线精品视频小说1| 乱中年女人伦av一区二区| 国产精品色哟哟网站| 欧美色爱综合网| 国产精品综合一区二区三区| 国产精品久久久久四虎| 3d动漫精品啪啪1区2区免费| 国产黑丝在线一区二区三区| 亚洲一区二区三区四区在线免费观看| 欧美一区二区视频在线观看 | 日av在线不卡| 国产精品久久毛片av大全日韩| 欧美日韩五月天| 国产精品一级黄| 午夜激情一区二区| 国产精品久久久久影院| 7777精品伊人久久久大香线蕉的| 成人精品视频一区二区三区 | 午夜精品免费在线| 国产精品护士白丝一区av| 在线播放中文一区| 波多野结衣视频一区| 精油按摩中文字幕久久| 亚洲与欧洲av电影| 欧美激情中文字幕| 日韩免费电影一区| 欧美日韩免费电影| www.久久久久久久久| 激情综合色丁香一区二区| 夜夜嗨av一区二区三区网页| 国产精品视频一区二区三区不卡 | 精品国产sm最大网站免费看| 91黄色免费版| 91一区一区三区| 成人动漫在线一区| 国产乱码精品1区2区3区| 蜜臀国产一区二区三区在线播放| 一区二区三区日韩欧美| 国产欧美日韩亚州综合 | 日本欧美久久久久免费播放网| 中文字幕中文乱码欧美一区二区 | 美女爽到高潮91| 午夜精品福利一区二区蜜股av | 久久嫩草精品久久久精品| 欧美日韩精品一区二区天天拍小说 | 91久久精品网| 成人av免费网站| 国产mv日韩mv欧美| 国产一区视频在线看| 久久国产人妖系列| 麻豆久久一区二区| 美国三级日本三级久久99| 色视频成人在线观看免| 91丨porny丨最新| 国产91色综合久久免费分享| 黑人精品欧美一区二区蜜桃| 亚洲免费观看高清完整版在线 | 激情小说亚洲一区| 日韩高清一区在线| 午夜影院久久久| 五月激情丁香一区二区三区| 五月天一区二区| 天天做天天摸天天爽国产一区| 性做久久久久久免费观看| 亚洲成国产人片在线观看| 亚洲五月六月丁香激情| 丝袜美腿一区二区三区| 视频一区国产视频| 美国av一区二区| 国产在线不卡一卡二卡三卡四卡| 激情国产一区二区| 高清视频一区二区| 91性感美女视频| 在线亚洲一区观看| 欧美精品亚洲二区| 日韩欧美色电影| 国产亚洲欧美日韩日本| 中文字幕一区不卡| 亚洲制服丝袜av| 偷拍与自拍一区| 韩国午夜理伦三级不卡影院| 白白色亚洲国产精品| 色婷婷久久一区二区三区麻豆| 欧美色中文字幕| 日韩欧美亚洲一区二区| 国产精品色婷婷久久58| 亚洲裸体在线观看| 日本美女一区二区| 国产**成人网毛片九色 | 欧美视频你懂的| 精品欧美久久久| 亚洲日本韩国一区| 青青草伊人久久| 国产成人av电影在线播放| 日本乱码高清不卡字幕| 日韩免费看的电影| 中文字幕中文乱码欧美一区二区 | 26uuu欧美| 亚洲精品老司机| 狠狠色丁香久久婷婷综合_中 | 国产精品综合av一区二区国产馆| 不卡的av在线播放| 欧美一区二区久久久| 国产精品久久久久久久蜜臀| 日韩精品电影在线| eeuss鲁片一区二区三区在线观看 eeuss鲁片一区二区三区在线看 | 欧美日韩免费视频| 中文字幕不卡的av| 日本亚洲最大的色成网站www| 丁香亚洲综合激情啪啪综合| 欧美猛男超大videosgay| 国产精品视频线看| 久久精品国产精品亚洲综合| 色哟哟一区二区在线观看| 欧美精品一区二区三区视频| 亚洲国产一区二区三区| av中文字幕亚洲| 2020国产精品自拍| 日本欧美加勒比视频| 在线观看不卡视频| 国产精品电影院| 国产一区二区三区四区在线观看| 欧美日韩亚洲综合在线| 亚洲美女屁股眼交3| 成人免费黄色大片| 久久久久久久精| 久久精品国产一区二区| 欧美日韩国产一级片| 综合久久久久综合| 成人晚上爱看视频| 精品国产乱码久久久久久久久| 亚洲成av人在线观看| 色屁屁一区二区| 日韩美女视频19| 99国产欧美另类久久久精品| 国产欧美久久久精品影院| 国产综合久久久久影院| 精品国产精品网麻豆系列| 老汉av免费一区二区三区| 91精品国产欧美一区二区成人 | 国产综合一区二区| 欧美变态tickle挠乳网站| 青青草原综合久久大伊人精品| 精品视频在线免费观看| 亚洲一区二区三区视频在线| 91免费视频观看| 亚洲最大的成人av| 在线视频中文字幕一区二区| 亚洲品质自拍视频网站| 色诱亚洲精品久久久久久| 亚洲乱码一区二区三区在线观看| 色一区在线观看| 一区二区三区欧美| 欧美日韩国产中文| 久久国产三级精品| 国产视频一区不卡| 91丨porny丨国产入口| 亚洲日本在线观看| 欧美三区在线观看| 看电影不卡的网站| 精品福利二区三区| 成人毛片老司机大片| 国产精品久久久久9999吃药| 色偷偷成人一区二区三区91| 一区二区三区资源| 欧美精品在线观看一区二区| 另类小说视频一区二区| 国产欧美一区二区三区沐欲| 99久久精品国产一区| 亚洲观看高清完整版在线观看| 欧美一级在线视频| 粉嫩av一区二区三区在线播放| 国产片一区二区三区| 91麻豆国产在线观看| 偷拍日韩校园综合在线| 2023国产精品| 色菇凉天天综合网| 久久综合综合久久综合| 中文字幕一区二区三区在线播放 | 日韩一区二区三区在线视频| 国产乱码精品一区二区三区五月婷 | 色呦呦网站一区|