📄 ad9850brs.asm
字号:
;这是9850的串行控制初始化控制程序并且产生单频
;****************端口定义**********************************
RESET EQU P2.7
W_CLK EQU P2.5
FQ_UD EQU P2.6
DATA7 EQU P0.7
;**********************************************************************
ORG 0000H
AJMP MAIN
ORG 0100H
MAIN: LCALL INIT
LCALL WR_FTW
SJMP $
;###########写数据子程序################## ;入口为寄存器A
WR_byte: MOV R0,#08H
CLR W_CLK
LOOP: RRC A
MOV DATA7,C
SETB W_CLK
NOP
CLR W_CLK
DJNZ R0,LOOP
RET
;####################写频率控制字子程序#############################
WR_FTW: CLR FQ_UD
MOV R2,#05H
MOV A,#00H
MOV R1,A
MOV DPTR,#TABLE
LOOP1:
MOVC A,@A+DPTR
LCALL WR_byte
INC R1
MOV A,R1
DJNZ R2,LOOP1
SETB FQ_UD
CLR FQ_UD
RET
;####################初始化子程序#############################
INIT: CLR RESET
CLR W_CLK ;初始化信号脚
CLR FQ_UD
SETB W_CLK ;设置为串行输入
CLR W_CLK
SETB FQ_UD
CLR FQ_UD
RET
TABLE: DB 00H,10H,60H,20H,00H ;控制字,前一位设置相位、电源、工作方式,后四位为频率控制字。
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -