APP下载

基于SPI总线的TLC5615在AVR单片机中的应用

2011-06-06左现刚余周侯志松张志霞

关键词:低电平寄存器总线

左现刚,余周,侯志松,张志霞

(河南科技学院,河南新乡453003)

通过单片机I/O口直接控制继电器或可控硅是后向通道中最简单的形式,当被控对象需要根据模拟量的大小连续控制时,最简单的方法便是采用数/模转换器(DAC).DAC种类繁多,从接口形式来看,有串口和并口之分.早期的DAC一般采用并口方式,如广为流行的DAC0832.随着半导体技术的不断发展和进步,为节省CPU的硬件资源,目前一些新型的D/A转换器均采用了流行的串行总线协议,如采用SPI(Serial Peripheral Interface)总线协议的TLC5615.该总线是由Motorola公司提出的一种4线制同步串行外设总线接口,包括时钟、使能、输入和输出4根引脚,主要用于CPU与各种外围器件以串行方式进行通信[1-2].从D/A芯片的输出形式来看,又分为电流输出型和电压输出型两种,常用的DAC0832就是典型的电流输出型D/A转换器.由于输出是电流形式,因此在实际的电路设计中还必须通过运算放大器组成电流/电压转换器将电流输出转化成电压输出.而TLC5615则是电压输出型,可以通过外接的基准电压来调节电压输出的幅度[3-4].

1 TLC5615简介

1.1 概述

TLC5615是带有缓冲基准输入(高阻抗)的10位电压输出DAC,具有基准电压两倍的输出范围,且DAC是单调变化的,使用简单,采用单5 V电源,具有上电复位功能以确保可重复启动.数字控制通过3线串行SPI总线,与CMOS兼容且易于和工业标准微控制器接口.器件接收16位数据字以产生模拟输出.数字输入端带有施密特触发器,具有高噪声抑制能力.工作温度范围为0~70℃.其功能框图如图1所示.

图1 TLC5615内部功能

1.2 引脚功能

8脚直插式TLC5615的引脚分布如图2所示,各引脚功能如表1所示.

图2 TLC5615引脚排列

表1 TLC5615引脚功能

2 TLC5615的工作原理

2.1 TLC5615的时序

图3 TLC5615的工作时序

TLC5615工作时序如图3所示.可以看出,只有当片选CS为低电平时,串行输入数据才能被移入16位移位寄存器.当CS为低电平时,在每一个SCLK时钟的上升沿将DIN的一位数据移入16位移寄存器.注意,二进制最高有效位被导前移入.接着,在CS的上升沿将16位移位寄存器的10位有效数据锁存于10位DAC寄存器,供DAC电路进行转换;当片选CS为高电平时,串行输入数据不能被移入16位移位寄存器.注意,CS的上升和下降都必须发生在SCLK为低电平期间.

2.2 TLC5615的工作方式

从图1可以看出,16位移位寄存器分为高4位虚拟位、低2位填充位以及10位有效位.在单片TLC5615工作时,只需要向16位移位寄存器按先后输入10位有效位和低2位填充位,2位填充位数据任意,这是第一种方式,即12位数据序列.第二种方式为级联方式,即16位数据序列,可以将本片的DOUT接到下一片的DIN,需要向16位移位寄存器按先后输入高4位虚拟位、10位有效位和低2位填充位,由于增加了高4位虚拟位,所以需要16个时钟脉冲.其输出电压为:

VOUT=VREFIN×N/1 024

其中:VREFIN为参考电压,N为输入的二进制数.

3 TLC5615与单片机接口的硬件连接与程序设计

3.1 硬件连接

TLC5615与Mega16接口采用标准的SPI串行总线协议,实际连接可参照图4,当MCU自身不带有SPI接口时,可通过普通I/O口模拟SPI串行总线协议的工作方式.在片选/CS为低电平时,由MCU发往TLC5615的输入数据被读入到16位移位寄存器(最高有效位在前).在SCK时钟信号的上升沿把数据送到输入寄存器,随后由/CS片选信号的上升沿将数据传送至DAC寄存器.当/CS为高电平时,输入数据不能由时钟同步并送入到输入寄存器[5-6].

图4 TLC5615与Mega16的连接

SPI协议规定为8位字节形式,因此数据输入到DAC寄存器需要两个写周期.对于QSPI接口,由于总线传送的数据格式为8位至16位可变,因此可以在一个写周期之内将输入数据装载至DAC输入寄存器.TLC5615的转换精度与PCB板的设计相关,模拟地和数据地在印制电路板中应严格区分.TLC5615的AGND模拟地端应连接到系统模拟地,并应在VDD和AGND之间靠近器件处并联一个电容量为104的旁路电容.

3.2 程序设计及验证

程序编辑软件采用ICCAVR,版本为6.31.程序代码如下:

通过程序可以看出,在保证SPI同步传输的高效性和高速性的同时,采用SPI接口的芯片在和微控制器进行数据通信时,控制程序显得简单和清晰.

4 结论

由于使用带SPI功能的器件采用3或4根信号线进行串入并出数据传输,使程序控制变得更为简洁高效,而且增强控制系统的移植性,大幅简化电路的繁杂布线,提高整体系统的稳定性.另外AVR单片机把SPI总线接作为其技术特性固化在系列芯片中,所以更加方便对具有SPI接口的芯片进行连接和控制.

[1]王志,王文廉,张志杰.SPI及USB双通信接口的设计与实现[J].自动化仪表,2010,31(1):72-75.

[2]王耿,王金明.SPI接口控制器设计与实现[J].电子质量,2010(1):4-5.

[3]孙晓晔.PIC单片机与串行闪存的SPI接口设计[J].单片机与嵌入式系统应用,2010(4):46-48.

[4]陈志彬,王仲初,崔文华.SPI接口芯片在单片机小系统中的应用[J].自动化与仪表,2001(1):63-65.

[5]耿德根,宋建国.AVR高速嵌入式单片机原理与应用[M].北京:北京航空航天大学出版社,2001.

[6]彭希南.基于SPI接口的ISD4104系列语音录放芯片及其应用[J].微型机与应用,2000(9):24-26.

猜你喜欢

低电平寄存器总线
STM32和51单片机寄存器映射原理异同分析
铁道车辆高/低电平信号智能发生器设计
Lite寄存器模型的设计与实现
2017款凯迪拉克2.8L/3.0L/3.2L/3.6L车型低电平参考电压总线电路图
基于PCI Express总线的xHC与FPGA的直接通信
机载飞控1553B总线转以太网总线设计
15-MeV电子直线加速器的低电平系统
多通道ARINC429总线检查仪
基于EtherCAT总线的ROV控制系统设计
集成电路静态参数测试