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

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

?? cstartup.s79

?? IAR 平臺ATMEL 的例程, 和說明
?? S79
字號:
;------------------------------------------------------------------------------
;-         ATMEL Microcontroller Software Support  -  ROUSSET  -
;------------------------------------------------------------------------------
; The software is delivered "AS IS" without warranty or condition of any
; kind, either express, implied or statutory. This includes without
; limitation any warranty or condition with respect to merchantability or
; fitness for any particular purpose, or against the infringements of
; intellectual property rights of others.
;-----------------------------------------------------------------------------
;- File source          : Cstartup.s79
;- Object               : Generic CStartup for IAR No Use REMAP
;- Compilation flag     : None
;-
;- 1.0 15/Sep/05 JPP    : Creation
;------------------------------------------------------------------------------

#include "AT91SAM7S321_inc.h"

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

;---------------------------------------------------------------
; ?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
		RSEG	INTRAMSTART_REMAP
		RSEG	INTRAMEND_REMAP

		RSEG	ICODE:CODE:ROOT(2)
		CODE32	; Always ARM mode after reset	
		org	0	
reset		
;------------------------------------------------------------------------------
;- 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 | F_BIT | 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 | F_BIT | 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


InitReset:
;------------------------------------------------------------------------------
;- Low level Init (PMC, AIC, ? ....) by C function AT91F_LowLevelInit
;------------------------------------------------------------------------------
            	EXTERN   AT91F_LowLevelInit

#define  __iramend 	SFB(INTRAMEND_REMAP)

;- minumum C initialization
;- call  AT91F_LowLevelInit( void)

            ldr     r13,=__iramend            ; temporary stack in internal RAM
;--Call Low level init function in ABSOLUTE through the Interworking
	    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 management.
;- 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 definehere.
;- The System stack size is not defined and is limited by the free internal
;- SRAM.
;------------------------------------------------------------------------------

;------------------------------------------------------------------------------
;- 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 per interrupt priority level

ARM_MODE_FIQ            EQU     0x11
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 Fast Interrupt Mode and set FIQ Mode Stack
                msr     CPSR_c, #ARM_MODE_FIQ | I_BIT | 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 | 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
                mov     r13, r0


;---------------------------------------------------------------
; ?CSTARTUP
;---------------------------------------------------------------
		EXTERN	__segment_init
		EXTERN	main
; 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).
		ldr	r0,=__segment_init
                mov     lr, pc
		bx	r0

		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
;---------------
;- 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 SPSR need to be saved for nested interrupt
            mrs         r14, SPSR
            stmfd       sp!, {r14}

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

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

;- Restore R0
            ldmia       sp!, {r0}

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

;- Restore adjusted  LR_irq from IRQ stack directly in the PC
            ldmia       sp!, {pc}^
	
;---------------------------------------------------------------
; ?EXEPTION_VECTOR
; This module is only linked if needed for closing files.
;---------------------------------------------------------------
		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

	END

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区二区三区四区在线观看| 欧美高清视频一二三区 | 狠狠色丁香九九婷婷综合五月| 精品噜噜噜噜久久久久久久久试看 | 亚洲精品中文在线| 欧美日韩亚洲国产综合| 国产一区二区电影| 亚洲地区一二三色| 久久久久久久久97黄色工厂| 国产成人av电影| 日本91福利区| 一区二区国产盗摄色噜噜| 精品国精品国产| 在线这里只有精品| 日韩高清在线不卡| 欧美国产精品一区| 91精品国产综合久久久蜜臀图片| 国产乱人伦偷精品视频免下载 | 亚洲色图19p| 日韩欧美国产综合| 欧美在线观看你懂的| 成人激情动漫在线观看| 日韩制服丝袜先锋影音| 亚洲区小说区图片区qvod| 久久久久久亚洲综合| 欧美一区二区三区视频| 精品1区2区3区| 日本韩国一区二区三区视频| 成人一区二区三区视频在线观看| 麻豆国产精品官网| 香港成人在线视频| 亚洲精品国产品国语在线app| 欧美国产日韩在线观看| 欧美激情一区在线观看| 欧美国产精品久久| 日韩毛片在线免费观看| 久久夜色精品一区| 久久久国产精品麻豆| 久久久高清一区二区三区| 国产日韩精品久久久| 国产精品久久久久久久久免费桃花 | 久久99精品久久久久久国产越南| 午夜精品一区二区三区免费视频 | 久久国产精品免费| 亚洲国产精品传媒在线观看| 日韩一区二区麻豆国产| 午夜精品免费在线观看| 日本一区二区三区免费乱视频| 欧美精品一区二区三区高清aⅴ | 黑人精品欧美一区二区蜜桃| 成人白浆超碰人人人人| 欧美精品视频www在线观看| 国产清纯白嫩初高生在线观看91 | 亚洲综合激情网| 国产精品一区专区| 欧美图片一区二区三区| 久久久久亚洲蜜桃| 青青草精品视频| 91美女片黄在线观看| 日韩欧美中文字幕一区| 亚洲综合丝袜美腿| 成人在线视频一区二区| 日韩欧美二区三区| 亚洲国产精品一区二区尤物区| 成人免费不卡视频| 欧美精品一区在线观看| 日本欧美一区二区| 91福利国产成人精品照片| 国产精品久久久久久户外露出 | 欧美日韩精品一二三区| 亚洲激情av在线| 欧美日韩国产精品成人| 国产精品毛片大码女人| 粉嫩绯色av一区二区在线观看| 欧美tk—视频vk| 国产成人99久久亚洲综合精品| 日韩欧美国产精品一区| 国内成人精品2018免费看| 日韩一卡二卡三卡四卡| 激情综合五月天| 久久婷婷国产综合精品青草| 国产一区二区伦理片| 久久中文娱乐网| 东方欧美亚洲色图在线| 国产精品女人毛片| 欧美精品亚洲二区| 国精产品一区一区三区mba桃花| 26uuu国产在线精品一区二区| 国产一区二区三区国产| 中文字幕一区二区日韩精品绯色| 成人国产电影网| 丝袜亚洲另类欧美综合| 精品毛片乱码1区2区3区| a级精品国产片在线观看| 亚洲综合图片区| 欧美极品美女视频| 欧亚一区二区三区| 国产剧情一区二区三区| 一区二区三区毛片| 日本一区二区三区四区在线视频| 欧洲一区二区三区在线| 精品伊人久久久久7777人| 亚洲综合偷拍欧美一区色| 99麻豆久久久国产精品免费| 亚洲国产三级在线| 国产亚洲成av人在线观看导航| 欧美三级视频在线观看| 成人性生交大片免费| 麻豆精品视频在线观看视频| 亚洲精品免费在线观看| 久久久久久久精| 欧美一区二区视频网站| 色噜噜偷拍精品综合在线| 国产精品一线二线三线精华| 午夜精品久久久久影视| 一区二区三区欧美| 日本一区二区视频在线| 欧美激情中文字幕| 欧美午夜电影网| 色综合天天做天天爱| 国产999精品久久久久久| 久久不见久久见免费视频1| 亚洲超碰97人人做人人爱| 亚洲香蕉伊在人在线观| 夜夜精品视频一区二区| 亚洲国产精品一区二区尤物区| 中文字幕在线不卡一区二区三区| 国产日韩v精品一区二区| 精品国产欧美一区二区| www精品美女久久久tv| 久久久久久99精品| 成人免费在线观看入口| 亚洲午夜久久久久中文字幕久| 亚洲午夜视频在线| 日本不卡高清视频| 国产在线播精品第三| 成人一区二区三区中文字幕| 99精品欧美一区二区蜜桃免费 | 一本大道久久a久久精品综合| 99久久精品一区| 91麻豆精品国产91久久久久| 9191成人精品久久| 精品福利av导航| 亚洲图片你懂的| 麻豆国产精品视频| 波多野结衣欧美| 91精品婷婷国产综合久久竹菊| xfplay精品久久| 亚洲国产精品一区二区尤物区| 久久国产精品99久久久久久老狼 | www国产成人| 亚洲另类色综合网站| 精品一区二区三区久久久| 95精品视频在线| 日韩视频免费直播| 亚洲色图欧美在线| 国产精品一级在线| 欧美日韩mp4| 亚洲日本欧美天堂| 国产成人小视频| 日韩一区二区三区视频| 一区二区三区在线观看国产| 大尺度一区二区| 制服丝袜亚洲色图| 一区二区三区产品免费精品久久75| 精品一区二区三区久久久| 欧美日韩精品福利| 亚洲精品免费视频| 不卡的看片网站| 久久久影院官网| 狠狠色丁香九九婷婷综合五月| 欧美日韩日日骚| 亚洲尤物视频在线| 色狠狠一区二区| 亚洲综合在线电影| 欧美在线观看视频一区二区| 亚洲丝袜精品丝袜在线| 99久久99久久精品免费看蜜桃 | 久99久精品视频免费观看| 欧美精品99久久久**| 欧美aaaaaa午夜精品| 日韩欧美国产综合一区| 国产一区二区三区四区在线观看| 欧美成人女星排名| 国产精品99久久久久久似苏梦涵 | 欧美男男青年gay1069videost| 亚洲国产精品一区二区尤物区| 69p69国产精品| 国产在线精品一区二区不卡了| 久久久久国产精品免费免费搜索| 国产精品综合在线视频| 国产精品美女久久福利网站| 91麻豆国产自产在线观看| 亚洲国产欧美日韩另类综合 | 另类小说一区二区三区| 久久综合狠狠综合久久激情| 大胆欧美人体老妇| 亚洲一区在线视频观看| 精品国产青草久久久久福利| 91欧美一区二区|