📄 m1247.asm
字号:
;/* 这是MAX1247的汇编程序, 文件名M1247.ASM */
;/* 功能:本程序主要是读出输入通道CH0(或CH1,CH2,CH3)的模数转换值,*/
;/* 转换值放在寄存器R6,R7中,R6放高位。MAX1247芯片的四个通道 */
;/* 可编程为单极性/双极性和差动/单端工作, 这里采用单端\单极性 */
;/* 输入。MAX1247有内部时钟和外部时钟两种工作模式。这里采用内 */
;/* 部时钟模式 */
CS EQU P1.0
SO EQU P1.1
SI EQU P1.2
SCK EQU P1.3
ORG 0000H
CLR EA
CLR SCK
CLR CS
MOV A,#09EH ;09EH-选择CH0,单端,单极性,内部时钟模式
LCALL BYTE_OUT ;0DEH-选择CH1,单端,单极性,内部时钟模式
SETB CS ;0AEH-选择CH2,单端,单极性,内部时钟模式
NOP ;0EEH-选择CH3,单端,单极性,内部时钟模式
NOP
NOP
CLR CS
LCALL BYTE_IN
MOV R6,A
LCALL BYTE_IN
MOV R7,A
SETB CS
CLR C
MOV A,R6
RRC A
MOV R6,A
MOV A,R7
RRC A
MOV R7,A
CLR C
MOV A,R6
RRC A
MOV R6,A
MOV A,R7
RRC A
MOV R7,A
CLR C
MOV A,R6
RRC A
MOV R6,A
MOV A,R7
RRC A
MOV R7,A
MOV A,R6
ANL A,#0FH
MOV R6,A
LJMP $
BYTE_OUT: MOV R0,#08H
BOUT1: CLR SCK
RLC A
MOV SI,C
SETB SCK
DJNZ R0,BOUT1
CLR SI
RET
BYTE_IN: MOV R0,#08H
BIN1: SETB SCK
CLR SCK
MOV C,SO
RLC A
DJNZ R0,BIN1
CLR SCK
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -