📄 c54_init.asm
字号:
.copy 5410.mmreg
.def _c54_init,_hpidsp_host,_delay
.global _ad_samp_freq
.bss _ad_samp_freq,1
.bss IO_Outdata,1
.text
_c54_init:
SSBX INTM
portr 0400h,IO_Outdata
;CPU
STM 0,ST0 ;ARP=0、DP=0
STM 0100001101011111B,ST1 ;CPL=0 DP直接寻址、中断屏蔽、溢出保护、
;符号扩展、FRCT有效、ARP无效、ASM=-1
STM 0010000000100100B,PMST ;中断定位2000H、程序/数据空间有效,DROM=1 SARAM2有效
STM 0x7FFF,SWWSR ;0 WS for memory, 2 WS for I/O */
STM 0x3,@0x2B
;
;CLK
STM 0,BSCR ;CLKOUT = CPU CLOCK
NOP
NOP
STM 0,CLKMD ;Reset to DIV Mod
NOP
NOP
STM 1001011111111111B,CLKMD ;PLL Multiply 10
NOP
NOP
NOP
NOP
;TOUT = 100M/16
STM 0000010000010001B,TCR ;TDDR=3
NOP
NOP
STM 0XFFFE,PRD ;PRD=3
NOP
NOP
STM 0000010000000011B,TCR ;TDDR=3
NOP
NOP
;
portw IO_Outdata,0400h
CALL WAITT
;McBSP0
STM 0,SPSA0
STM 0X40A0,SPCR0 ;SPCR10 ;reset
STM 1,SPSA0
STM 0X0220,SPCR0 ;SPCR20
STM 2,SPSA0
STM 0X0040,SPCR0 ;RCR10 ;receive frame and word length
STM 3,SPSA0
STM 0X0040,SPCR0 ;RCR20 ;receive frame and word length
STM 4,SPSA0
STM 0X0040,SPCR0 ;xCR10 ;transmit frame and word length
STM 5,SPSA0
STM 0X0040,SPCR0 ;xCR20 ;transmit frame and word length
STM 0x000e,SPSA0
STM 0CH,SPCR0 ;PCR0 ;Polarity
STM 0,DXR10 ;发送清空
STM 0,23H
NOP
NOP
STM 1,SPSA0
STM 0X0221,SPCR0 ;SPCR20
STM 0,SPSA0
STM 0X40A1,SPCR0 ;SPCR10 ;run
NOP
NOP
;
;AD变换器0
CALL WAITT
;reg 2 AD分频器
CALL DX0EMPT
STM 0,DXR10 ;发送清空
CALL DX0EMPT
STM 1,DXR10 ;第二串口通信请求
CALL DX0EMPT
ld *(_ad_samp_freq),A
stlm A,DXR10
;STM 0000010000000001B,DXR10 ;
CALL DX0EMPT
STM 0,DXR10
;reg 4 输入放大
CALL DX0EMPT
STM 0,DXR10 ;发送清空
CALL DX0EMPT
STM 1,DXR10 ;第二串口通信请求
CALL DX0EMPT
STM 0000100000001100B,DXR10 ;
CALL DX0EMPT
STM 0,DXR10
;AD变换器1缺省值
CALL WAITT
;interupt enable
STM 0X630,IMR ;BSP0,BSP1,HINT,TIMER,INT0
NOP
RSBX INTM
RET
WAITT: STM #0X0FFF,AR0
WAITT0: STM #0X03F,AR1
WAITT1: BANZ WAITT1,*AR1-
BANZ WAITT0,*AR0-
RET
;MCBSP0 发送空检测
DX0EMPT:STM 1,SPSA0
LDM SPCR0,A ;SPCR20
NOP
NOP
AND #0004h,A
NOP
NOP
BC DX0EMPT,ANEQ
NOP
NOP
CALL WAITT
NOP
RET
_delay: STM #0X1,AR0
delay0: STM #0X1,AR1
delay1: BANZ delay1,*AR1-
BANZ delay0,*AR0-
RET
_hpidsp_host
STM 0x0a,HPIC ;to init a hpi to host int!
ret
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -