?? samboot.s
字號:
;/****************************************************************************************************************/
;/********************* Startup code for AT91SAM7S ***************************************************************/
;/ hotislandn@hotmail.com /
;/ WWW.MCUZONE.COM
;/
;/ Rev 0.1 /
;/****************************************************************************************************************/
MODUSR EQU 0x10
MODSYS EQU 0x1F
MODSVC EQU 0x13
MODABT EQU 0x17
MODUDF EQU 0x1B
MODIRQ EQU 0x12
MODFIQ EQU 0x11
IRQBIT EQU 0x80
FIQBIT EQU 0x40
RAMEND EQU 0x00204000 ; S64 : 16KB RAM
VECTSIZE EQU 0x100 ; 駐留RAM的向量區(qū)域定為256字節(jié)
UsrStkSz EQU 8 ; size of USR stack
SysStkSz EQU 128 ; size of SYS stack
SvcStkSz EQU 8 ; size of SVC stack
UdfStkSz EQU 8 ; size of UDF stack
AbtStkSz EQU 8 ; size of ABT stack
IrqStkSz EQU 128 ; size of IRQ stack
FiqStkSz EQU 16 ; size of FIQ stack
PRESERVE8
AREA START, CODE, READONLY
CODE32
ENTRY
EXPORT RESET
RESET
B SYSINIT ; Reset
B UDFHANDLER ; UNDEFINED
B SWIHANDLER ; SWI
B PABTHANDLER ; PREFETCH ABORT
B DABTHANDLER ; DATA ABORT
B . ; RESERVED
LDR PC,[PC,#-0xF20]
B . ; ADD FIQ CODE HERE
;---------------------------------------------------------------------------------------------------------
;******************** 向量模式IRQ處理代碼 ****************************************************************
;---------------------------------------------------------------------------------------------------------
IMPORT OSIntNesting
IMPORT OSIntExit
IMPORT SAMIsr
EXPORT VECTORED_IRQ_HANDLER
VECTORED_IRQ_HANDLER
;---------------------------------------------------------------------------------------------------------
;******************** 運行于IRQ模式的代碼 ****************************************************************
;---------------------------------------------------------------------------------------------------------
STMFD sp,{r0-r4} ; 不修改SP_IRQ的值
SUB r0,sp,#20 ; R0指向棧底
SUB r1,lr,#4 ; R1=返回地址
MRS r2,SPSR ; R2=SPSR
LDR r3,=OSIntNesting ; OSIntNesting++
LDRB r4,[r3]
ADD r4,r4,#1
STRB r4,[r3]
MSR CPSR_cxsf,#0x9f ; Sys Mode , IRQ disable ,FIQ enable
; 關(guān)閉IRQ,保存被中斷任務(wù)的上下文到任務(wù)堆棧,SP_SYS
;---------------------------------------------------------------------------------------------------------
;******************** 其余代碼運行于SYS模式 **************************************************************
;---------------------------------------------------------------------------------------------------------
STMFD sp!,{r1} ; PC
STMFD sp!,{lr} ; lr
STMFD sp!,{r5-r12} ; r12---r5
LDMIA r0!,{r5-r9} ; 取得保存在IRQ堆棧中的R0---R4
STMFD sp!,{r5-r9} ; r4---r0
STMFD sp!,{r2} ; cpsr
STMFD sp!,{r2} ; spsr
LDR r0,=0xFFFFF108 ; AT91C_AIC_ISR
LDR r0,[r0]
;LDR lr,=ISR_RETURN1
ADD lr,PC,#4
MSR CPSR_cxsf,#0x1f ; Sys Mode , IRQ enable ,FIQ enable
LDR PC,=SAMIsr
;BL SAMIsr
ISR_RETURN1
;LDR lr,=ISR_RETURN2
MOV lr,PC
LDR PC,=OSIntExit
;BL OSIntExit
ISR_RETURN2
LDMFD sp!,{r0} ; spsr
LDMFD sp!,{r0} ; cpsr
MSR CPSR_cxsf,r0
LDMFD sp!,{r0-r12,lr,pc} ; 任務(wù)返回
;---------------------------------------------------------------------------------------------------------
;******************** reentrant 代碼 *********************************************************************
;---------------------------------------------------------------------------------------------------------
;---------------------------------------------------------------------------------------------------------
;******************** 其余的處理器異常 *******************************************************************
;---------------------------------------------------------------------------------------------------------
UDFHANDLER
B .
SWIHANDLER
B .
PABTHANDLER
B .
DABTHANDLER
B .
;/****************************************************************************************************************/
SYSINIT
;設(shè)置各模式堆棧,關(guān)閉IRQ,FIQ
MRS R0,CPSR
BIC R0,R0,#0x1F
MOV R2,#RAMEND
ORR R1,R0,#(MODSVC :OR: IRQBIT :OR: FIQBIT)
MSR cpsr_cxsf,R1 ; ENTER SVC MODE
MOV sp,R2
SUB R2,R2,#SvcStkSz
ORR R1,R0,#(MODFIQ :OR: IRQBIT :OR: FIQBIT)
MSR CPSR_cxsf,R1 ; ENTER FIQ MODE
MOV sp,R2
SUB R2,R2,#FiqStkSz
ORR R1,R0,#(MODIRQ :OR: IRQBIT :OR: FIQBIT)
MSR CPSR_cxsf,R1 ; ENTER IRQ MODE
MOV sp,R2
SUB R2,R2,#IrqStkSz
ORR R1,R0,#(MODUDF :OR: IRQBIT :OR: FIQBIT)
MSR CPSR_cxsf,R1 ; ENTER UDF MODE
MOV sp,R2
SUB R2,R2,#UdfStkSz
ORR R1,R0,#(MODABT :OR: IRQBIT :OR: FIQBIT)
MSR CPSR_cxsf,R1 ; ENTER ABT MODE
MOV sp,R2
SUB R2,R2,#AbtStkSz
;ORR R1,R0,#(MODUSR :OR: IRQBIT :OR: FIQBIT)
;MSR CPSR_cxsf,R1 ; ENTER USR MODE
;MOV sp,R2
;SUB R2,R2,#UsrStkSz
ORR R1,R0,#(MODSYS :OR: IRQBIT :OR: FIQBIT)
MSR CPSR_cxsf,R1 ; ENTER SYS MODE
MOV sp,R2 ; 于SYS模式運行代碼
;/****************************************************************************************************************/
; 復(fù)位后有16sec的時間禁止WDT
;/****************************************************************************************************************/
IMPORT |Image$$RO$$Base|
IMPORT |Image$$RO$$Limit|
IMPORT |Image$$RW$$Base|
IMPORT |Image$$RW$$Limit|
IMPORT |Image$$ZI$$Base|
IMPORT |Image$$ZI$$Limit|
; 復(fù)制向量
COPY_VECT_TO_RAM
LDR R0,=|Image$$RO$$Base|
LDR R1,=SYSINIT
LDR R2,=0x200000 ; RAM START
0
CMP R0,R1
LDRLO R3,[R0],#4
STRLO R3,[R2],#4
BLO %B0
;/****************************************************************************************************************/
; RW , ZI 初始化
LDR R0,=|Image$$RO$$Limit|
LDR R1,=|Image$$RW$$Base|
LDR R2,=|Image$$ZI$$Base|
1
CMP R1,R2
LDRLO R3,[R0],#4
STRLO R3,[R1],#4
BLO %B1
MOV R3,#0
LDR R1,=|Image$$ZI$$Limit|
2
CMP R2,R1
STRLO R3,[R2],#4
BLO %B2
;/****************************************************************************************************************/
; 如必要,復(fù)制代碼到RAM中運行
; 適用于代碼小,但對速度要求高的場合
COPY_BEGIN
LDR R0,=0x200000
LDR R1,=RESET ; =|Image$$RO$$Base|
CMP R1,R0 ;
BLO COPY_END ; RO不在RAM中
ADR R0,RESET
ADR R2,COPY_END
SUB R0,R2,R0
ADD R1,R1,R0
LDR R3,=|Image$$RO$$Limit|
3
CMP R1,R3
LDRLO R4,[R2],#4
STRLO R4,[R1],#4
BLO %B3
LDR PC,=COPY_END
COPY_END
;/****************************************************************************************************************/
; 跳轉(zhuǎn)到Main(!)
IMPORT Main
LDR PC,=Main
B .
;/****************************************************************************************************************/
END
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧洲一区二区在线播放|
五月天视频一区|
亚洲成av人在线观看|
国产精品一区二区久激情瑜伽|
91一区二区在线|
久久精子c满五个校花|
日韩中文字幕av电影|
99久久综合国产精品|
精品国产在天天线2019|
午夜不卡av在线|
色88888久久久久久影院野外|
久久久久久久久免费|
日韩国产欧美一区二区三区|
色偷偷久久一区二区三区|
国产欧美日韩久久|
看电视剧不卡顿的网站|
欧美肥胖老妇做爰|
亚洲一区精品在线|
色先锋aa成人|
亚洲综合色区另类av|
91麻豆精品一区二区三区|
国产精品看片你懂得|
成人国产精品视频|
日韩一区在线免费观看|
成人午夜av电影|
国产日韩欧美精品综合|
国产白丝精品91爽爽久久|
久久久久久免费网|
国产精品一区二区黑丝
|
国模无码大尺度一区二区三区|
精品视频一区二区不卡|
亚洲午夜精品17c|
在线观看区一区二|
午夜激情久久久|
91麻豆精品国产|
精品一二三四区|
久久久久久久久久久久久久久99
|
日韩视频一区二区在线观看|
9久草视频在线视频精品|
国产精品美女一区二区三区
|
国产精品传媒在线|
成人福利在线看|
亚洲男女一区二区三区|
欧美综合久久久|
免费xxxx性欧美18vr|
精品国产露脸精彩对白|
国内精品伊人久久久久av影院|
久久久精品影视|
91蝌蚪porny|
亚洲国产日韩在线一区模特|
欧美精品在线视频|
激情综合网激情|
亚洲欧洲精品一区二区精品久久久
|
五月天激情综合网|
日韩欧美资源站|
国产91精品露脸国语对白|
亚洲欧洲中文日韩久久av乱码|
欧美日韩国产综合一区二区三区
|
一本一本久久a久久精品综合麻豆|
亚洲精品视频免费观看|
777a∨成人精品桃花网|
国产精品一区二区久久不卡|
亚洲女与黑人做爰|
日韩欧美一级在线播放|
成人激情图片网|
青青草原综合久久大伊人精品优势|
久久综合狠狠综合久久综合88|
色久优优欧美色久优优|
狠狠久久亚洲欧美|
一区二区三区四区在线|
久久久精品2019中文字幕之3|
91国偷自产一区二区使用方法|
老司机免费视频一区二区三区|
亚洲美女精品一区|
欧美一级在线视频|
色综合久久天天|
精品夜夜嗨av一区二区三区|
亚洲一区二区三区三|
国产亚洲婷婷免费|
91精品在线免费|
色婷婷精品大视频在线蜜桃视频|
激情综合一区二区三区|
亚洲国产精品麻豆|
国产精品久久毛片av大全日韩|
欧美xxxxx牲另类人与|
欧美综合亚洲图片综合区|
99久久国产综合精品色伊|
精品亚洲成av人在线观看|
香蕉加勒比综合久久|
亚洲欧美aⅴ...|
国产精品久久夜|
日本一区二区免费在线|
26uuu亚洲|
日韩精品最新网址|
欧美一区日韩一区|
欧美艳星brazzers|
91电影在线观看|
成人av在线播放网址|
国产在线精品一区在线观看麻豆|
在线精品视频小说1|
成人av影院在线|
丁香另类激情小说|
高清国产一区二区三区|
韩国中文字幕2020精品|
久久国产夜色精品鲁鲁99|
日韩黄色免费电影|
天涯成人国产亚洲精品一区av|
亚洲精选一二三|
亚洲精品成人在线|
国产精品久久久久一区|
国产精品麻豆欧美日韩ww|
国产校园另类小说区|
国产亚洲欧美激情|
国产欧美视频在线观看|
亚洲国产精品二十页|
日本一区二区综合亚洲|
国产欧美精品区一区二区三区|
久久久久久久综合色一本|
久久综合成人精品亚洲另类欧美
|
亚洲欧美日韩久久精品|
综合激情成人伊人|
亚洲欧美另类综合偷拍|
亚洲精品国产a|
亚洲国产日韩a在线播放|
亚洲一区二区偷拍精品|
日本视频一区二区三区|
韩国女主播成人在线观看|
粉嫩aⅴ一区二区三区四区|
av不卡免费在线观看|
欧美无砖砖区免费|
欧美一区永久视频免费观看|
精品国产在天天线2019|
国产三级一区二区|
一区二区三区四区激情
|
av中文一区二区三区|
色美美综合视频|
欧美日韩国产一二三|
精品国产91乱码一区二区三区|
国产精品久久久久久久久久免费看
|
久久精品视频在线看|
国产精品国产三级国产|
亚洲国产精品一区二区www|
午夜精品久久久久|
国产一区不卡精品|
色婷婷av一区二区三区大白胸|
91精品国产综合久久精品图片
|
日韩一区二区三区av|
国产免费观看久久|
午夜伊人狠狠久久|
国产露脸91国语对白|
欧美影院一区二区|
久久色在线观看|
亚洲一二三四在线|
韩国av一区二区三区四区|
欧洲色大大久久|
久久久久九九视频|
午夜私人影院久久久久|
国产成人在线观看免费网站|
欧美日韩中文国产|
国产校园另类小说区|
日韩电影在线一区二区三区|
久久综合九色综合97婷婷
|
欧美性欧美巨大黑白大战|
日韩欧美一级精品久久|
亚洲日本一区二区三区|
国精品**一区二区三区在线蜜桃|
日本韩国欧美国产|
久久精品人人做人人爽97|
天天免费综合色|
菠萝蜜视频在线观看一区|
欧美精品一区二|
天天色天天爱天天射综合|
97se亚洲国产综合在线|
精品国产百合女同互慰|
天天综合网 天天综合色|
色婷婷综合久久久中文一区二区|
久久美女艺术照精彩视频福利播放
|
精品国产污网站|
亚洲电影一级黄|
色天使色偷偷av一区二区|
国产欧美日韩另类一区|
九一九一国产精品|
欧美一区二区三区不卡|
亚洲一区二区av在线|
91麻豆精东视频|
国产精品另类一区|
国产成a人亚洲精品|
久久久综合九色合综国产精品|
人禽交欧美网站|
在线不卡中文字幕|
五月天中文字幕一区二区|
在线观看视频一区二区欧美日韩|
亚洲欧洲性图库|
不卡的av在线|
国产精品国产三级国产普通话99|
大陆成人av片|
亚洲欧美自拍偷拍|
99精品视频在线播放观看|
国产精品嫩草99a|
99精品视频一区二区|