
本应用选用MAX1132双极性、内部时钟、短采集模式的工作方式,其工作时序如图3所示。图中,tACQ是采集输入信号的时间,tCONV是进行转换所需要的时间。由图可以看出,MAX1132在片选CS有效、开始位由DIN端打入后即可开始对输入信号的采集,并一直到控制字节P2位进入其内部移位寄存器以后便可完成对输入信号的采集。因此,当使用MAX1132的三个用户可编程输出口去控制一个多路开关时,要特别注意对输入通道的切换时间。由于MAX1132在应用中需要在输入端连接一个缓冲放大器,而这个缓冲放大器在输入信号变化时需要一定的时间去响应信号的变化,所以输入通道应该在信号采集完成以后马上被切换,而不是在转换完成以后再切换。也就是说,对MAX1132送当前转换通道的控制字节时,就要将下一通道的控制信号(P2、P1、P0)送入其内部移位寄存器中并打开多路开关的下一通道,以确保缓冲放大器有足够的时间响应信号的变化以准确完成转换。此外,串行选通信号SSTRB在转换开始时为低,转换结束时变高,因此,可以利用它来对单片机产生中断或采用查询方式判断转换是否完成。片选CS在这种工作方式下可以不保持为低。转换进行时,可由一个内部寄存器存储转换的数据。转换结束后,可由SCLK时钟在任意时刻将数据移出,转换结果的最高位(MSB)会在SSTRB变高后出现在DOUT上。
下面给出一段完整的转换和控制程序,以供参考:
START:CLRP1.0 ;片选有效
MOV A,#0A0H ;控制字节
MOV R2,#08
DIN: CLR P1.4
RLC A
MOV P1.1,C ;送控制字
SETB P1.4
DJNZ R2,DIN
CLR P1.4
SETB P1.0
WAIT: JNB P1.3,WAIT
STORB: MOV R7,#16
CLR P1.0
LOOP: MOV C,P1.2 ;读结果
MOV A,31H
RLC A
MOV 31H,A ;存高8位
MOV A,30H
RLC A
MOV 30H,A ;存低8位
SETB P1.4
CLR P1.4
DJNZ R7,LOOP