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

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

?? cstartup.s79

?? 徐愛鈞《iar ewarm嵌入式系統(tǒng)編程與實(shí)踐》隨書光盤中的實(shí)例 北京航空航天大學(xué)出版社
?? S79
字號:
#include "AT91SAM7S64_inc.h"

;-----------------------------------------------------------------------------
; ?RESET
; 復(fù)位向量。通常INTVEC段被連接到0地址,為程序調(diào)試方便,也可以將其放在其它地址。
;-----------------------------------------------------------------------------
		PROGRAM	?RESET
		RSEG	INTRAMSTART_REMAP
		RSEG	INTRAMEND_REMAP

		RSEG	ICODE:CODE:ROOT(2)
		CODE32	; Always ARM mode after reset	
		org	0	
reset:		
;------------------------------------------------------------------------------
;異常向量。
;------------------------------------------------------------------------------
;這些向量可以從0地址或RAM地址讀取,必須采用相對尋址方式以保證跳轉(zhuǎn)指令的合法性。
;如果異常發(fā)生在重映射之前,將導(dǎo)致死循環(huán)。
;------------------------------------------------------------------------------
                B           InitReset           ; 0x00 復(fù)位句柄
undefvec:       B           undefvec            ; 0x04 未定義指令
swivec:         B           swivec              ; 0x08 軟件中斷
pabtvec:        B           pabtvec             ; 0x0C 預(yù)取中止
dabtvec:        B           dabtvec             ; 0x10 數(shù)據(jù)中止
rsvdvec:        B           rsvdvec             ; 0x14 保留
irqvec:         B           IRQ_Handler_Entry   ; 0x18 IRQ
fiqvec:               				; 0x1c FIQ
;------------------------------------------------------------------------------
;- 函數(shù):FIQ_Handler_Entry
;- 說明:FIQ控制器中斷句柄
;- 調(diào)用函數(shù):AIC_FVR[interrupt]
;------------------------------------------------------------------------------
FIQ_Handler_Entry:
;由于FIQ還未被承認(rèn),故切換管理/用戶模式,允許用戶堆棧訪問C代碼。
            mov         r9,r0                  ;保存R0
	    ldr         r0 , [r8, #AIC_FVR]
            msr         CPSR_c,#I_BIT | F_BIT | ARM_MODE_SVC
            stmfd       sp!, { r1-r3, r12, lr} ;將暫存寄存器和鏈接寄存器LR保存在用戶堆棧中
            mov         r14, pc                ;跳轉(zhuǎn)到由AIC_FVR指向的子程序
            bx          r0
            ldmia       sp!, { r1-r3, r12, lr} ;從用戶堆棧中恢復(fù)暫存寄存器和鏈接寄存器LR
            msr         CPSR_c, #I_BIT | F_BIT | ARM_MODE_FIQ ;保持關(guān)中斷,切換回FIQ模式
            mov         r0,r9                  ;恢復(fù)R0
            subs        pc,lr,#4               ;恢復(fù)程序計(jì)數(shù)器PC

InitReset:
;------------------------------------------------------------------------------
;由C函數(shù)AT91F_LowLevelInit完成的底層初始化(PMC, AIC, ? ....)
;------------------------------------------------------------------------------
            	EXTERN   AT91F_LowLevelInit
#define  __iramend 	SFB(INTRAMEND_REMAP)

;最小C初始化,調(diào)用 AT91F_LowLevelInit( void)
            ldr     r13,=__iramend              ;內(nèi)部RAM中的臨時(shí)堆棧
	    ldr	    r0,=AT91F_LowLevelInit      ;通過交互模式直接調(diào)用底層初始化函數(shù)
            mov     lr, pc
	    bx	    r0	
	
;-------------------------------------------------------------------------------------
;定義堆棧大小
;
;采用向量時(shí),中斷堆棧要求 2字 x 8 優(yōu)先級 x 4 字節(jié),假設(shè)為FIQ。
;中斷堆棧必須根據(jù)中斷句柄進(jìn)行調(diào)整。FIQ中斷不需要堆棧,如果用戶程序需要的話,應(yīng)在此定義。
;未定義系統(tǒng)堆棧,它取決于空余內(nèi)部SRAM。
;-------------------------------------------------------------------------------------

;-------------------------------------------------------------------------------------
;定義棧頂
;
;為了提高異常處理和保存/恢復(fù)上下文的速度,中斷和管理隊(duì)?wèi)?zhàn)定位于內(nèi)部存儲器的頂部。
;ARM_MODE_SVC(C應(yīng)用程序)堆棧定位于外部存儲器的頂部。
;-------------------------------------------------------------------------------------
IRQ_STACK_SIZE          EQU     (3*8*4)     ;每個(gè)中斷優(yōu)先級3個(gè)字

ARM_MODE_FIQ            EQU     0x11
ARM_MODE_IRQ            EQU     0x12
ARM_MODE_SVC            EQU     0x13

I_BIT                   EQU     0x80
F_BIT                   EQU     0x40

;-------------------------------------------------------------------------------------
;為各種模式設(shè)置堆棧
;-------------------------------------------------------------------------------------
                ldr     r0, =__iramend
                msr     CPSR_c, #ARM_MODE_FIQ | I_BIT | F_BIT ;設(shè)置FIQ模式及堆棧
            	ldr     r8, =AT91C_BASE_AIC                   ;初始化FIQ寄存器
                msr     CPSR_c, #ARM_MODE_IRQ | I_BIT | F_BIT ;設(shè)置IRQ模式及堆棧
                mov     r13, r0                               ;初始化FIQ堆棧
                sub     r0, r0, #IRQ_STACK_SIZE
                msr     CPSR_c, #ARM_MODE_SVC                 ;允許中斷,設(shè)置管理模式及堆棧
                mov     r13, r0

;---------------------------------------------------------------
; ?CSTARTUP
;---------------------------------------------------------------
		EXTERN	__segment_init
		EXTERN	main

		ldr	r0,=__segment_init                    ;段初始化。
                mov     lr, pc
		bx	r0

		PUBLIC	__main
?jump_to_main:
		ldr	lr,=?call_exit
		ldr	r0,=main
__main:
		bx	r0

;------------------------------------------------------------------------------
;無窮循環(huán)
;
;應(yīng)用結(jié)束,通常不會發(fā)生。也可以跳轉(zhuǎn)到復(fù)位地址( B 0x0 ).
;------------------------------------------------------------------------------
?call_exit:
End
            b       End


;------------------------------------------------------------------------------
;異常管理
;
;該模塊中必須保證異常為ARM模式。
;------------------------------------------------------------------------------
;------------------------------------------------------------------------------
;函數(shù):IRQ_Handler_Entry
;說明:IRQ控制器中斷句柄。
;調(diào)用函數(shù):AIC_IVR[interrupt]
;------------------------------------------------------------------------------
IRQ_Handler_Entry:
            sub         lr, lr, #4              ;異常管理入口,調(diào)整并將LR_irq保存到IRQ堆棧
            stmfd       sp!, {lr}
            mrs         r14, SPSR               ;為嵌套中斷保存SPSR
            stmfd       sp!, {r14}
            stmfd       sp!, {r0}               ;保存R0到IRQ堆棧
            ldr         r14, =AT91C_BASE_AIC
	    ldr         r0 , [r14, #AIC_IVR]
	    str         r14, [r14, #AIC_IVR]
            msr         CPSR_c, #ARM_MODE_SVC   ;開中斷并切換到管理模式
            stmfd       sp!, { r1-r3, r12, r14} ;保存暫存寄存器和鏈接寄存器LR到用戶堆棧
            mov         r14, pc                 ;跳轉(zhuǎn)到由AIC_IVR指向的子程序
            bx          r0
            ldmia       sp!, { r1-r3, r12, r14} ;從用戶堆棧恢復(fù)暫存寄存器和鏈接寄存器LR
            msr         CPSR_c, #I_BIT | ARM_MODE_IRQ ;關(guān)中斷并切換到IRQ模式
            ldr         r14, =AT91C_BASE_AIC    ;在AIC中標(biāo)志中斷結(jié)束
            str         r14, [r14, #AIC_EOICR]
            ldmia       sp!, {r0}                ;恢復(fù)R0
            ldmia       sp!, {r14}               ;從IRQ堆棧恢復(fù)SPSR_irq和R0
            msr         SPSR_cxsf, r14
            ldmia       sp!, {pc}^               ;從IRQ堆棧中直接將調(diào)整過的LR_irq恢復(fù)到PC
	
;-----------------------------------------------------------------------------------------------
;?EXEPTION_VECTOR
;該模塊僅在需要關(guān)閉文件時(shí)才被連接。
;-----------------------------------------------------------------------------------------------
		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

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一二三在线| 在线精品视频小说1| 五月激情六月综合| 久久这里只有精品首页| 欧美亚洲自拍偷拍| 成人国产精品免费观看动漫| 亚洲精品乱码久久久久久 | 国产麻豆精品视频| 亚洲一区二区不卡免费| 亚洲男同1069视频| 亚洲丝袜另类动漫二区| 国产欧美综合在线观看第十页| 91精品国产91热久久久做人人 | 欧美bbbbb| 日韩 欧美一区二区三区| 亚洲一二三级电影| 亚洲精品久久久蜜桃| 国产精品久久久久影院色老大| 国产精品色哟哟| 国产精品久久久久久久裸模 | 亚洲福利一区二区| 亚洲人妖av一区二区| 亚洲人成网站在线| 一区二区不卡在线视频 午夜欧美不卡在| 精品久久久网站| 国产精品麻豆久久久| 中文字幕日韩精品一区| 国产精品久久国产精麻豆99网站| 欧美国产成人在线| 亚洲在线视频网站| 美女视频一区在线观看| 美脚の诱脚舐め脚责91 | 无码av免费一区二区三区试看| 日本成人中文字幕在线视频| 蜜桃视频第一区免费观看| 日本在线不卡视频| 精品影视av免费| 9l国产精品久久久久麻豆| 一本大道久久a久久精二百 | 日韩视频免费观看高清完整版| 337p亚洲精品色噜噜狠狠| 日韩一区二区三区在线| 精品国免费一区二区三区| 欧美成人一级视频| 亚洲人成精品久久久久久| 亚洲一区二区三区影院| 蜜桃视频免费观看一区| 国产一区二区三区免费播放| 成人sese在线| 国产色产综合色产在线视频| 亚洲欧洲制服丝袜| 成人中文字幕在线| 日韩午夜av电影| 中文字幕中文在线不卡住| 爽好久久久欧美精品| 狠狠色狠狠色综合| 欧美人牲a欧美精品| 亚洲婷婷综合久久一本伊一区| 精品一区二区三区免费观看| 国产成人精品免费看| 欧美美女一区二区| 亚洲免费观看高清完整版在线观看| 蜜臀av性久久久久蜜臀aⅴ四虎 | 在线91免费看| 亚洲一区二区三区视频在线播放 | 99久久精品久久久久久清纯| 久久在线观看免费| 国产成人av电影在线| 欧美高清在线视频| 丰满放荡岳乱妇91ww| 日本一区二区免费在线 | 亚洲猫色日本管| 色综合天天视频在线观看| 亚洲精品国产a| 欧美四级电影在线观看| 国产精品―色哟哟| 日本黄色一区二区| 一区二区三区成人| 色婷婷国产精品| 性欧美大战久久久久久久久| 91精品国产入口| 成人一级片在线观看| 欧美激情一区二区三区在线| 国产麻豆午夜三级精品| 国产伦精一区二区三区| 久久久精品综合| 国产精品白丝jk黑袜喷水| 老司机精品视频线观看86| 欧美一区永久视频免费观看| 国内精品在线播放| 国产精品久久久久久久久搜平片| 不卡av在线网| 一区二区三区高清不卡| 日韩亚洲国产中文字幕欧美| 久久99在线观看| 亚洲精品欧美专区| 精品国产制服丝袜高跟| 国产成人精品一区二区三区网站观看| 国产精品国产自产拍在线| 91麻豆国产香蕉久久精品| 水野朝阳av一区二区三区| 国产精品久久久久久久午夜片| 欧美一区二区三区在线视频| 国产suv精品一区二区6| 亚洲综合区在线| 国产精品久久久久一区二区三区 | 美女一区二区视频| 午夜精品视频在线观看| 欧美国产一区在线| 日韩精品一区二区三区视频| 972aa.com艺术欧美| 久久超碰97中文字幕| 国产精品久久久久久久岛一牛影视| 91麻豆精品国产自产在线观看一区| 国产精品77777竹菊影视小说| 日本不卡免费在线视频| 欧亚洲嫩模精品一区三区| 亚洲一区二区在线免费看| 国产欧美一区二区精品性| 欧美日韩国产欧美日美国产精品| 美女视频免费一区| 午夜在线电影亚洲一区| 亚洲乱码国产乱码精品精小说| 亚洲精品一区二区三区99| 日韩欧美你懂的| 精品国产电影一区二区| 亚洲精品国产视频| 日韩一区欧美二区| 久久精品国产一区二区三| 丝袜美腿高跟呻吟高潮一区| 日本不卡一二三| 日韩av中文在线观看| 久久99精品久久久久久动态图| 国产一区二区三区观看| 国产91精品一区二区麻豆亚洲| 久久99久久久久久久久久久| 日韩不卡一区二区三区| 久久国产免费看| 国产精品99精品久久免费| 精品系列免费在线观看| 国产一区美女在线| 成人看片黄a免费看在线| 色综合久久综合网| 日韩一区二区中文字幕| 亚洲三级在线观看| 韩国av一区二区三区四区| 成人激情免费视频| 日韩欧美国产一区二区在线播放 | 97超碰欧美中文字幕| 在线观看欧美日本| 欧美tk—视频vk| 视频一区视频二区中文| 蜜臀av性久久久久蜜臀aⅴ四虎| yourporn久久国产精品| 欧美大黄免费观看| 日韩黄色片在线观看| 风流少妇一区二区| 日韩欧美成人一区二区| 亚洲精品免费在线观看| 免费xxxx性欧美18vr| 99久久久精品免费观看国产蜜| 欧美日韩精品专区| 国产精品伦理一区二区| 爽好多水快深点欧美视频| 成人免费va视频| 欧美大黄免费观看| 亚洲国产精品久久不卡毛片 | 国产精品 日产精品 欧美精品| 欧美视频在线观看一区| 综合激情网...| 91在线播放网址| 久久久精品欧美丰满| 极品美女销魂一区二区三区免费| 欧美一区二区不卡视频| 亚洲影院免费观看| 9191国产精品| 日韩av一区二区三区四区| 99久久精品国产一区二区三区 | 欧美伊人久久久久久久久影院| 国产精品麻豆久久久| 成人免费视频免费观看| 亚洲手机成人高清视频| 成人av电影在线播放| 日本免费在线视频不卡一不卡二| 在线观看日韩电影| 亚洲国产日日夜夜| 7777精品伊人久久久大香线蕉超级流畅 | 久久日韩精品一区二区五区| 国产精品影视在线| 中文在线一区二区| 成人小视频在线| 亚洲第一成年网| 日韩欧美亚洲一区二区| 国产成人精品免费在线| 亚洲免费在线视频| 日韩免费高清视频| 99精品国产视频| 日韩va欧美va亚洲va久久| 国产亚洲精品7777| 日韩欧美的一区|