亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
欧美视频三区在线播放| 日本不卡1234视频| 中文字幕精品在线不卡| 日本一区二区三区国色天香| 亚洲欧洲综合另类| 日韩av网站在线观看| 国产成人精品免费视频网站| 在线观看网站黄不卡| 久久青草国产手机看片福利盒子| 成人免费在线播放视频| 免费的成人av| 欧美电视剧免费全集观看 | av在线不卡免费看| 欧美日韩国产首页在线观看| 国产亚洲女人久久久久毛片| 亚洲444eee在线观看| 高清不卡一区二区| 日韩一区二区三区视频| 亚洲精品视频免费观看| 国精产品一区一区三区mba桃花| 91国偷自产一区二区三区成为亚洲经典| 日韩一区二区精品在线观看| 国产尤物一区二区在线| 欧美一区二区成人| 亚洲国产中文字幕| 91女神在线视频| 欧美精彩视频一区二区三区| 色综合亚洲欧洲| 国产精品私人影院| 国产福利视频一区二区三区| 国产精品国模大尺度视频| 成人免费电影视频| 欧美高清在线一区| 欧美日韩国产另类不卡| 国产成人av一区二区三区在线观看| 综合电影一区二区三区| av一区二区三区四区| 亚洲超碰97人人做人人爱| 久久久久久久综合狠狠综合| 色视频成人在线观看免| 国产精品福利影院| 在线不卡中文字幕播放| 日韩成人伦理电影在线观看| 国产精品丝袜在线| 日韩欧美视频一区| 色8久久精品久久久久久蜜| 狠狠色丁香婷婷综合| 一区二区三区波多野结衣在线观看 | jlzzjlzz欧美大全| 天天综合天天综合色| 欧美精品亚洲二区| 成人免费视频一区| 亚洲午夜电影网| 中文字幕免费不卡在线| 精品日韩成人av| 国产一区二区免费看| 亚洲国产精品久久久久秋霞影院 | 色女孩综合影院| 国产乱码精品一品二品| 久久久久久一二三区| 欧美日韩精品免费| 色婷婷激情综合| 成人精品电影在线观看| 亚洲欧美一区二区三区极速播放 | 国产一区二三区好的| 婷婷一区二区三区| 亚洲自拍偷拍麻豆| 欧美成va人片在线观看| 欧美色倩网站大全免费| 蜜桃在线一区二区三区| 久久久久久久久久久久久夜| 91精品国产一区二区人妖| 在线精品视频一区二区三四| 波多野洁衣一区| 成人免费视频一区| 成人av电影免费在线播放| 国产.精品.日韩.另类.中文.在线.播放| 蜜桃视频一区二区| 麻豆国产一区二区| 美女网站色91| 国内成人自拍视频| 国产乱子伦一区二区三区国色天香 | 在线亚洲高清视频| 色综合久久久久综合体桃花网| 国产在线播放一区| 韩国在线一区二区| 国产真实乱对白精彩久久| 国产一区二区网址| 国产91丝袜在线播放0| 高清成人在线观看| av中文一区二区三区| 91亚洲国产成人精品一区二三| 成人国产精品免费观看| 99这里只有精品| 一本色道亚洲精品aⅴ| 欧美中文一区二区三区| 7777精品伊人久久久大香线蕉| 国产盗摄视频一区二区三区| 国产91富婆露脸刺激对白| 成人一区二区三区视频| 99在线精品免费| 在线观看视频一区二区欧美日韩| 欧美日韩一区二区三区视频| 欧美一区二区二区| 久久九九99视频| 一区二区三区中文字幕电影| 日韩精品乱码免费| 亚洲成av人在线观看| 日本91福利区| 国产高清亚洲一区| 91亚洲精品乱码久久久久久蜜桃 | 国产欧美精品一区二区色综合| 国产精品剧情在线亚洲| 亚洲一二三四在线| 久久成人精品无人区| 男人的j进女人的j一区| 国产99久久久国产精品潘金网站| 99久久夜色精品国产网站| 国产成人av一区二区三区在线观看| 成人app网站| 欧美日韩视频在线观看一区二区三区| 欧美一区2区视频在线观看| 久久精品视频在线看| 亚洲精选一二三| 国产一区二区成人久久免费影院| 91视视频在线直接观看在线看网页在线看 | 日韩欧美国产精品一区| 久久综合久久99| 欧美成人bangbros| 亚洲婷婷在线视频| 麻豆精品蜜桃视频网站| 99精品久久久久久| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 亚洲午夜免费电影| 激情五月婷婷综合网| 欧美主播一区二区三区| 日本一区二区动态图| 奇米精品一区二区三区在线观看| 国产精品456露脸| 欧美日韩一区二区在线视频| 国产精品女人毛片| 精品一区二区三区在线观看国产| 激情综合色综合久久| 欧美日韩一区二区三区视频| 国产精品麻豆一区二区| 蜜桃久久久久久| 欧美三级一区二区| 亚洲欧洲日韩综合一区二区| 九九久久精品视频| 在线电影欧美成精品| 国产精品家庭影院| 丁香另类激情小说| 久久毛片高清国产| 精品一区二区三区久久| 欧美区在线观看| 伊人开心综合网| 91丨porny丨户外露出| 国产精品毛片久久久久久| 国内久久精品视频| 精品少妇一区二区三区在线视频| 午夜成人免费视频| 欧美在线999| 亚洲在线观看免费视频| av网站免费线看精品| 国产精品久久久久影院老司| 国产一区啦啦啦在线观看| 精品日韩一区二区三区| 久久er精品视频| 精品国产一二三| 亚洲一区国产视频| 欧美午夜宅男影院| 亚洲h精品动漫在线观看| 欧美日韩大陆一区二区| 亚洲va韩国va欧美va| 欧美高清激情brazzers| 亚洲va在线va天堂| 欧美一区二区三区公司| 全国精品久久少妇| 精品国产凹凸成av人导航| 国内精品久久久久影院薰衣草| 久久久亚洲精品石原莉奈| 国产成人综合自拍| 国产精品美女www爽爽爽| 成人av电影在线网| 夜夜揉揉日日人人青青一国产精品| 色拍拍在线精品视频8848| 亚洲丶国产丶欧美一区二区三区| 欧美乱熟臀69xxxxxx| 一本色道久久加勒比精品| 亚洲bdsm女犯bdsm网站| 日韩三级电影网址| 国产一区在线看| 国产精品成人网| 欧美专区在线观看一区| 看片网站欧美日韩| 国产欧美日韩在线视频| 91色.com| 日本欧美肥老太交大片| 国产亚洲成av人在线观看导航| 成人国产免费视频|