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

📄 norflash_bootloader.s

📁 嵌入式系统两种启动模式源代码
💻 S
字号:
;********************************************************************************************
;*filename:			boot.s						
;*author:			WUER xiao 
;*create date:		2005-5-10 16:25                                                                      
;*description:	    This file is used for 16 bit NOR FLASH bootloader                                                              
;*modify history:	                                                                      
;*misc:           
;********************************************************************************************



	AREA BOOTLOADER, CODE, READONLY                                                     
	ENTRY                           ; Mark first instruction to execute 

;配置16位CSA Nor Flash
	ldr		r1, =0x11000004    ;THE ADD OF EMI_CSGBAB   
	ldr		r2, =0x24002000	                     
	str		r2, [ r1 ] 


	ldr		r1, =0x11000008    ;THE ADD OF EMI_CSGBCD   
	ldr		r2, =0x2c002800	                       
	str		r2, [ r1 ]     

	ldr		r1, =0x1100000c    ;THE ADD OF EMI_CSGBEF   
	ldr		r2, =0x34003000	                       
	str		r2, [ r1 ]     

		                          
	ldr		r1, =0x11000000        ;THE ADD OF EMIADDR_SMCONF
	ldr		r2, =0x090001ff		;=0x0b0001aa
	str		r2, [ r1 ]

	ldr		r1, =0x11000014        ;THE ADD OF EMIADDR_SMCONF1
	ldr		r2, =0x0110a077	
	str		r2, [ r1 ]

	ldr		r1, =0x11000018        ;THE ADD OF EMIADDR_SMCONF2
	ldr		r2, =0x80000500
	str		r2, [ r1 ]

	
;配置工作频率为60MHz
	
	ldr		r1, =0x1000100c
	ldr		r2, =0x17fff
	str		r2,[r1]
	        	
	ldr		r1, =0x10001014
	ldr		r2, =0x1
	str		r2,[r1]
	        	
	ldr		r1, =0x10001000
	ldr		r2, =0x018000cd
	str		r2,[r1]
	        	
	ldr		r1, =0x10001004
	ldr		r2, =0X230
	str		r2,[r1]
	        	
	ldr		r1, =0x10001004
	ldr		r2, =0X1230
	str		r2,[r1]
	

	
;拷贝kernel代码到SDram

	ldr		r3, =0x00000000
	ldr		r1, =0x30002000					;the address of SDRAM
	ldr		r2, =0x20001000					;the address of NorFlash
	
LOOP	
	ldrb		r4, [r2], #1
	strb		r4, [r1], #1
		
	add 		r3, r3, #1
	cmp			r3,	#0x1f0000 
	bne  LOOP    
	
	
;remap操作	
	ldr 	pc, =0x200000ac
	
	mov		r0, r0
	mov		r0, r0
	mov		r0, r0 
	mov		r0, r0



REMAP
	ldr		r1, =0x11000010    				;REMAP 0 ADDRESS TO SDRAM
	ldr		r2, =0x0000000b    	
	str		r2, [r1]  
	


	
;重新设定PC,开始操作系统启动
	ldr 	pc, =0x30002000

DEAD
	b DEAD
	
	END

⌨️ 快捷键说明

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