串行DA转换器MAX538接口技术及应用

胡卫华,王冬,谢起成,陈全世,田光宇

(清华大学,汽车安全与节能国家重点实验室,北京100084)

   [摘  要]介绍了MAXIM公司的串行DA转换器MAX538与单片机和PC的接口技术。主要内容包括:MAX538和单片机的接口设计要点及应用实例;基于PC并口和LabVIEW的串行通讯模拟软件;多通道模拟量同步调节的实现方案。

   [关键词MAX538;数模转换;单片机;并口;LabVIEW

 

    在后向通道中采用DA转换器是计算机实现对模拟量控制的常用方式,而串行DA转换器由于接口电路简单、易于远程操作以及体积小、功耗低等优点而广泛应用于便携式设备或分布式控制系统中。本文介绍串行DA转换芯片MAX538与单片机、PC机的接口技术及应用。

 

 

 

1MAX538简介

         MAX538MAXIM公司提供的单5V电源供电、内置输出缓冲的12位串行数模转换器,与MAX531MAX539为同一系列产品,其功能框图如图11MAX538输出电压范围为02.6V,具有上电复位和串行数据输出功能,便于构建菊花链式结构,其耗电仅140 μA,适合电池供电或便携式设备。

2MAX538接口与时序

         MAX538采用由片选、时钟和数据构成的三线制串行数据接口,与SPIQSPIMicrowire等多种串行通信标准兼容。芯片通过写入两个字节进行编程,先将包括4个无效位的高位字节写入移位寄存器的MSB,然后将低位字节写入寄存器LSB,其中无效位仅在芯片构成菊花链结构时需要。当片选信号CS为低时,在时钟上升沿数据被写入16位移位寄存器。当CS变高时,移位寄存器的低12位被转移到数模转换寄存器中,同时更新输出电压。MAX538的工作时序如图21,其时钟频率上限为14 MHz,移位寄存器数据更新速率高达877 kHz,但由于12位数模转换的建立时间为25 μs,这将MAX538满幅阶跃调节频率限制在40 kHz左右,而这一频率已经能够满足普通工业控制系统对执行器调节速度的要求。

 

 

 

3MAX538与单片机接口技术及应用

         MOTOROLAATMELMICROCHIP等主要单片机厂商提供具有串行外围接口SPI单片机,而

 

 

MAX538的数据接口和SPI兼容,这为它在单片机系统中的应用提供了方便。SPI接口采用时钟CLK、输出数据DO、输入数据DIN 3根信号线进行时钟同步与数据传输,可以工作在全双工通信模式,并由片选线CS实现多机通信或扩展多片SPI芯片,是一种高效的同步串行通信接口。当MAX538和具有SPI接口的单片机协同工作时,只需将对应信号线连接并正确设置单片机的相关寄存器,相应软件的编写工作简单。下面以MICROCHIP公司的PIC单片机为例对MAX538在单片机系统中的应用进行说明。

        PIC单片机由于效率高、功耗低、体积紧凑等优点在小规模或便携式控制系统中广泛应用,PIC16F873MAX538构建的电动汽车电池温度管理系统如图31所示。系统通过PIC16F873AD模块对电池组温度多点采样,根据当前温度和冷却要求确定风扇功率即斩波器的控制电压,然后将对应数据通过SPI接口传送至MAX538,由MAX538实现对斩波器的控制。其中,接口设计的关键是,PIC16F873SPI接口模块根据时钟极性和采样边沿的不同分为4种工作模式,而MAX538只能工作在时钟上升沿采样的模式,为实现两者的通信,需要正确设置PIC16F873的同步串行口状态寄存器SSPSTAT的时钟边沿选择位CKE和控制寄存器SSPCON的时钟极性选择位CKP。

4MAX538PC接口技术及应用

    对于以PC为主体的控制系统,在后向通道中采用串行DA转换器,可以方便的实现多个变量的远程调节。由于PC不提供支持SPIQSPI等串行通信协议的硬件接口,所以当需要由PC直接控制MAX538时,必须编写软件对上述串行通信协议进行模拟。下面利用PC并口LPT1LabVIEW软件平台,提供一种MAX538和计算机的接口实现方案。接口电路原理图如图41所示,使用LPT1的数据输出口0×378作为计算机和MAX538的通讯口,LPT1的数据输出位<02>分别作为MAX538的时钟SCLK、串行数据输入DIN和片选信号CS,协议实现步骤如下:

 

 

        (1)将对应12位分辨率的调节量转换为16位无符号整形数,并通过“数值/逻辑向量转换”函数将其转换为1×16的逻辑向量;

        (2)在数据输出口0×378写入0×04,将MAX538的片选信号CS1,等待数据或更新输出;

        (3)片选信号CS0,通过循环的方式将16位数据串行输出,每一位输出对应个“顺序”函数:函数的第一个顺序产生时钟的低电平,并在数据位DIN上输出对应二进制数值;第二个顺序产生时钟高电平,制造时钟上升沿,从而将串行数据输入MAX538的移位寄存器;

        (4)循环结束后,根据控制要求,0×378顺序写入0×000×04,或跳转第1步,使MAX538的片CS1,将12位调节量从移位寄存器输入到DAC寄存器,对输出电压进行更新;软件原理框图及主要函数如图42所示。

 

 

    在硬件配置为P350128RAM的计算机上,通过串行通信协议模拟软件,最高可以实现15 kHz的调节速率,这已经与MAX53840kHz的转换速率比较接近。由于Windows定时中断等运行机制的存在,模拟通信协议在时间上的准确性难以保证,如果对调节频率和时间准确性有更高的要求,可以通过采用高速增强并口EPP协议并开发虚拟设备驱动程序来实现。

     事实上,通过并口可以容易的实现多通道模拟量的同步调节:LPT1数据输出端口0×378的第0>位仍作为时钟信号,<17>位分别对应7MAX538的串行数据输入信号,而片选信号LPT1控制端口0×37A的第<0>位充当,这样可以实现7组模拟量的同步调节。这种低成本高效率的后向通道技术在我们开发的混合动力车硬件在环仿真系统中取得了良好的应用效果。

 

[参考文献]

1MAXIM Inc.New Releases Data Book[M].2000

[2]Microchip Inc.28/40pin 8Bit CMOS FLASH MicrocontrollersM].1998.

[3]张利.PC机打印口的原理及应用[M].北京:北京清华大学出版社,1996.

[4]何立民.单片机应用技术选编(5)[M].北京:北京航空航天大学出版社,1998


1条评论

  1. 如果把单片机换成换成89s51不知道该怎么;;连接有谁能告诉我:

发表评论

评论也有版权!