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

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

?? int.s

?? S3C2410平臺下藍牙編程與實驗
?? S
字號:
;/*
;***************************************************************************************************
;*                                               
;*		    		     			S3C44BOX ARM7TDMI MotherBoard                                   
;*                                        
;*                              (c) Copyright 2003-2015, Zhang Zhi-gang
;*                                          All Rights Reserved
;*          
;*                               S3C44BOX Initialization Program for 1.0
;*
;* File  Name 	: INT.S
;* By    Write	: Zhang Zhi-gang ( Barry Zhang )
;* First Write	: 2003-07-16 13:14
;* Last  Write	: 2004-02-24 13:14
;* where Write	: Room B201 Shenzhen International Tech-innovation Academy, Kejinan 10 Road ,
;*		   			High-Tech Industrial Park,Shenzhen,China.
;* Function		: Advance Initialize 
;*				1. Initialize ISR ,stacks			
;*				2. Copy code								
;*				3. Fill zeros into zero-initialized C-variables
;*				4. INT_Initialize
;***************************************************************************************************
;*/

;/*
;***************************************************************************************************
;*									ARM  &  THUMB
;* 				If assembled with TASM the variable {CONFIG} will be set to 16
;* 				If assembled with ARMASM the variable {CONFIG} will be set to 32
;* 				Set the variable THUMB to TRUE or false depending on whether the
;* 				file is being assembled with TASM or ARMASM.
;***************************************************************************************************
;*/

	GET		2410ADDR.S
	GET		INTDEF.S 
                       
    CODE32

	IMPORT		SDC_LISR
;//    IMPORT		TPLCD_LISR
;/*
;***************************************************************************************************
;*   										INTERRUPT TABLES
;*                                                    
;*	Define vector table used by INT_IRQ to branch to necessary ISR
;*
;***************************************************************************************************
;*/

    AREA INT_IRQ_segment, DATA, READWRITE

INT_IRQ_Vectors 
    DCD     0            ;// Vector 00
    DCD     0            ;// Vector 01
    DCD     0            ;// Vector 02
    DCD     0            ;// Vector 03
    DCD     0            ;// Vector 04
    DCD     0            ;// Vector 05
    DCD     0            ;// Vector 06
    DCD     0            ;// Vector 07
    DCD     0            ;// Vector 08
    DCD     0            ;// Vector 09
    DCD     0            ;// Vector 10
    DCD     0            ;// Vector 11
    DCD     0            ;// Vector 12
    DCD     0            ;// Vector 13
    DCD     0            ;// Vector 14
    DCD     0            ;// Vector 15
    DCD     0            ;// Vector 16
    DCD     0            ;// Vector 17
    DCD     0            ;// Vector 18
    DCD     0            ;// Vector 19
    DCD     0            ;// Vector 20
    DCD     0            ;// Vector 21
    DCD     0            ;// Vector 22
    DCD     INT_UART_Shell            ;// Vector 23
    DCD     0            ;// Vector 24
    DCD     0            ;// Vector 25
    DCD     0            ;// Vector 26                
    DCD     0            ;// Vector 27
    DCD     INT_UART_Shell             ;// Vector 28
    DCD     0           ;// Vector 29 
    DCD     0            ;// Vector 30 
    DCD     0          ;// Vector 31 

    
    
                
; //Define the order in which the interrupts will be executed by software (INT_IRQ) 
INT_IRQ_Priority
	;//DCD		Handler_GLOBAL					;// Vector 00 
    DCD     Handler_EINT0	             	;// Vector 00 
    DCD     Handler_EINT1	             	;// Vector 01 
    DCD     Handler_EINT2	             	;// Vector 02 
    DCD     Handler_EINT3	             	;// Vector 03      
    DCD     Handler_EINT4_7             	;// Vector 04 
    DCD     Handler_EINT8_23	             	;// Vector 05
    DCD     6 
    DCD     Handler_nBATT_FLT	             	;// Vector 07      
    DCD     Handler_TICK	             	;// Vector 08 
    DCD     Handler_WDT	             	;// Vector 09
    DCD     Handler_TIMER0		             	;// Vector 10
    DCD     Handler_TIMER1	             	;// Vector 11     
    DCD	    Handler_TIMER2	             	;// Vector 12
    DCD     Handler_TIMER3					;// Vector 13
    DCD     Handler_TIMER4	                ;// Vector 14
    DCD     Handler_UART2	                ;// Vector 15 	    
    DCD     Handler_LCD	                ;// Vector 16
    DCD     Handler_DMA0                  ;// Vector 17
    DCD     Handler_DMA1	                ;// Vector 18
    DCD     Handler_DMA2	                ;// Vector 19 	    
    DCD     Handler_DMA3		                ;// Vector 20
    DCD     Handler_SDI		                ;// Vector 21
    DCD     Handler_SPI0	                ;// Vector 22
    DCD     Handler_UART1	                ;// Vector 23
    DCD     24	    	
    DCD     Handler_USBD                     ;// Vector 25
    DCD     Handler_USBH                      ;//VECTOR 26
    DCD     Handler_IIC				;//VECTOR 27
    DCD     Handler_UART0			;//VECTOR 28
    DCD     Handler_SPI1			;//VECTOR  29
    DCD     Handler_RTC				;//VECTOR   30
    DCD     Handler_ADC				;//VECTOR   31
IRQ_PRIORITY_END



;/*
;***************************************************************************************************
;*										引入連接器生成的代碼始末地址
;*
;***************************************************************************************************
;*/
	AREA INT_CODE, CODE, READONLY   
                  
	               
BSS_Start_Ptr      
	IMPORT	|Image$$ZI$$Base|
	DCD		|Image$$ZI$$Base|	
	               
BSS_End_Ptr                       		
	IMPORT	|Image$$ZI$$Limit| 
	DCD		|Image$$ZI$$Limit|
	               
ROM_Data_Start_Ptr                       	
	IMPORT	|Image$$RO$$Limit|	
	DCD		|Image$$RO$$Limit|
	
RAM_Start_Ptr                       		
	IMPORT	|Image$$RW$$Base| 	
	DCD		|Image$$RW$$Base|
	
;//Current_Thread                    	
;//        DCD     TCD_Current_Thread
;/*                                                                                                 
;***************************************************************************************************
;*                  						INT_Intialize                                                                                                                                             
;* 
;* Function   : Intialize
;* DESCRIPTION:
;*				This function sets up the global system stack variable and       
;*      		transfers control to the target independent initialization       
;*      		function INC_Initialize.  Responsibilities of this function      
;*      		include the following: 
;*					- Setup necessary processor/system control registers      
;*             		- Initialize the vector table                             
;*             		- Setup the system stack pointers                         
;*             		- Setup the timer interrupt                               
;*             		- Calculate the timer HISR stack and priority             
;*             		- Calculate the first available memory address            
;*             		- Transfer control to INC_Initialize to initialize all of 
;*               	  the system components.                                                                              
;*                                                                                                  
;* Returns    :                                                                                     
;*                                                                                                  
;***************************************************************************************************
;*/   		
 	
 	EXPORT	INT_Intialize
INT_Intialize


;/*
;***************************************************************************************************
;*									Copy the code from ROM to the RAM
;*
;***************************************************************************************************
;*/

    LDR    r0,ROM_Data_Start_Ptr           ;// Get the start of the
    LDR    r1,RAM_Start_Ptr                ;// Get the start of the
    LDR    r3,BSS_Start_Ptr                ;// Pickup the start of
    CMP    r0,r1                           ;// Check for any initial
                                           ;// variable values
    BEQ    INT_BSS_Clear                   ;// If none, zero memory

INT_ROM_Vars_Copy
    CMP    r1,r3                           ;// Check to set flags
    LDRCC  r2, [r0], #4                    ;// Get value from ROM
    STRCC  r2, [r1], #4                    ;// Put value in RAM
    BCC    INT_ROM_Vars_Copy               ;// Continue

INT_BSS_Clear
    LDR    r1,BSS_End_Ptr                  ;// Pickup the end of the BSS area
    MOV    r2,#0                           ;// Clear value in r2

INT_BSS_Clear_Loop
    CMP    r3,r1                           ;// Are the start and end equal?
    STRCC  r2,[r3],#4                      ;// Clear a word
    BCC    INT_BSS_Clear_Loop              ;// If so, continue with BSS clear


;/*
;***************************************************************************************************
;*								Initialize the system stack pointers
;*											初始化堆棧
;*
;***************************************************************************************************
;*/    
;// 初始化Sys模式下的堆棧 
	LDR		SP,=SYS_STACK

;// 初始化IRQ模式下的堆棧   
    MRS    	r0,CPSR                         	;// Pickup current CPSR
    BIC    	r0,r0,#MODE_MASK                	;// Clear the mode bits
    ORR    	r0,r0,#MODE_IRQ                 	;// Set the IRQ mode bits
    MSR    	CPSR_cxsf,r0                    	;// Move to IRQ mode                                	
	LDR		SP,=IRQ_STACK                         	;// Setup IRQ stack pointer
;// 初始化SUP模式下的堆棧   
    MRS    	r0,CPSR                         	;// Pickup current CPSR
    BIC    	r0,r0,#MODE_MASK                	;// Clear the mode bits
    ORR    	r0,r0,#MODE_SUP               	;// Set the SUP mode bits
    MSR    	CPSR_cxsf,r0                    	;// Move to SUP mode                                	
	LDR		SP,=SVC_STACK                         	;// Setup SUP stack pointer
;// 轉回系統模式,并使能中斷標志位    
    MRS    	r0,CPSR                         	;// Pickup current CPSR
    BIC    	r0,r0,#MODE_MASK                	;// Clear mode bits
    ORR    	r0,r0,#MODE_SYS                 	;// Set the SYSTEM mode bits    
    BIC		R0,R0,#INTLOCK						;// 開中斷    
    MSR     CPSR_cxsf,r0                    	;// All interrupt stacks are setup,
                                           		;// return to supervisor mode
                           		
    
                                           	                                           	
;/*
;***************************************************************************************************
;									  C語言的調用(跳至應用程序)                       
;***************************************************************************************************
;*/	

	IMPORT		C_Entry
	B			C_Entry ;C_Entry是一個循環程序

    
;/*
;***************************************************************************************************
;*												INT_IRQ
;*
;***************************************************************************************************
;*/
  
    AREA IRQ,CODE,READONLY
    EXPORT  INT_IRQ
INT_IRQ
;/* This Code is used to correctly handle interrupts and
;   is necessary due to the nature of the ARM7 architecture  */
    STMDB   sp!, {r1}   ;保存寄存器r1,將r1壓棧
    MRS     r1, SPSR
    TST     r1, #I_BIT
    LDMIA   sp!, {r1}
    SUBNES  pc,lr,#4


;//LR_IRQ,SPSR_IRQ壓棧來避免下一次中斷發生使它們被沖掉
  SUB	lr, lr, #4
  STMFD	sp!, {lr} 
  MRS	r14, SPSR
  STMFD	sp!, {r0-r4, r14}
 ;// 查寄存器INTOFFSET找出對應的中斷    
 	LDR		R0,=INTOFFSET
 	LDR		R0,[R0,#0]
 ;//判斷是否有中斷發生
 	LDR		R1,=INTPND
 	LDR		R1,[R1]
 	CMP		R1,#0X0
 	BNE		IRQ_VECTOR_FOUND
;// No bits in pending register set, restore context and exit interrupt servicing
    LDMIA	SP!,{R0-R4,R14}
    MSR		SPSR_csxf,R14
    LDMIA	SP!,{PC}^
;//清中斷控制源
IRQ_VECTOR_FOUND
	;//屏蔽中斷,才能清除中斷位
	LDR 	R1,=INTSUBMSK
	LDR		R7,[R1]				;//保存到R7,以便恢復
	LDR		R2,=0x7ff
	STR		R2,[R1]				;//設置	INTSUBMSK,以屏蔽中斷
	
	LDR 	R1,=INTMSK
	LDR		R8,[R1]				;//保存到R8,以便恢復
	;//設置	INTMSK,以屏蔽中斷
	LDR		R2,=0xffffffff
	STR		R2,[R1]				

	;//清中斷
	LDR		R1,=SRCPND
	LDR		R3,[R1]
	STR		R3,[R1,#0]
	
	LDR		R2,=INTPND
	LDR		R3,[R2,#0]      
	STR		R3,[R2,#0]
	
	LDR 	R2,=SUBSRCPND
	LDR		R3,[R2,#0]
	STR		R3,[R2]
	;//恢復INTSUBMSK
	LDR 	R1,=INTSUBMSK
	STR		R7,[R1]				
	;//設置	INTMSK,以便恢復
	LDR 	R1,=INTMSK
	STR		R8,[R1]				

	
;// Get IRQ vector table address
    LDR     r3,=INT_IRQ_Vectors         ;// Get IRQ vector table address
    MOV     r2, r0, LSL #2              ;// Multiply vector by 4 to get offset into table
    ADD     r3, r3, r2                  ;// Adjust vector table address to correct offset
    LDR     r2, [r3,#0]                 ;// Load branch address from vector table
    MOV     PC, r2                      ;// Jump to correct branch location based on vector table

;/*
;***************************************************************************************************
;*										INT_EINT0_Shell
;*
;***************************************************************************************************
;*/

	EXPORT	INT_UART_Shell
INT_UART_Shell
    MRS     r1,CPSR                      ;// Pickup current CPSR
    BIC     r1,r1,#MODE_MASK             ;// Clear the mode bits
    ORR     r1,r1,#MODE_SYS              ;// Set the SYS mode bits
    ORR     r1,r1,#I_BIT				 ;//DISABLE INT
    MSR     CPSR_cxsf,r1                 ;// Change to IRQ mode 

;// MOV     r4,lr                        ;// Put IRQ return address into r4

;// 跳至上下文保存處理程序
	
	STMDB	SP!,{LR}

;// 跳至中斷服務程序 

    BL      SDC_LISR	 	          ;// processing.
;//    
    LDMIA	SP!,{LR}                                    
;// 返回到IRQ模式        		 						                                            
    MRS     r1,CPSR                      ;// Pickup current CPSR
    BIC     r1,r1,#MODE_MASK             ;// Clear the mode bits
    ORR     r1,r1,#MODE_IRQ              ;// Set the IRQ mode bits
    BIC	    R1,R1,#I_BIT				;//ENABLE INT
    MSR     CPSR_cxsf,r1                 ;// Change to IRQ mode
    
 ;//此值是在進入IRQ時設置的   
    LDMIA	SP!,{R0-R4,R14}
    MSR		SPSR_csxf,R14
    LDMIA	SP!,{PC}^
		
				
	END 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品免费观看| 欧美日韩一区二区三区视频| 91年精品国产| 欧美xxxxxxxx| 亚洲成a人v欧美综合天堂下载| 国产在线一区二区综合免费视频| 日本道色综合久久| 久久午夜羞羞影院免费观看| 亚洲午夜免费福利视频| 懂色av一区二区在线播放| 日韩网站在线看片你懂的| 一区二区国产盗摄色噜噜| 国产成人午夜视频| 欧美成人福利视频| 五月天久久比比资源色| 99re8在线精品视频免费播放| 精品久久久久久久久久久久包黑料 | 国产视频一区在线观看| 天堂av在线一区| 日本乱人伦aⅴ精品| 国产精品国产三级国产aⅴ原创| 蜜臀va亚洲va欧美va天堂| 欧美亚洲愉拍一区二区| 中文字幕一区二区三区不卡| 国产在线精品免费av| 日韩欧美国产三级电影视频| 日韩黄色小视频| 欧美精品在线一区二区| 舔着乳尖日韩一区| 欧美日韩在线观看一区二区 | 久久精品久久精品| 91精品国产色综合久久不卡蜜臀 | 欧美一区二区三区视频免费 | 日韩欧美电影一区| 美美哒免费高清在线观看视频一区二区| 欧美中文字幕一二三区视频| 综合欧美亚洲日本| 91视视频在线直接观看在线看网页在线看| 久久精品欧美一区二区三区麻豆 | 色婷婷久久久综合中文字幕| 国产精品剧情在线亚洲| 成人国产精品免费观看动漫| 国产精品久久久久一区二区三区| 丁香五精品蜜臀久久久久99网站 | 国产成人在线视频网址| 亚洲精品一区在线观看| 国产一区二区在线影院| 国产无人区一区二区三区| 国产91对白在线观看九色| 欧美国产一区在线| 波多野结衣一区二区三区| 自拍偷拍亚洲激情| 欧美性受极品xxxx喷水| 香蕉久久一区二区不卡无毒影院| 日韩亚洲欧美高清| 国产一区二区三区免费播放 | 精品国产伦一区二区三区免费| 精品亚洲国产成人av制服丝袜| 久久久蜜臀国产一区二区| av网站免费线看精品| 亚洲一区二区三区四区五区黄| 91精品免费在线| 国产精品综合一区二区三区| 国产精品福利一区二区三区| 欧美日韩免费视频| 国产精品一区免费视频| 亚洲人成人一区二区在线观看| 欧美日韩在线不卡| 国产sm精品调教视频网站| 一二三区精品视频| 久久女同精品一区二区| 欧洲激情一区二区| 国产一本一道久久香蕉| 亚洲午夜视频在线观看| 欧美精品一区二区三区在线| 色婷婷综合久久久| 国产精品一区二区免费不卡 | 九九**精品视频免费播放| 中文字幕在线一区免费| 欧美一区二区三区婷婷月色| 国产传媒日韩欧美成人| 亚洲综合在线五月| 久久网站最新地址| 欧美日韩久久不卡| eeuss影院一区二区三区| 久久精品国产在热久久| 亚洲综合色视频| 国产精品欧美精品| 2023国产精品| 91精品国产色综合久久| 色婷婷综合五月| 成人爱爱电影网址| 国产综合色精品一区二区三区| 亚洲成人免费在线| 亚洲精品成人在线| 欧美高清在线视频| 26uuu成人网一区二区三区| 欧美日韩一区二区三区免费看| 成人av片在线观看| 国产一区二区三区久久悠悠色av| 视频一区中文字幕| 亚洲综合视频在线| 一区二区三区日韩欧美| 国产精品麻豆久久久| 国产性色一区二区| 久久午夜羞羞影院免费观看| 欧美成人video| 欧美一卡2卡三卡4卡5免费| 欧美日韩久久久一区| 欧美三级电影精品| 欧美图片一区二区三区| 在线看不卡av| 精品视频免费看| 欧美日韩免费电影| 欧美色倩网站大全免费| 在线国产亚洲欧美| 色94色欧美sute亚洲13| 欧美在线高清视频| 在线观看亚洲专区| 欧美日韩一区 二区 三区 久久精品| 91看片淫黄大片一级| 99re这里只有精品首页| 91原创在线视频| 欧美性色综合网| 337p亚洲精品色噜噜狠狠| 日韩午夜在线播放| 精品国产乱码91久久久久久网站| 久久嫩草精品久久久精品| 久久精品欧美一区二区三区麻豆| 国产欧美一区在线| 亚洲精品国产品国语在线app| 亚洲精品中文字幕乱码三区| 亚洲v精品v日韩v欧美v专区 | 欧美不卡一区二区三区四区| 亚洲精品一区二区三区在线观看| 久久综合久久综合九色| 中文字幕精品综合| 一级特黄大欧美久久久| 日本亚洲最大的色成网站www| 久久激情综合网| 成人美女在线观看| 日本精品视频一区二区| 日韩亚洲欧美在线| 国产精品久久久久影视| 亚瑟在线精品视频| 黑人巨大精品欧美一区| 99riav久久精品riav| 欧美日韩国产一级| 久久久久久麻豆| 亚洲免费观看高清| 美女视频免费一区| 99久久免费视频.com| 欧美高清精品3d| 国产网站一区二区| 午夜精品福利视频网站| 国产成人精品网址| 精品视频一区二区三区免费| 久久久亚洲精华液精华液精华液| 亚洲免费在线观看| 激情都市一区二区| 91久久精品午夜一区二区| 亚洲精品在线免费播放| 亚洲国产三级在线| 国产成人精品综合在线观看| 欧美日本一区二区在线观看| 国产精品三级av在线播放| 天堂成人国产精品一区| av电影在线观看一区| 欧美大片日本大片免费观看| 成人欧美一区二区三区黑人麻豆 | 欧美videos大乳护士334| 1024国产精品| 国产麻豆视频一区| 欧美精品日韩综合在线| 亚洲人成伊人成综合网小说| 国产一区二区三区香蕉| 欧美老肥妇做.爰bbww| 国产精品国产三级国产aⅴ原创| 久久99精品国产麻豆婷婷 | 久久嫩草精品久久久精品一| 亚洲成人免费在线| 日本国产一区二区| 中文一区二区在线观看| 国产在线精品一区二区夜色| 欧美伦理视频网站| 亚洲尤物视频在线| 色激情天天射综合网| 中文字幕不卡的av| 国产盗摄精品一区二区三区在线| 日韩一区二区三区在线观看| 亚洲国产精品久久人人爱蜜臀| 成人福利视频网站| 国产精品国产三级国产专播品爱网| 国产在线视频精品一区| 精品国产第一区二区三区观看体验| 日韩电影在线观看一区| 欧美人牲a欧美精品| 丝袜国产日韩另类美女| 欧美日韩成人一区| 奇米色一区二区三区四区|