📄 max197b.asm
字号:
;/* 这是被CALL197.C调用的MAX197汇编程序,文件名为M197B.ASM */
;/* 功能:本程序主要是读出MAX197输入通道CH0~CH7任一通道的模数转换值,*/
;/* 转换值放在寄存器R6,R7中,R6放高位。MAX197芯片的8个通道可选 */
;/* 四种输入范围(±10V,±5V,0~10V,0~5V)之一,这里采用0~5V */
;/* 输入。MAX197有内部时钟和外部时钟两种工作模式,这里采用内 */
;/* 部时钟模式。MAX197有内带4.096V的参考电压,也可用外部参考 */
;/* 电压,这里采用内带4.096V的参考电压。 */
;/* MAX197的控制字:输入电压范围为单极性(0-5V)、内部触发采 */
;/* 集方式、第1通道,则应写入16 进制数40H,而对应第8通道则写入 */
;/* 47H。判断转换完成与否用延时方式-延时10μs。 */
NAME MAX197B
?PR?_a_func?MAX197B SEGMENT CODE
?DT?_a_func?MAX197B SEGMENT DATA OVERLAYABLE
?DT?MAX197B SEGMENT DATA
PUBLIC chai
PUBLIC ?_a_func?BYTE
PUBLIC _a_func
RSEG ?DT?_a_func?MAX197B
?_a_func?BYTE:
aa:DS 1
RSEG ?DT?MAX197B
chai:DS 2
RSEG ?PR?_a_func?MAX197B
_a_func:
CS EQU P3.7
WRR EQU P3.5
RDR EQU P3.4
HEBN EQU P3.3
MOV aa,R7 ;R7中放传递进来的字符型参数,为控制字
MOV A,aa
CLR CS
NOP
CLR WRR
NOP
MOV P1,A ;采集通道控制字由累加器A送入P1中
SETB WRR
NOP
SETB CS
NOP ;用延时方式-等待转换完成
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
CLR CS
CLR RDR
MOV P1,#0FFH
SETB HEBN
MOV A,P1 ;接受高4位
ANL A,#0FH
MOV R6,A ;R6中放返回转换值高4位
MOV P1,#0FFH
CLR HEBN
MOV A,P1 ;接受低8位
MOV R7,A ;R7中放返回转换值低8位
SETB RDR
SETB CS
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -