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

📄 w44b0init.s

📁 44b0迷你boot
💻 S
字号:
;**************************************************************************
;NAME: W44B0init.s
;copyright:wzz at Qingdao University 2008
;**************************************************************************
;Include Header File
;================================================================
	GET inc\SFRCFG.s   	;SFRegister config
;================================================================	
 AREA Init,CODE,READONLY
 CODE32
 ENTRY
;------------------------------------------------
;Watch dog disable
;------------------------------------------------
   	ldr	 r0,=aWTCON			;disable watchdog
	ldr	 r1,=0x0
	str	 r1,[r0]
;------------------------------------------------
;Interrupt disable
;------------------------------------------------
	ldr	 r0,=aINTMSK		
	ldr	 r1,=cINTMSK_Reset	;all interrupt disable
	str  	 r1,[r0]
;------------------------------------------------
;clock control
;------------------------------------------------
	ldr r0,=aLOCKTIME
	ldr r1,=cLOCKTIME
	str r1,[r0]
	
	ldr r0,=aPLLCON
	ldr r1,=cPLLCON
	str r1,[r0]

	ldr r0,=aCLKCON
	ldr r1,=cCLKCON
	str r1,[r0]
;------------------------------------------------
;MEMORY control
;------------------------------------------------
	 LDR r0, =SMRDATA
	 LDMIA r0, {r1-r13}
	 LDR r0, =0x01c80000 ; BWSCON Address
	 STMIA r0, {r1-r13}
;------------------------------------------------
;GPIO control
;------------------------------------------------
	ldr r0,=aPCONA
	ldr r1,=cPCONA
	str r1,[r0]
	
	ldr r0,=aPCONB
	ldr r1,=cPCONB
	str r1,[r0]
	
	ldr r0,=aPCONC
	ldr r1,=cPCONC
	str r1,[r0]
	ldr r0,=aPUPC
	ldr r1,=cPUPC
	str r1,[r0]
	
	ldr r0,=aPCOND
	ldr r1,=cPCOND
	str r1,[r0]
	ldr r0,=aPUPD
	ldr r1,=cPUPD
	str r1,[r0]
	
	ldr r0,=aPCONE
	ldr r1,=cPCONE
	str r1,[r0]
	ldr r0,=aPUPE
	ldr r1,=cPUPE
	str r1,[r0]
	
	ldr r0,=aPCONF
	ldr r1,=cPCONF
	str r1,[r0]
	ldr r0,=aPUPF
	ldr r1,=cPUPF
	str r1,[r0]
	
	ldr r0,=aPCONG
	ldr r1,=cPCONG
	str r1,[r0]
	ldr r0,=aPUPG
	ldr r1,=cPUPG
	str r1,[r0]
	
	ldr r0,=aSPUCR
	ldr r1,=cSPUCR
	str r1,[r0]
;================================================================
;初始化完毕,串口显示信息
;================================================================
;init Uart0
	ldr r0,=aULCON0
	ldr r1,=cULCON0
	str r1,[r0]
	
	ldr r0,=aUCON0
	ldr r1,=cUCON0
	str r1,[r0]
	
	ldr r0,=aUFCON0
	ldr r1,=cUFCON0
	str r1,[r0]
	
	ldr r0,=aUMCON0
	ldr r1,=cUMCON0
	str r1,[r0]
	
	ldr r0,=aUBRDIV0
	ldr r1,=cUBRDIV0
	str r1,[r0]
;work uart0

	ADR r3,string
next
	LDRB r4,[r3],#1
	ldr r0,=aUTXH0
	str r4,[r0]
	ldr r0,=aUTRSTAT0
	tst  r4,#0x0A
	B
check
	ldr r1,[r0]
	tst r1,#2
	BEQ check
	BNE next
	B	.

	LTORG
	ALIGN

;*************************************************************
SMRDATA
;-------------------------------------------------------------------------------------------------- 
 DCD cBWSCON16
;-------------------------------------------------------------------------------------------------- 
 DCD ((B0_Tacs<<13)+(B0_Tcos<<11)+(B0_Tacc<<8)+(B0_Toch<<6)+(B0_Tcah<<4)+(B0_Tpac<<2)+B0_PMC); GCS0
 DCD 0x0700; GCS1
 DCD 0x0700; GCS2
 DCD 0x0700; GCS3   
 DCD 0x0700; GCS4 
 DCD 0x0700; GCS5 
;-------------------------------------------------------------------------------------------------- 
 DCD ((B6_MT<<15)+(B6_Trcd<<2)+(B6_SCAN))	;GCS6
 DCD ((B7_MT<<15)+(B7_Trcd<<2)+(B7_SCAN))	;GCS7
;-------------------------------------------------------------------------------------------------- 
 DCD ((REFEN<<23)+(TREFMD<<22)+(Trp<<20)+(Trc<<18)+(Tchr<<16)+REFCNT)	;REFRESH RFEN=1, TREFMD=0, trp=3clk, trc=5clk, tchr=3clk,count=1019
 DCD 0x10			;SCLK power mode, BANKSIZE 32M/32M
 DCD 0x20			;MRSR6 CL=2clk
 DCD 0x20			;MRSR7
;-------------------------------------------------------------------------------------------------- 
string DCB "Hello ARM World!\n"
 END

⌨️ 快捷键说明

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