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

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

?? 44binit.s

?? 基于ARM7的S3C44BO開發板的I2C驅動與測試程序
?? S
?? 第 1 頁 / 共 2 頁
字號:
    INCLUDE ..\inc\option.inc
    INCLUDE ..\inc\memcfg.inc

;Memory Area
;GCS6 16M 16bit(2MB) DRAM/SDRAM(0xc000000-0xc7fffff)
;APP    RAM=0xc000000~0xc1effff 
;44BMON RAM=0xc7f0000-0xc7fffff
;STACK	   =0xc7ffa00		   

;Interrupt Control
INTPND	    EQU	0x01e00004
INTMOD	    EQU	0x01e00008
INTMSK	    EQU	0x01e0000c
I_ISPR	    EQU	0x01e00020
I_CMST	    EQU	0x01e0001c

;Watchdog timer
WTCON	    EQU	0x01d30000

;Clock Controller
PLLCON	    EQU	0x01d80000
CLKCON	    EQU	0x01d80004
LOCKTIME    EQU	0x01d8000c
	
;Memory Controller
REFRESH	    EQU 0x01c80024

;BDMA destination register
BDIDES0		EQU 0x1f80008
BDIDES1		EQU 0x1f80028

;Pre-defined constants
USERMODE    EQU	0x10
FIQMODE	    EQU	0x11
IRQMODE	    EQU	0x12
SVCMODE	    EQU	0x13
ABORTMODE   EQU	0x17
UNDEFMODE   EQU	0x1b
MODEMASK    EQU	0x1f
NOINT	    EQU	0xc0

;check if tasm.exe is used.
	GBLL    THUMBCODE
	[ {CONFIG} = 16	
THUMBCODE SETL	{TRUE}
		CODE32
	|   
THUMBCODE SETL	{FALSE}
	]

	[ THUMBCODE
		CODE32   ;for start-up code for Thumb mode
	]

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;Vector Macro;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    MACRO
$HandlerLabel HANDLER $HandleLabel

$HandlerLabel
    sub	    sp,sp,#4			;decrement sp(to store jump address)
    stmfd   sp!,{r0}			;PUSH the work register to stack(lr does't push because it return to original address)
    ldr	    r0,=$HandleLabel	;load the address of HandleXXX to r0
    ldr	    r0,[r0]				;load the contents(service routine start address) of HandleXXX
    str	    r0,[sp,#4]			;store the contents(ISR) of HandleXXX to stack
    ldmfd   sp!,{r0,pc}			;POP the work register and pc(jump to ISR)
    MEND
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

    IMPORT	|Image$$RO$$Limit|	;End of ROM code (=start of ROM data)
    IMPORT	|Image$$RW$$Base|	;Base of RAM to initialise
    IMPORT	|Image$$ZI$$Base|	;Base and limit of area
    IMPORT	|Image$$ZI$$Limit|	;to zero initialise

    IMPORT  Main				;The main entry of mon program 

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;Code Begin;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    AREA    Init,CODE,READONLY

    ENTRY 
    b ResetHandler				;for debug
    b HandlerUndef				;handlerUndef
    b HandlerSWI				;SWI interrupt handler
    b HandlerPabort				;handlerPAbort
    b HandlerDabort				;handlerDAbort
    b .							;handlerReserved
    b HandlerIRQ
    b HandlerFIQ
	
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IMPORTANT NOTE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;If the H/W vectored interrutp mode is enabled, The above two instructions should                       ;
;be changed like below, to work-around with H/W bug of S3C44B0X interrupt controller.                   ;
; b HandlerIRQ  ->  subs pc,lr,#4                                                                       ;
; b HandlerIRQ  ->  subs pc,lr,#4                                                                       ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;中斷向量表
VECTOR_BRANCH
    ldr pc,=HandlerEINT0	;mGA	0x20 
    ldr pc,=HandlerEINT1	;	
    ldr pc,=HandlerEINT2	;
    ldr pc,=HandlerEINT3	;
    ldr pc,=HandlerEINT4567	;
    ldr pc,=HandlerTICK		;mGA	0x34
	b .
	b .
    ldr pc,=HandlerZDMA0	;mGB	0x40
    ldr pc,=HandlerZDMA1	;
    ldr pc,=HandlerBDMA0	;
    ldr pc,=HandlerBDMA1	;
    ldr pc,=HandlerWDT		;
    ldr pc,=HandlerUERR01	;mGB	0x54
    b .
    b .
    ldr pc,=HandlerTIMER0	;mGC	0x60
    ldr pc,=HandlerTIMER1	;
    ldr pc,=HandlerTIMER2	;
    ldr pc,=HandlerTIMER3	;
    ldr pc,=HandlerTIMER4	;
    ldr pc,=HandlerTIMER5	;mGC	0x74
    b .
    b .
    ldr pc,=HandlerURXD0	;mGD	0x80
    ldr pc,=HandlerURXD1	;
    ldr pc,=HandlerIIC		;
    ldr pc,=HandlerSIO		;
    ldr pc,=HandlerUTXD0	;
    ldr pc,=HandlerUTXD1	;mGD	0x94
    b .
    b .
    ldr pc,=HandlerRTC		;mGKA	0xa0
    b .
    b .
    b .
    b .
    b .						;mGKA
    b .
    b .
    ldr pc,=HandlerADC	    ;mGKB	0xc0
    b .						;
    b .						;
    b .						;
    b .						;
    b .						;mGKB
    b .
    b .
    ldr pc,=EnterPWDN		;0xe0=EnterPWDN

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;向量中斷的處理方法                                                                                 	    ;
;Example: HandlerADC	HANDLE HandleADC 解為															;
;HandlerADC						;HandlerADC為中斷向量表的入口												;
;   sub	    sp,sp,#4			;將sp減少一個字節,使其在堆棧高端留出存儲返回地址,因為pc在寄存器組中的			;
;								;的位置大于r0,出棧時裝入的是棧的高端的內容									;
;   stmfd   sp!,{r0}			;保存r0																	;
;   ldr	    r0,=HandleADC		;裝載中斷處理函數的指針													;
;   ldr	    r0,[r0]				;裝載中斷處理函數的地址													;
;   str	    r0,[sp,#4]			;將中斷處理函數的地址存入剛才預留的位置,r0的上面								;
;   ldmfd   sp!,{r0,pc}			;出棧后,pc指向的既是中斷處理函數的地址									 	;
;                                                                                                       ;
;	INTCON^2 == 0時,vector table使能																		;
;	發生中斷->HandlerADC->HandleADC(pISR_ADC,即:_ISR_STARTADDRESS+0x20);									;                          
;	若要在程序中處理此中斷,只要將中斷服務函數的指針賦給pISR_ADC,如:pISR_ADC = (int)ADCIsr                  	;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    LTORG	

HandlerFIQ		HANDLER HandleFIQ
HandlerIRQ		HANDLER HandleIRQ
HandlerUndef	HANDLER HandleUndef
HandlerSWI		HANDLER HandleSWI
HandlerDabort	HANDLER HandleDabort
HandlerPabort	HANDLER HandlePabort

HandlerADC		HANDLER HandleADC
HandlerRTC		HANDLER HandleRTC
HandlerUTXD1	HANDLER HandleUTXD1
HandlerUTXD0	HANDLER HandleUTXD0
HandlerSIO		HANDLER HandleSIO
HandlerIIC		HANDLER HandleIIC
HandlerURXD1	HANDLER HandleURXD1
HandlerURXD0	HANDLER HandleURXD0
HandlerTIMER5	HANDLER HandleTIMER5
HandlerTIMER4	HANDLER HandleTIMER4
HandlerTIMER3	HANDLER HandleTIMER3
HandlerTIMER2	HANDLER HandleTIMER2
HandlerTIMER1	HANDLER HandleTIMER1
HandlerTIMER0	HANDLER HandleTIMER0
HandlerUERR01	HANDLER HandleUERR01
HandlerWDT		HANDLER HandleWDT
HandlerBDMA1	HANDLER HandleBDMA1
HandlerBDMA0	HANDLER HandleBDMA0
HandlerZDMA1	HANDLER HandleZDMA1
HandlerZDMA0	HANDLER HandleZDMA0
HandlerTICK		HANDLER HandleTICK
HandlerEINT4567	HANDLER HandleEINT4567
HandlerEINT3	HANDLER HandleEINT3
HandlerEINT2	HANDLER HandleEINT2
HandlerEINT1	HANDLER HandleEINT1
HandlerEINT0	HANDLER HandleEINT0


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;非向量中斷的處理  																						;
;如果I_ISPC的使用不正確,此時I_ISPR可能為零      															;
;堆棧內容的變化  																							; 
;                                                                                                       ;
;H	sp	|--|		|--|		|--|		|--|	 sp	|--|                                            ;
;		|  |	 sp	|  |	 	|  |	 	|ad|->pc	|  |                                            ;
;		|  |	    |  |		|r9|		|r9|->r9	|  |                                            ;
;L		|  |	    |  |	 sp |r8|	 sp	|r8|->r8	|  |                                            ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
IsrIRQ							;using I_ISPR register.
    sub	    sp,sp,#4			;預留返回指針的存儲位置
    stmfd   sp!,{r8-r9}   

    ldr	    r9,=I_ISPR
    ldr	    r9,[r9]				;載入I_ISPR

	cmp		r9, #0x0			;If the IDLE mode work-around is used,r9 may be 0 sometimes.
	beq		%F2					;無可處理中斷,返回

    mov	    r8,#0x0				;r8為偏移量,清零

0
    movs    r9,r9,lsr #1		;從右向左逐位檢驗
    bcs	    %F1
    add	    r8,r8,#4			;偏移量累加
    b	    %B0				

1
    ldr	    r9,=HandleADC		;中斷處理表的首址
    add	    r9,r9,r8			;計算中斷處理表的入口地址 r9+r8,即裝載中斷處理函數的指針
    ldr	    r9,[r9]				;裝載中斷處理函數的地址
    str	    r9,[sp,#8]			;將中斷處理函數的地址存入剛才預留的位置,r8和r9的上面
    ldmfd   sp!,{r8-r9,pc}		;出棧后,pc指向的既是中斷處理函數的地址

2
	ldmfd	sp!,{r8-r9}			;恢復r8,r9
	add		sp,sp,#4			;恢復棧指針
	subs	pc,lr,#4			;返回

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;復位中斷處理函數																							;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ResetHandler
    ldr	    r0,=WTCON	    	;禁止看門狗
    ldr	    r1,=0x0		
    str	    r1,[r0]

    ldr	    r0,=INTMSK
    ldr	    r1,=0x07ffffff  	;禁止所有中斷
    str	    r1,[r0]

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
www激情久久| 久久午夜电影网| 成人高清在线视频| 国产一区二区精品久久| 国产一区二区按摩在线观看| 久久福利资源站| 国产一区二区三区黄视频| 国产精品一区专区| 91香蕉视频在线| 色婷婷综合中文久久一本| 欧美色综合久久| 3751色影院一区二区三区| 精品久久久久久久久久久久久久久| 日韩美女一区二区三区| 久久久久久久久久久久久女国产乱 | 色婷婷av久久久久久久| 在线观看三级视频欧美| 在线成人免费视频| 精品国产123| 国产精品大尺度| 图片区小说区国产精品视频| 久久99精品视频| 成人精品免费视频| 欧美系列在线观看| 日韩女优毛片在线| 亚洲免费观看高清完整版在线观看熊 | 97精品国产露脸对白| 欧美日高清视频| 国产人妖乱国产精品人妖| 一区二区三区久久| 国产综合色产在线精品| 成人91在线观看| 欧美一区二区三区免费观看视频| 中文成人综合网| 性欧美大战久久久久久久久| 国产高清久久久久| 欧美日韩和欧美的一区二区| 日本一区二区三区免费乱视频| 亚洲精品日韩一| 国产麻豆一精品一av一免费| 欧美日韩1234| 亚洲丝袜精品丝袜在线| 久久精品国产精品亚洲综合| 欧洲精品在线观看| 国产精品久久三| 久久se精品一区精品二区| 91久久精品日日躁夜夜躁欧美| 精品国产一二三| 婷婷国产在线综合| 91麻豆高清视频| 国产精品女同互慰在线看| 日本vs亚洲vs韩国一区三区| 色成年激情久久综合| 国产精品素人一区二区| 精品一区二区三区视频在线观看 | 国产丝袜美腿一区二区三区| 日韩精品一卡二卡三卡四卡无卡| 91毛片在线观看| 欧美国产日本韩| 国产成人免费视频一区| 日韩欧美在线影院| 午夜国产精品影院在线观看| 91论坛在线播放| 中文字幕一区日韩精品欧美| 国产成人鲁色资源国产91色综| 日韩视频中午一区| 日本中文字幕不卡| 欧美一区日本一区韩国一区| 亚洲超丰满肉感bbw| 在线中文字幕不卡| 亚洲一区二区三区四区五区中文| 一本久久a久久免费精品不卡| 国产精品女上位| 91网站在线观看视频| 中文字幕亚洲精品在线观看| 一本色道久久综合亚洲aⅴ蜜桃| 综合亚洲深深色噜噜狠狠网站| 不卡的电视剧免费网站有什么| 国产精品视频免费看| 成人激情黄色小说| 亚洲精品欧美专区| 欧美精选在线播放| 麻豆国产精品视频| 久久久久久久久久看片| 懂色av一区二区在线播放| 中文字幕一区二区三区乱码在线| 93久久精品日日躁夜夜躁欧美| 一区二区免费视频| 在线播放中文一区| 精品亚洲欧美一区| 国产精品久久久久久久久免费相片| 99精品视频在线观看| 亚洲狠狠丁香婷婷综合久久久| 欧美妇女性影城| 久久99热99| 国产精品国产三级国产有无不卡 | 国产精品乱码久久久久久| 成人免费毛片aaaaa**| 亚洲精品免费播放| 日韩视频免费直播| caoporen国产精品视频| 亚洲电影你懂得| 久久只精品国产| 欧美在线观看一二区| 经典三级一区二区| 亚洲免费视频成人| 精品捆绑美女sm三区| 91麻豆6部合集magnet| 精品一区二区三区视频在线观看| 中文字幕日韩欧美一区二区三区| 欧美日韩精品欧美日韩精品| 国产99精品视频| 亚洲大尺度视频在线观看| 国产视频在线观看一区二区三区 | 国产精品情趣视频| 正在播放一区二区| 91免费看`日韩一区二区| 精品一区二区三区av| 一区二区三区91| 久久久www成人免费无遮挡大片| av在线不卡网| 国产一区二区三区视频在线播放| 亚洲六月丁香色婷婷综合久久| 欧美一二三区在线| 在线观看一区不卡| 9人人澡人人爽人人精品| 免费看日韩a级影片| 亚洲在线视频网站| 国产精品乱人伦中文| 久久网站热最新地址| 欧美一卡二卡在线| 欧美日韩高清影院| 色综合久久中文综合久久97| 国产91丝袜在线播放0| 精品亚洲porn| 日本成人在线看| 亚洲成人av电影| 一区二区三区精品| 有坂深雪av一区二区精品| 国产精品久久一卡二卡| 中文字幕av一区二区三区高| 精品少妇一区二区三区在线播放| 欧美日韩精品专区| 欧美精品自拍偷拍动漫精品| 97久久精品人人爽人人爽蜜臀| 丁香一区二区三区| 成人爱爱电影网址| 成人午夜激情视频| www.66久久| 99re8在线精品视频免费播放| 成人av电影在线| av成人免费在线观看| 99re热这里只有精品视频| 99re这里都是精品| 欧美探花视频资源| 91精品在线免费| 精品久久久久久综合日本欧美| 精品国一区二区三区| 欧美国产国产综合| 国产精品久久久久久久浪潮网站| 国产精品卡一卡二| 一区二区三区在线视频播放| 亚洲综合色丁香婷婷六月图片| 亚洲a一区二区| 麻豆精品久久精品色综合| 国产美女精品在线| 91色九色蝌蚪| 6080yy午夜一二三区久久| 日韩久久久精品| 国产精品污网站| 亚洲一级电影视频| 另类小说色综合网站| 国产精品资源在线| 色婷婷国产精品| 欧美一区二区三区男人的天堂| 久久视频一区二区| 亚洲欧美另类综合偷拍| 日韩精品欧美成人高清一区二区| 美女尤物国产一区| 99精品欧美一区二区三区小说| 欧美午夜电影在线播放| 欧美成人video| 亚洲日本电影在线| 日本最新不卡在线| 99久久伊人精品| 欧美一区二区三区播放老司机| 国产日韩欧美一区二区三区乱码 | 国产风韵犹存在线视精品| 91丨九色丨国产丨porny| 欧美一区二区三区在线看| 亚洲国产成人午夜在线一区 | 国产欧美一区二区精品性色| 亚洲欧美另类在线| 国产一区 二区 三区一级| 日本精品一级二级| 久久久av毛片精品| 日韩二区三区四区| 日本精品视频一区二区| 国产色91在线| 毛片av一区二区|