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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? cstartup.s

?? AT91SAm7s64的LED程序
?? S
字號:
;-----------------------------------------------------------------------------
;- File source        : Cstartup.arm
;- 文件名             : Cstartup.s
;- 環(huán)境               : Generic CStartup for ARM ADS 1.2 and SAM7
;- 功能               : Defines standard boot for the board
;                       according to the software development tools used.
;- 日期(版本)         : 2008.12.04
;- 作者               : 102
;------------------------------------------------------------------------------


		INCLUDE		include/AT91SAM7S64.inc
		
		

;--------------------------------
;- ARM Core Mode and Status Bits
;--------------------------------

ARM_MODE_USER           EQU     0x10
ARM_MODE_FIQ            EQU     0x11
ARM_MODE_IRQ            EQU     0x12
ARM_MODE_SVC            EQU     0x13
ARM_MODE_ABORT          EQU     0x17
ARM_MODE_UNDEF          EQU     0x1B
ARM_MODE_SYS            EQU     0x1F

I_BIT                   EQU     0x80
F_BIT                   EQU     0x40
T_BIT                   EQU     0x20



;------------------------------------------------------------------------------
;- Area Definition
;------------------------------------------------------------------------------

                AREA        reset, CODE, READONLY
                ENTRY
				EXPORT		entry
entry
;------------------------------------------------------------------------------
;- 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.
;------------------------------------------------------------------------------

                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               				; 0x1c FIQ
;------------------------------------------------------------------------------
;- Function             : FIQ_Handler_Entry
;- Treatments           : FIQ Controller Interrupt Handler.
;- Called Functions     : AIC_FVR[interrupt] 
;------------------------------------------------------------------------------
FIQ_Handler_Entry

;- Switch in SVC/User Mode to allow User Stack access for C code 
; because the FIQ is not yet acknowledged

;- Save and r0 in FIQ_Register 
            mov         r9,r0
	    ldr         r0 , [r8, #AIC_FVR]
            msr         CPSR_c,#I_BIT :OR: F_BIT :OR: ARM_MODE_SVC

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

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

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

;- Leave Interrupts disabled and switch back in FIQ mode
            msr         CPSR_c, #I_BIT :OR: F_BIT :OR: ARM_MODE_FIQ

;- Restore the R0 ARM_MODE_SVC register 
            mov         r0,r9

;- Restore the Program Counter using the LR_fiq directly in the PC
            subs        pc,lr,#4

;--------------------
;- The reset handler
;--------------------
InitReset
;------------------------------------------------------------------------------
;- Low level Init (APMC, AIC, EBI, ....) by C function AT91F_LowLevelInit
;------------------------------------------------------------------------------
            IMPORT   AT91F_LowLevelInit

;- minimum  C initialization

            ldr     r13,=0x00204000    ; temporary stack in internal Ram
	    ldr	    r0,=AT91F_LowLevelInit
            mov     lr, pc
	    bx	    r0

;------------------------------------------------------------------------------
;- Stack Sizes Definition
;------------------------
;- Interrupt Stack requires 2 words x 8 priority level x 4 bytes when using
;- the vectoring. This assume that the IRQ_ENTRY/IRQ_EXIT macro are used.
;- The Interrupt Stack must be adjusted depending on the interrupt handlers.
;- Fast Interrupt not requires stack If in your application it required you must
;- be define here.
;- Other stacks are defined by default to save one word each.
;- The System stack size is not defined and is limited by the free internal
;- SRAM.
;- User stack size is not defined and is limited by the free external SRAM.
;------------------------------------------------------------------------------

IRQ_STACK_SIZE      EQU     (2*8*4)     ; 2 words per interrupt priority level


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

;- Set up Fast Interrupt Mode and set FIQ Mode Stack
                msr     CPSR_c, #ARM_MODE_FIQ:OR:I_BIT:OR:F_BIT
;- Init the FIQ register
            	ldr     r8, =AT91C_BASE_AIC

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

;- Set up Supervisor Mode and set Supervisor Mode Stack
                msr     CPSR_c, #ARM_MODE_SVC
                mov     r13, r0                     ; Init stack Sup


;------------------------------------------------------------------------------
;- Branch on C code Main function (with interworking)
;----------------------------------------------------
;- Branch must be performed by an interworking call as either an ARM or Thumb
;- main C function must be supported. This makes the code not position-
;- independent. A Branch with link would generate errors
;------------------------------------------------------------------------------
                IMPORT      __main

                ldr         r0, =__main
                mov         lr, pc
                bx          r0

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

;------------------------------------------------------------------------------
;- Manage exception
;---------------
;- This module 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 and r0 in IRQ stack
            stmfd       sp!, {r0}

;- 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

;- 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 :OR: 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}

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

;------------------------------------------------------------------------------
;- Manage exception
;---------------
;- The exception must be ensure in ARM mode
;------------------------------------------------------------------------------

            EXPORT AT91F_Default_FIQ_handler
AT91F_Default_FIQ_handler
            b     AT91F_Default_FIQ_handler


    		EXPORT AT91F_Default_IRQ_handler
AT91F_Default_IRQ_handler
            b     AT91F_Default_IRQ_handler

	         EXPORT AT91F_Spurious_handler
AT91F_Spurious_handler
            b     AT91F_Spurious_handler

    END

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品自拍偷拍| 一区二区三区不卡视频| 亚洲免费观看高清在线观看| 日韩高清在线电影| 99精品欧美一区二区三区小说 | 精品国内二区三区| 亚洲黄色在线视频| 成人综合婷婷国产精品久久免费| 欧美日韩国产免费一区二区| 国产精品久久99| 久久精品国产精品亚洲红杏| 色婷婷久久综合| 国产精品青草久久| 国内精品写真在线观看| 91精品国产综合久久精品麻豆| 国产精品久久久久7777按摩| 韩日av一区二区| 在线综合视频播放| 亚洲国产你懂的| 91色婷婷久久久久合中文| 国产色综合一区| 精东粉嫩av免费一区二区三区| 欧美丰满高潮xxxx喷水动漫| 亚洲女同一区二区| 懂色一区二区三区免费观看| 久久久久久久久久久久久久久99| 奇米影视在线99精品| 欧美日韩精品系列| 一区二区三区在线视频播放| 99国产精品久久久久久久久久久| 国产校园另类小说区| av一二三不卡影片| 国产精品久久久久久久裸模 | 国产亚洲精品7777| 国产精品一区三区| 久久精品一区四区| 岛国精品在线观看| 国产精品传媒入口麻豆| 不卡免费追剧大全电视剧网站| 国产日韩v精品一区二区| 国产成a人亚洲| 国产性色一区二区| 99久久99久久精品免费看蜜桃| 国产精品欧美极品| 色欧美片视频在线观看| 一区二区免费看| 91精品国产综合久久蜜臀| 九九视频精品免费| 国产精品网站导航| 色哟哟亚洲精品| 日韩不卡一区二区三区| 欧美大片免费久久精品三p| 国产丶欧美丶日本不卡视频| 国产精品九色蝌蚪自拍| 欧美日韩国产小视频| 精彩视频一区二区| ...xxx性欧美| 欧美一区二区三区男人的天堂| 久久99精品国产.久久久久久| 国产亚洲自拍一区| 精品视频一区三区九区| 极品少妇xxxx偷拍精品少妇| 久久亚洲一区二区三区四区| 99re热这里只有精品视频| 视频在线观看91| 中文字幕成人网| 欧美日韩国产一区| 国产成人自拍网| 亚欧色一区w666天堂| 国产日产欧美一区| 欧美图区在线视频| 成人国产精品免费| 日韩福利视频导航| 奇米色一区二区| 亚洲欧洲韩国日本视频| 日韩一区二区高清| 在线精品亚洲一区二区不卡| 国产乱子轮精品视频| 亚洲国产精品久久人人爱蜜臀 | 国产精品1区二区.| 午夜亚洲福利老司机| 日本一区二区不卡视频| 91精品国产综合久久久久久久| 国产99久久久国产精品| 日本亚洲免费观看| 亚洲一区二区高清| 中文字幕视频一区二区三区久| 日韩一区二区三区在线观看| 欧洲精品在线观看| av中文字幕亚洲| 国产精品综合在线视频| 亚洲aaa精品| 亚洲欧美另类久久久精品 | 成人免费看片app下载| 免费的成人av| 丝袜国产日韩另类美女| 18成人在线视频| 国产欧美日韩视频在线观看| 日韩欧美国产三级| 日韩一级大片在线| 欧美精品第一页| 欧美日韩视频不卡| 欧美亚一区二区| 色婷婷综合在线| 99久久精品国产一区| 成人激情动漫在线观看| 国产电影精品久久禁18| 国产精品一级在线| 国产福利91精品| 国产超碰在线一区| 粉嫩13p一区二区三区| 成人午夜伦理影院| av电影在线观看不卡 | 美女一区二区视频| 日韩成人午夜精品| 老鸭窝一区二区久久精品| 日韩福利视频网| 日本欧美肥老太交大片| 午夜精品爽啪视频| 国产伦精品一区二区三区免费 | 色综合天天视频在线观看 | 91精品国产色综合久久ai换脸| 欧美性欧美巨大黑白大战| 欧美做爰猛烈大尺度电影无法无天| 91蝌蚪porny| 欧美在线观看18| 日韩一区二区不卡| 久久久久国产精品人| 国产精品二三区| 亚洲成人动漫在线观看| 美女视频黄频大全不卡视频在线播放| 欧美a级理论片| 国产精品一区在线观看你懂的| 国产激情精品久久久第一区二区 | 日韩欧美在线1卡| 久久美女高清视频| 日韩久久一区二区| 午夜视频一区二区三区| 裸体健美xxxx欧美裸体表演| 国产在线精品一区在线观看麻豆| 国产精品一二三在| 日本电影欧美片| 日韩欧美亚洲一区二区| 国产欧美一区二区精品婷婷| 亚洲柠檬福利资源导航| 日韩高清一区在线| 成人午夜免费电影| 91精品国产综合久久精品app| 国产欧美日韩一区二区三区在线观看| 亚洲欧美日韩国产一区二区三区| 奇米色一区二区| 日韩免费电影一区| 中文字幕一区二区视频| 日韩高清中文字幕一区| 99精品国产91久久久久久| 欧美一区二区免费| 亚洲人成精品久久久久久| 久久国产精品色婷婷| 99久久综合99久久综合网站| 欧美一卡在线观看| 亚洲人成亚洲人成在线观看图片| 日本va欧美va精品发布| 91免费观看视频| 久久嫩草精品久久久精品| 亚洲一区二区三区四区在线免费观看 | 94-欧美-setu| 日韩欧美亚洲一区二区| 一区二区三区成人在线视频| 国产乱人伦精品一区二区在线观看| 欧美撒尿777hd撒尿| 国产精品久99| 国产成人福利片| 日韩欧美一卡二卡| 三级影片在线观看欧美日韩一区二区| 国产成人精品影视| 欧美zozozo| 奇米亚洲午夜久久精品| 欧美色图一区二区三区| 一区在线观看免费| 国产99久久精品| 久久精品一区二区三区av| 日本在线不卡视频一二三区| 欧美午夜精品一区二区蜜桃| 亚洲精选免费视频| 成人性色生活片| 日本一区二区三级电影在线观看| 久久电影国产免费久久电影| 91超碰这里只有精品国产| 亚洲乱码国产乱码精品精98午夜| 成人sese在线| 中文字幕在线不卡一区二区三区| 国产精品综合av一区二区国产馆| 日韩午夜激情av| 老司机精品视频在线| 日韩一区二区免费高清| 蜜桃一区二区三区在线| 日韩欧美一二三| 国产精品影视天天线| 亚洲国产精品传媒在线观看| 国产成人在线视频网址|