在进行A/D转换之前,要确认被转换的模拟信号是否满足模数转换器只有17KΩ输入阻抗的要求,然后向MAX1032依次送入信号输入控制字和工作模式控制字。
3.1 信号输入控制字
信号输入控制字用来选择被转换的模拟通道、转换方式和转换范围,其格式如表1所示。
表1 信号输入控制字
3.2 工作模式控制字
MAX1032有外部时钟、外部采样、内部时钟等三种工作模式,通过表2所示的工作模式控制字进行选择。
(1) 外部时钟模式。在此模式下能达到最快的转换速率。SCLK控制模拟信号的采集及转换,这样在模拟信号的获取时,更加便于精度的控制。
(2) 外部采样模式。在此模式下以最慢的转换速率达到最大限度的吞吐量。其主要特点是由SCLK控制模拟信号的采集、内部时钟控制模拟信号的转换。在前15个时钟周期内CS必须保持低电平,然后发生跳变并保持高电平。为了得到最佳的转换效果,应将DIN和SCLK置空闲位。
(3) 内部时钟模式。在此模式下,内部时钟控制模拟信号的采集和转换,内部时钟在SCLK的第8个周期的下降沿后的100ns-400ns时间内启动转换,其速率大约为4.5MHz。转换结束后,SSTRB置位高电平、CS置位低电平导出转换结果。
表2 工作模式控制字
4 应用举例
本文以MAX1032在DS87C520中的应用为例,介绍MAX1032与CPU的接口方法与软件设
计。
DS87C520介绍
达拉斯公司生产的DS87C520是一种新型高速全静态CMOS单片机,其引脚和指令集与8051单片机完全兼容。DS87C520的处理器核心经过重新设计,一个机器周期只占4个时钟周期。实际应用表明,若时钟频率相同,DS87C520执行相同指令的速度是8051的1.5到3倍,加上DS87C520最高时钟频率为33MHz,而8051仅为12MHz,因此DS87C520为一款高速单片机,可以满足高速数据传输过程中的速率要求。此外,DS87C520还有两个全双工串行口、13个中断源、16KB片内 EPROM、1KB片内SRAM、双数据指针、电源电压下降自动复位、可编程看门狗定时器等丰富的硬件功能,使其具有了广阔的应用领域与前景。
MAX1032与DS87C520的连接
图3是MAX1032与DS87C520的应用连接。在本例中,我们采取的是内部时钟模式,工作模式控制字为10101000B。为了提高计算机系统的抗干扰能力,在MAX1032与DS87C520之间增加了高速光电耦合器6N136,以隔离现场干扰对计算机的影响。对MAX1032的控制是通过DS87C520的P1口进行的。其中,SSTRB反映了A/D转换的工作状态,可以用查询方式或中断方式监测该信号,以便及时读取正确的转换结果。
程序采用C51语言编写,并在KEILC51 V6.20环境下通过了调试。程序的编写思路是:定义DS87C520的P1.0为MAX1032的片选信号CS,P1.1为数据输入DIN,P1.2为数据输出DOUT,ALE提供MAX1032的时钟信号SCLK。在确定并送入信号输入控制字和工作模式控制字后,A/D转换被启动,经过一段时间的延时(A/D转换),SSTRB端发生上升沿跳变,表明A/D转换结束。在时钟SCLK的作用下,从数据输出端DOUT读出两个字节长度的转换结果。将读出的数据存入两个无符号字符变量中,将这2个字符变量拼成一个16位无符号整型变量作用函数返回值返回,返回值的低14位有效。