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

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

?? cstartup.s79

?? AT91SAM7X256芯片底層驅動源碼。在IAR430環境下編譯
?? S79
字號:
;-  ----------------------------------------------------------------------------
;-          ATMEL Microcontroller Software Support  -  ROUSSET  -
;-  ----------------------------------------------------------------------------
;-  DISCLAIMER:  THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
;-  IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
;-  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
;-  DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
;-  INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
;-  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
;-  OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
;-  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
;-  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
;-  EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
;-  ----------------------------------------------------------------------------
;- File source          : Cstartup.s79
;- Object               : Generic CStartup
;- 1.0 01/Sep/05 FBr    : Creation
;------------------------------------------------------------------------------

;------------------------------------------------------------------------------
; Include your AT91 Library files
;------------------------------------------------------------------------------
#include "include/AT91SAM7X256_inc.h"
;------------------------------------------------------------------------------

;------------------------------------------------------------------------------
; ?RESET
; Reset Vector.
; Normally, segment INTVEC is linked at address 0.
; For debugging purposes, INTVEC may be placed at other addresses.
; A debugger that honors the entry point will start the
; program in a normal way even if INTVEC is not at address 0.
;------------------------------------------------------------------------------

    PROGRAM	?RESET              ;- Begins a program module
    RSEG	INTRAMEND_REMAP     ;- Begins a relocatable segment
    RSEG	ICODE:CODE (2)      ;- Begins a relocatable segment : corresponding address is 32-bit aligned
    CODE32	                    ;- Always ARM mode after reset	
    ORG	0	                    ;- Sets the location counter: corresponds to the RESET vector address

;------------------------------------------------------------------------------
;- Exception vectors
;------------------------------------------------------------------------------
;- These vectors can be read at address 0 or at RAM address
;- They ABSOLUTELY requires to be in relative addresssing mode in order to
;- guarantee a valid jump. For the moment, all are just looping.
;- If an exception occurs before remap, this would result in an infinite loop.
;- To ensure if a exeption occurs before start application to infinite loop.
;------------------------------------------------------------------------------

reset
                B           InitReset           ; 0x00 Reset handler
undefvec:
                B           undefvec            ; 0x04 Undefined Instruction
swivec:
                B           swivec              ; 0x08 Software Interrupt
pabtvec:
                B           pabtvec             ; 0x0C Prefetch Abort
dabtvec:
                B           dabtvec             ; 0x10 Data Abort
rsvdvec:
                B           rsvdvec             ; 0x14 reserved
irqvec:
                B           IRQ_Handler_Entry   ; 0x18 IRQ
fiqvec:               				
                B           fiqvec              ; 0x1c FIQ

InitReset:

;------------------------------------------------------------------------------
;- Low level Init is performed in a C function: AT91F_LowLevelInit
;- Init Stack Pointer to a valid memory area before calling AT91F_LowLevelInit
;------------------------------------------------------------------------------

;- Retrieve end of RAM address
__iramend EQU SFB(INTRAMEND_REMAP)      ;- Segment begin

    EXTERN   AT91F_LowLevelInit
    ldr     r13,=__iramend              ;- Temporary stack in internal RAM for Low Level Init execution
    ldr	    r0,=AT91F_LowLevelInit
    mov     lr, pc
    bx	    r0                          ;- Branch on C function (with interworking)

;------------------------------------------------------------------------------
;- Top of Stack Definition
;------------------------------------------------------------------------------
;- Interrupt and Supervisor Stack are located at the top of internal memory in
;- order to speed the exception handling context saving and restoring.
;- ARM_MODE_SVC (Application, C) Stack is located at the top of the external memory.
;------------------------------------------------------------------------------

IRQ_STACK_SIZE          EQU     (3*8*4)     ; 3 words to be saved per interrupt priority level
ARM_MODE_IRQ            EQU     0x12
ARM_MODE_SVC            EQU     0x13
I_BIT                   EQU     0x80
F_BIT                   EQU     0x40

;------------------------------------------------------------------------------
;- Setup the stack for each mode
;------------------------------------------------------------------------------
    ldr     r0, =__iramend

;- Set up Interrupt Mode and set IRQ Mode Stack
    msr     CPSR_c, #ARM_MODE_IRQ | I_BIT | F_BIT
    mov     r13, r0                     ; Init stack IRQ
    sub     r0, r0, #IRQ_STACK_SIZE

;- Enable interrupt & Set up Supervisor Mode and set Supervisor Mode Stack
    msr     CPSR_c, #ARM_MODE_SVC | F_BIT
    mov     r13, r0

;------------------------------------------------------------------------------
; Initialize segments.
;------------------------------------------------------------------------------
; __segment_init is assumed to use
; instruction set and to be reachable by BL from the ICODE segment
; (it is safest to link them in segment ICODE).
;------------------------------------------------------------------------------
    EXTERN	__segment_init
    ldr	r0,=__segment_init
    mov     lr, pc
    bx	r0

;------------------------------------------------------------------------------
;- Branch on C code Main function (with interworking)
;------------------------------------------------------------------------------
    EXTERN	main
    PUBLIC	__main
?jump_to_main:
    ldr	lr,=?call_exit
    ldr	r0,=main
__main:
    bx	r0

;------------------------------------------------------------------------------
;- Loop for ever
;------------------------------------------------------------------------------
;- End of application. Normally, never occur.
;- Could jump on Software Reset ( B 0x0 ).
;------------------------------------------------------------------------------
?call_exit:
End
    b       End

;------------------------------------------------------------------------------
;- Manage exception: The exception must be ensure in ARM mode
;------------------------------------------------------------------------------
;------------------------------------------------------------------------------
;- Function             : IRQ_Handler_Entry
;- Treatments           : IRQ Controller Interrupt Handler.
;- Called Functions     : AIC_IVR[interrupt]
;------------------------------------------------------------------------------
IRQ_Handler_Entry:

;-------------------------
;- Manage Exception Entry
;-------------------------
;- Adjust and save LR_irq in IRQ stack
    sub         lr, lr, #4
    stmfd       sp!, {lr}

;- Save r0 and SPSR (need to be saved for nested interrupt)
    mrs         r14, SPSR
    stmfd       sp!, {r0,r14}

;- Write in the IVR to support Protect Mode
;- No effect in Normal Mode
;- De-assert the NIRQ and clear the source in Protect Mode
    ldr         r14, =AT91C_BASE_AIC
    ldr         r0 , [r14, #AIC_IVR]
    str         r14, [r14, #AIC_IVR]

;- Enable Interrupt and Switch in Supervisor Mode
    msr         CPSR_c, #ARM_MODE_SVC

;- Save scratch/used registers and LR in User Stack
    stmfd       sp!, { r1-r3, r12, r14}

;----------------------------------------------
;- Branch to the routine pointed by the AIC_IVR
;----------------------------------------------
    mov         r14, pc
    bx          r0

;----------------------------------------------
;- Manage Exception Exit
;----------------------------------------------
;- Restore scratch/used registers and LR from User Stack
    ldmia       sp!, { r1-r3, r12, r14}

;- Disable Interrupt and switch back in IRQ mode
    msr         CPSR_c, #I_BIT | ARM_MODE_IRQ

;- Mark the End of Interrupt on the AIC
    ldr         r14, =AT91C_BASE_AIC
    str         r14, [r14, #AIC_EOICR]

;- Restore SPSR_irq and r0 from IRQ stack
    ldmia       sp!, {r0,r14}
    msr         SPSR_cxsf, r14

;- Restore adjusted  LR_irq from IRQ stack directly in the PC
    ldmia       sp!, {pc}^

;------------------------------------------------------------------------------
;- Exception Vectors
;------------------------------------------------------------------------------
    PUBLIC    AT91F_Default_FIQ_handler
    PUBLIC    AT91F_Default_IRQ_handler
    PUBLIC    AT91F_Spurious_handler

    CODE32      ; Always ARM mode after exeption

AT91F_Default_FIQ_handler
    b         AT91F_Default_FIQ_handler

AT91F_Default_IRQ_handler
    b         AT91F_Default_IRQ_handler

AT91F_Spurious_handler
    b         AT91F_Spurious_handler

    ENDMOD      ;- Terminates the assembly of the current module
    END         ;- Terminates the assembly of the last module in a file

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本一区二区三级电影在线观看| 欧美色手机在线观看| 午夜一区二区三区在线观看| 国产精品久久久久久亚洲伦| 亚洲18女电影在线观看| 亚洲免费伊人电影| 中文字幕字幕中文在线中不卡视频| 欧美国产成人在线| 国产精品国产自产拍高清av| 国产精品久久久久久久久搜平片| 国产精品久线在线观看| 亚洲欧美日韩国产成人精品影院| 亚洲三级在线看| 依依成人综合视频| 日日摸夜夜添夜夜添精品视频| 日产国产欧美视频一区精品| 精品一区二区三区在线观看国产| 国产综合久久久久久久久久久久| 国产成人av影院| 91捆绑美女网站| 欧美人妇做爰xxxⅹ性高电影| 在线播放视频一区| 欧美精品一区在线观看| 国产精品家庭影院| 亚洲国产精品一区二区尤物区| 蜜臀91精品一区二区三区| 国产成人精品午夜视频免费| 99久久99久久精品免费观看 | 99久久精品免费| 色婷婷综合久久久久中文一区二区 | 成人欧美一区二区三区视频网页| 亚洲欧美激情视频在线观看一区二区三区 | 成人黄色av网站在线| 日本大香伊一区二区三区| 3d成人动漫网站| 欧美激情综合网| 亚洲成a人v欧美综合天堂| 国产毛片精品一区| 91黄色免费版| 久久一夜天堂av一区二区三区| 亚洲婷婷国产精品电影人久久| 五月激情六月综合| 9色porny自拍视频一区二区| 日韩一区二区三免费高清| 国产精品黄色在线观看| 蜜臀av一区二区| 欧洲av在线精品| 国产精品久久一卡二卡| 美国欧美日韩国产在线播放| 91麻豆国产精品久久| 久久噜噜亚洲综合| 日本aⅴ亚洲精品中文乱码| 91在线国产福利| 久久精品一区二区三区不卡| 同产精品九九九| 色哟哟一区二区在线观看| 久久久噜噜噜久噜久久综合| 日本系列欧美系列| 欧美自拍偷拍午夜视频| 国产精品国产三级国产| 国产精品一区二区在线看| 欧美一区二区视频免费观看| 亚洲综合区在线| 99久久久国产精品| 国产精品美日韩| 成人综合婷婷国产精品久久蜜臀| 26uuu亚洲综合色| 久久精品久久久精品美女| 欧美精品一卡两卡| 亚洲国产成人av| 欧美日韩高清在线| 一区二区久久久| 99久久99精品久久久久久| **网站欧美大片在线观看| 欧美日韩中字一区| 亚洲免费在线电影| 色老汉av一区二区三区| 一区二区三区中文字幕电影| 成人高清视频免费观看| 亚洲欧洲在线观看av| 99久久精品国产毛片| 亚洲色图欧洲色图婷婷| 在线免费av一区| 天堂蜜桃91精品| 日韩精品中文字幕一区二区三区 | 成人97人人超碰人人99| 日本一区二区久久| www.日韩大片| 一区二区免费在线| 欧美精品三级在线观看| 久久狠狠亚洲综合| 亚洲国产精品黑人久久久| 91亚洲精品久久久蜜桃| 亚洲国产精品久久一线不卡| 91麻豆精品国产91久久久| 久久国产精品无码网站| 欧美韩国日本不卡| 日本道色综合久久| 男男gaygay亚洲| 中文字幕第一区二区| 欧美在线观看视频一区二区三区| 免费在线视频一区| 欧美经典三级视频一区二区三区| 99精品偷自拍| 日本不卡视频在线| 国产女人18水真多18精品一级做 | 蜜桃久久久久久| 国产亚洲精品7777| 91国产成人在线| 国内精品国产成人| 亚洲一区视频在线| 久久精品亚洲乱码伦伦中文 | 日韩精品一区第一页| 欧美va日韩va| 在线观看不卡一区| 国产精品自在在线| 香蕉成人伊视频在线观看| 久久久久国产精品人| 精品视频在线看| 国产成人综合在线观看| 亚洲午夜电影在线观看| 国产精品午夜在线| 日韩欧美一二三四区| 一本久久a久久精品亚洲| 国产在线观看一区二区| 视频一区免费在线观看| 中文字幕日韩一区二区| 久久婷婷综合激情| 欧美日本国产视频| 91高清在线观看| 成人高清视频在线观看| 激情久久五月天| 秋霞影院一区二区| 亚洲国产综合在线| 亚洲久草在线视频| 国产精品福利在线播放| 国产亚洲欧美激情| 精品久久久久久久一区二区蜜臀| 欧美日韩一区高清| 欧洲人成人精品| 色婷婷综合五月| 91浏览器在线视频| 色又黄又爽网站www久久| 成人av一区二区三区| 欧美私模裸体表演在线观看| 99re这里只有精品6| 成人网在线免费视频| 国产成人鲁色资源国产91色综| 激情深爱一区二区| 国产一区二区视频在线播放| 麻豆91在线看| 另类的小说在线视频另类成人小视频在线 | aa级大片欧美| 99免费精品在线观看| av电影在线观看不卡 | 国产精品的网站| 中文字幕人成不卡一区| 亚洲欧美综合另类在线卡通| 中文字幕一区二区在线播放| 中文字幕中文字幕在线一区| 亚洲欧美影音先锋| 亚洲精品免费在线观看| 亚洲制服丝袜在线| 亚洲国产你懂的| 美女视频黄频大全不卡视频在线播放| 日本不卡一二三区黄网| 国产一区在线看| 不卡的电影网站| 91一区在线观看| 欧美精品色综合| 26uuu国产一区二区三区| 国产丝袜欧美中文另类| 亚洲天堂免费在线观看视频| 亚洲乱码国产乱码精品精98午夜 | 色老头久久综合| 欧美三级日本三级少妇99| 666欧美在线视频| 久久一区二区三区国产精品| 中文字幕第一区二区| 亚洲精品久久嫩草网站秘色| 免费精品视频在线| 国产99精品国产| 欧美午夜一区二区三区| 精品国内二区三区| 国产精品国产三级国产普通话蜜臀 | 色吊一区二区三区| 欧美一区二区三区爱爱| 中文一区二区在线观看| 亚洲第一福利一区| 成人免费视频caoporn| 欧美午夜精品免费| 久久综合久久综合久久| 一区二区三国产精华液| 国产一区二区三区在线观看免费 | 久久成人羞羞网站| 91色porny| 久久综合久久综合亚洲| 亚洲第一福利视频在线| 成人网在线免费视频| 欧美一级片免费看|