📄 initad50.asm
字号:
.include "reg.h"
.def _init_AD50
.mmregs
temp .usect "temp",1
NOP_REQ .set 0000h ; Pseudo reg0 val
REG1_VAL .set 0104h ; INP & INM for DAC, (15+1)bit mode DAC
READ_REG1 .set 2100h ; read reg1 value
REG2_VAL .set 0210h ; 16-bit ADC mode, rest is default
REG3_VAL .set 0300h ; No delayed frame-sync
REG4_VAL .set 04F0h ; Fs = MCLK/(256*N) = 8.192E6/(256*4)
; Gain: Input=0dB, Output=0db
SEC_REQ .set 0001h
RST_REQ .set 0180h
.text
_init_AD50:
PORTW 15,#0;向0端口写15地址存的数据
NOP
NOP
STM SPCR2,MCBSP1_SPSA;加载子地址0001h给mcbsp地址寄存器
LOOP1: BITF *(MCBSP1_SPSD), #0x0002
BC LOOP1, NTC ;数据是否被TLC320AD50C接收
NOP
NOP
STM SEC_REQ, MCBSP1_DXR1
STM SPCR2,MCBSP1_SPSA;加载子地址0001h给mcbsp地址寄存器
LOOP11: BITF *(MCBSP1_SPSD), #0x0002
BC LOOP11,NTC ;数据是否被TLC320AD50C接收
NOP
NOP
STM #REG4_VAL, MCBSP1_DXR1
STM SPCR2,MCBSP1_SPSA
LOOP2: BITF *(MCBSP1_SPSD), #0x0002
BC LOOP2, NTC
NOP
NOP
STM SEC_REQ, MCBSP1_DXR1
STM SPCR2,MCBSP1_SPSA
LOOP22: BITF *(MCBSP1_SPSD), #0x0002
BC LOOP22, NTC
NOP
NOP
STM #REG1_VAL, MCBSP1_DXR1
STM SPCR2,MCBSP1_SPSA
LOOP3: BITF *(MCBSP1_SPSD), #0x0002
BC LOOP3, NTC
NOP
NOP
STM SEC_REQ, MCBSP1_DXR1
STM SPCR2,MCBSP1_SPSA
LOOP33: BITF *(MCBSP1_SPSD), #0x0002
BC LOOP33, NTC
NOP
NOP
STM #REG2_VAL, MCBSP1_DXR1
STM SPCR2,MCBSP1_SPSA
LOOP4: BITF *(MCBSP1_SPSD), #0x0002
BC LOOP4, NTC
NOP
NOP
STM SEC_REQ, MCBSP1_DXR1
STM SPCR2,MCBSP1_SPSA
LOOP44: BITF *(MCBSP1_SPSD), #0x0002
BC LOOP44, NTC
NOP
NOP
STM #REG3_VAL, MCBSP1_DXR1
RETD
NOP
NOP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -