⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 2410slib.s

📁 ARM9-2410的LED灯点亮码源
💻 S
字号:
NOINT EQU 0xc0
	CODE32
	AREA SLIB,CODE,READONLY
	ENTRY
	
	EXPORT SET_IF
SET_IF
   mrs r0,cpsr
   mov r1,r0
   orr r1,r1,#NOINT
   msr cpsr_cxsf,r1		
   mov pc,lr

	EXPORT  WR_IF
WR_IF
   msr cpsr_cxsf,r0		
   mov pc,lr
	
	EXPORT   CLR_IF
CLR_IF
   mrs r0,cpsr
   bic r0,r0,#NOINT
   msr cpsr_cxsf,r0		
   mov pc,lr

R1_I EQU (1 :SHL: 12)
R1_C EQU (1 :SHL: 2)
R1_A EQU (1 :SHL: 1)
R1_M EQU (1)
R1_iA EQU (1 :SHL: 31)
R1_nF EQU (1 :SHL: 30)

	EXPORT   MMU_EnableICache
MMU_EnableICache
   mrc p15,0,r0,c1,c0,0
   orr r0,r0,#R1_I
   mcr p15,0,r0,c1,c0,0
   MOV PC,LR

	EXPORT    MMU_DisableICache
MMU_DisableICache
   mrc p15,0,r0,c1,c0,0
   bic r0,r0,#R1_I
   mcr p15,0,r0,c1,c0,0
   MOV PC,LR

	EXPORT    MMU_EnableDCache
MMU_EnableDCache
   mrc p15,0,r0,c1,c0,0
   orr r0,r0,#R1_C
   mcr p15,0,r0,c1,c0,0
   MOV PC,LR

	EXPORT    MMU_DisableDCache
MMU_DisableDCache
   mrc p15,0,r0,c1,c0,0
   bic r0,r0,#R1_C
   mcr p15,0,r0,c1,c0,0
   MOV PC,LR

	EXPORT   MMU_EnableAlignFault 
MMU_EnableAlignFault
   mrc p15,0,r0,c1,c0,0
   orr r0,r0,#R1_A
   mcr p15,0,r0,c1,c0,0
   MOV PC,LR

	EXPORT    MMU_DisableAlignFault
MMU_DisableAlignFault
   mrc p15,0,r0,c1,c0,0
   bic r0,r0,#R1_A
   mcr p15,0,r0,c1,c0,0
   MOV PC,LR

	EXPORT    MMU_EnableMMU
MMU_EnableMMU
   mrc p15,0,r0,c1,c0,0
   orr r0,r0,#R1_M
   mcr p15,0,r0,c1,c0,0
   MOV PC,LR

	EXPORT    MMU_DisableMMU
MMU_DisableMMU
   mrc p15,0,r0,c1,c0,0
   bic r0,r0,#R1_M
   mcr p15,0,r0,c1,c0,0
   MOV PC,LR

	EXPORT    MMU_SetFastBusMode
MMU_SetFastBusMode
   mrc p15,0,r0,c1,c0,0
   bic r0,r0,#R1_iA|R1_nF
   mcr p15,0,r0,c1,c0,0
   MOV PC,LR

	EXPORT    MMU_SetAsyncBusMode
MMU_SetAsyncBusMode
   mrc p15,0,r0,c1,c0,0
   orr r0,r0,#R1_nF|R1_iA
   mcr p15,0,r0,c1,c0,0
   MOV PC,LR

	EXPORT    MMU_SetTTBase
MMU_SetTTBase
   mcr p15,0,r0,c2,c0,0
   MOV PC,LR

	EXPORT    MMU_SetDomain
MMU_SetDomain
   mcr p15,0,r0,c3,c0,0
   MOV PC,LR

	EXPORT    MMU_InvalidateIDCache
MMU_InvalidateIDCache
   mcr p15,0,r0,c7,c7,0
   MOV PC,LR

	EXPORT    MMU_InvalidateICache
MMU_InvalidateICache
   mcr p15,0,r0,c7,c5,0
   MOV PC,LR

	EXPORT    MMU_InvalidateICacheMVA
MMU_InvalidateICacheMVA	
   mcr p15,0,r0,c7,c5,1
   MOV PC,LR

	EXPORT    MMU_PrefetchICacheMVA
MMU_PrefetchICacheMVA
   mcr p15,0,r0,c7,c13,1
   MOV PC,LR

	EXPORT    MMU_InvalidateDCache
MMU_InvalidateDCache
   mcr p15,0,r0,c7,c6,0
   MOV PC,LR

	EXPORT    MMU_InvalidateDCacheMVA
MMU_InvalidateDCacheMVA
   mcr p15,0,r0,c7,c6,1
   MOV PC,LR

	EXPORT    MMU_CleanDCacheMVA
MMU_CleanDCacheMVA
   mcr p15,0,r0,c7,c10,1
   MOV PC,LR

	EXPORT    MMU_CleanInvalidateDCacheMVA
MMU_CleanInvalidateDCacheMVA
   mcr p15,0,r0,c7,c14,1
   MOV PC,LR
	EXPORT    MMU_CleanDCacheIndex
MMU_CleanDCacheIndex
   mcr p15,0,r0,c7,c10,2
   MOV PC,LR
	EXPORT    MMU_CleanInvalidateDCacheIndex
MMU_CleanInvalidateDCacheIndex	
   mcr p15,0,r0,c7,c14,2
   MOV PC,LR

	EXPORT    MMU_WaitForInterrupt 
MMU_WaitForInterrupt	
   mcr p15,0,r0,c7,c0,4
   MOV PC,LR

	EXPORT    MMU_InvalidateTLB
MMU_InvalidateTLB	
   mcr p15,0,r0,c8,c7,0
   MOV PC,LR

	EXPORT    MMU_InvalidateITLB
MMU_InvalidateITLB	
   mcr p15,0,r0,c8,c5,0
   MOV PC,LR

	EXPORT   MMU_InvalidateITLBMVA
MMU_InvalidateITLBMVA
   mcr p15,0,r0,c8,c5,1
   MOV PC,LR

	EXPORT    MMU_InvalidateDTLB
MMU_InvalidateDTLB
	mcr p15,0,r0,c8,c6,0
	MOV PC,LR

	EXPORT    MMU_InvalidateDTLBMVA 
MMU_InvalidateDTLBMVA
	mcr p15,0,r0,c8,c6,1
	MOV PC,LR
	
	EXPORT    MMU_SetDCacheLockdownBase 
MMU_SetDCacheLockdownBase
   mcr p15,0,r0,c9,c0,0
   MOV PC,LR

	EXPORT    MMU_SetICacheLockdownBase
MMU_SetICacheLockdownBase
   mcr p15,0,r0,c9,c0,1
   MOV PC,LR

	EXPORT    MMU_SetDTLBLockdown
MMU_SetDTLBLockdown
   mcr p15,0,r0,c10,c0,0
   MOV PC,LR

	EXPORT    MMU_SetITLBLockdown
MMU_SetITLBLockdown
   mcr p15,0,r0,c10,c0,1
   MOV PC,LR

	EXPORT    MMU_SetProcessId
MMU_SetProcessId	
   mcr p15,0,r0,c13,c0,0
   MOV PC,LR
	
   END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -