MOV A,R1 ;将控制字送A
LCALL INPUT ;控制字输入子程序
CLR P1.1 ;SCLK第8个时钟的下降沿
CLR P1.2
SETB P1.1
CLR P1.1 ;SCLK第9个时钟的下降沿
….
SETB P1.1 ;SCLK第13个时钟的上升沿
ACALL OUTPUT ;输出AD转换后的数据
CLR P1.1
SETB P1.0
RET
INPUT: NOP ;MAX1270的控制字输入子程序
MOV R2,#08H ;控制字有8位
LOOP3: CLR P1.1
RLC A ;控制字在A中
MOV P1.2, C
SETB P1.1
DJNZ R2, LOOP3
RET ;SCLK处于第8个脉冲的高电平
OUTPUT: NOP ;12位数据输出子程序
MOV R2,#04H ;输出数据高4位
LCALL OUTPUT1
MOV R3, A ;高4位送R3
MOV R2,#08H ;输出数据低8位
ACALL OUTPUT1
MOV R4, A ;低8位送R4
RET
OUTPUT1: CLR A
LOOP8: SETB P1.3 ;置P1.3为输入
CLR P1.1
NOP ;等待SSTRB由高变低,至少200ns
MOV C, P1.3
RLC A
SETB P1.1
DJNZ R2, LOOP8
RET
4. 应用实例
将MAX1270数据采集电路应用于毛细管电泳电导检测系统中。该检测系统需要4路双极性数据采集,其中3路为电泳通道电流、1路为电导检测电流,其中通道电流用于监视系统工作状态,而检测电流是标志被测物质含量的关键信息。将所采集电流信号调理、转换成-10~+10V的电压信号,再经MAX1270模数转换后通过单片机串口发送给PC机存储、显示。单片机振荡频率12MHz、串口波特率62.5KHz,程序框图如图4所示。PC机数据接收和显示由其它高级语言编写。检测系统运行结果表明该数据采集电路的采集速率和转换精度完全满足要求。
5. 结论
本文介绍了MAX1270的特点并在分析工作时序的基础上首次给出外部时钟、25SCLK/S转换方式下的AD转换程序,愿与同行交流。实际使用表明,MAX1270完全满足转换速率和转换精度要求,是双极性、多路数据采集的合理选择。
本文作者创新点如下:
① 实现了MAX1270与单片机的最简接口。只需4根连接线(SCLK、DIN、DOUT、/CS)而不用SSTRB启动数据的输出。
② AD转换后的数据即时发送给PC机,单片机不需外接数据存储器。
这两点都在一定程度上简化了硬件电路。