📄 ad77053.asm
字号:
;/* 这是AD7705汇编程序,文件名为AD77053.ASM */
;/* 功能:本程序主要是读出AD7705芯片输入通道CH0(或CH1)的模数转 */
;/* 换值,转换值放在寄存器A,B中,B中放高位。AD7705芯片的2个通道 */
;/* 可编程为单极性/双极性和差动/单端工作, 这里采用单端\单极性 */
;/* 输入。本例中AD7705连接的晶振为4MHZ,参考电压为5V,选择通道 */
;/* 增益为1,采用自校准方式 。 */
DRDY BIT P1.3
CS BIT P1.4
SO BIT P1.5
SCK BIT P1.6
SI BIT P1.7
ORG 0000H
AJMP MAIN
ORG 0013H
MAIN:
;AD7705初始化
MOV A,#20H;
LCALL WRADC
MOV A,#04H;
LCALL WRADC
MOV A,#10H;
LCALL WRADC
MOV A,#44H;#7CH;
LCALL WRADC
JB DRDY,$ ;等待DRDY变低
MOV A,#38H
LCALL WRADC
LCALL RDADC
SJMP $
WRADC: ;写一个字节子程序
NOP
SETB SCK
CLR CS
MOV R0,#08H
WRADC1:
CLR SCK
RLC A
MOV SI,C
SETB SCK
DJNZ R0,WRADC1
CLR SI
SETB CS
RET
RDADC: ;读转换数据子程序
NOP
JB DRDY,$ ;等待DRDY变低
CLR CS
MOV R0,#08H
RDADC1:
SETB SCK
CLR SCK
MOV C,SO
RLC A
DJNZ R0,RDADC1
MOV B,A ;高字节在寄存器B中
MOV R0,#08H
RDADC2:
SETB SCK
CLR SCK
MOV C,SO
RLC A ;低字节在寄存器A中
DJNZ R0,RDADC2
SETB CS
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -