tlc5620中文资料

  • 格式:doc
  • 大小:52.50 KB
  • 文档页数:7

tlc5620中文资料

2010-01-13 11:00

TLC5620C, TLC5620I

QUADRUPLE 8-BIT DIGITAL-TO-ANALOG CONVERTERS

Four 8-Bit Voltage Output DACs

4通道8位电压输出D/A转换器。

5-V Single-Supply Operation

5V单电源

Serial Interface

串行接口

High-Impedance Reference Inputs

高阻抗的基准输入

Programmable 1 or 2 Times Output Range

可编程实现1至2倍的输出范围

Simultaneous Update Facility

设备可同时进行更新

Internal Power-On Reset

内置上电复位

Low-Power Consumption

低功耗

Half-Buffered Output

半缓冲输出

Applications

应用 Programmable Voltage Sources

可编程电源

Digitally Controlled Amplifiers/Attenuators

可数字控制的放大器和衰减器

Mobile Communications

移动通信

Automatic Test Equipment

自动测试设备

Process Monitoring and Control

过程监控

Signal Synthesis

信号合成

Description

描述

The TLC5620C and TLC5620I are quadruple 8-bit voltage output

digital-to-analog converters (DACs) with buffered reference inputs (high

impedance). The DACs produce an output voltage that ranges between either

one or two times the reference voltages and GND, and the DACs are

monotonic. The device is simple to use, running from a single supply of

5 V. A power-on reset function is incorporated to ensure repeatable

start-up conditions.

TLC5620C和TLC5620I是带有高阻抗缓冲输入的4通道8位电源输出数模转换器集合。这些转换器可以产生单调的、1至两倍于基准电压和接地电压差值的输出。通常情况下TLC5620的供电电压为一个5V电源。器件内集成上电复位功能,确保启动时的环境是可重复的。

Digital control of the TLC5620C and TLC5620I are over a simple three-wire

serial bus that is CMOS compatible and easily interfaced to all popular

microprocessor and microcontroller devices. The 11-bit command word

comprises eight bits of data, two DAC-select bits, and a range bit, the

latter allowing selection between the times 1 or times 2 output range. The DAC registers are double buffered, allowing a complete set of new

values to be written to the device, then all DAC outputs are updated

simultaneously through control of LDAC. The digital inputs feature

Schmitt triggers for high noise immunity.

对TLC5620C和TLC5620I的数字控制是通过一根简单的3路串行总线实现的。该总线兼容CMOS,并易于向所有的微处理器和微控制器设备提供接口。11位的命令字包括8位数据位,2位DAC选择位和1位范围位,后者用来选择输出范围是1倍还是2倍。DAC寄存器采用双缓存,允许一整套新值被写入设备中。通过LDAC实现DAC输出值的同时更新。数字量的输入采用史密斯触发器,从而避免了高噪声。

The 14-terminal small-outline (D) package allows digital control of

analog functions in space-critical applications. The TLC5620C is

characterized for operation from 0°C to 70°C. The TLC5620I is

characterized for operation from –40°C to 85°C. The TLC5620C and

TLC5620I do not require external trimming.

引脚 输入/输出 描述

名称 序号

CLK 7 I 串行接口时钟。引脚出现下降沿时将输入的数字量转发到串行接口寄存器里

DACA 12 O DAC A模拟信号输出

DACB 11 O DAC B模拟信号输出

DACC 10 O DAC C模拟信号输出

DACD 9 O DAC D模拟信号输出

DATA 6 I 存放数字量的串行接口

GND 1 I 地回路及参考终端

LDAC 13 I 加载DAC。当引脚出现高电平时,即使有数字量被读入串行口也不会对DAC

的输出进行更新。只有当引脚从高电平变为低电平时,DAC输出才更新。

LOAD 8 I 串口加载控制。当LDAC是低电平,并且LOAD引脚出现下降沿时数字量被保

存到锁存器,随后输出端产生模拟电压。

REFA 2 I 输入到DAC A的参考电压。这个电压定义了输出模拟量的范围。

REFB 3 I 输入到DAC B的参考电压。这个电压定义了输出模拟量的范围。

REFC 4 I 输入到DAC C的参考电压。这个电压定义了输出模拟量的范围。

REFD 5 I 输入到DAC D的参考电压。这个电压定义了输出模拟量的范围。

VDD 14 I 正极电源

周立功《ARM嵌入式系统实验教程》(三)中的代码:

/****************************************************************************

* 文 件 名:main.c

* 功 能:该实验程序使用TLC5620中A、B、C、D四个通道分别输出周期、幅度相等的

* 锯齿波,频率为6.35Hz。

* 说 明:跳线器JP1、JP2短接。

****************************************************************************/

#include "config.h"

#define

DAC_RNG 1

// 幅值选择

/* TLC5620由P0口控制,控制I/O定义如下 */

#define CLK1 (1<<21)

#define DAT1 (1<<22)

#define LOAD (1<<23)

#define LDAC (1<<24)

#define DAC5620CON (CLK1 | DAT1 | LOAD | LDAC)

/* I/O输出操作函数 */

#define CCLK1() IO1SET = CLK1

#define SCLK1() IO1CLR = CLK1

#define CDAT1() IO1SET = DAT1

#define SDAT1() IO1CLR = DAT1

#define CLOAD() IO1SET = LOAD

#define SLOAD() IO1CLR = LOAD

#define CLDAC() IO1SET = LDAC

#define SLDAC() IO1CLR = LDAC

void DAC5620_Data(uint8 no, uint8 dat);

void PIN_Init(void); void Delay(void);

int main(void)

{ uint8 i;

PIN_Init();

// 初始化CPU的IO口

while(1)

// 发生锯齿波

{

DAC5620_Data(1, i);

DAC5620_Data(2, i);

DAC5620_Data(3, i);

DAC5620_Data(4, i);

i++;

}

return(0);

}

/****************************************************************************

* 名 称:IRQ_Eint3()

* 功 能:外部中断EINT3服务函数,取反B1控制口。

* 入口参数:无

* 出口参数:无

****************************************************************************/

void

PIN_Init(void)

// CPU的IO口初始化函数

{

PINSEL0 = 0x00000000;

PINSEL1 = 0x00000000;

IO1DIR = DAC5620CON;

CCLK1();

// CLK1 = 0

CDAT1();

// DAT1 = 0

SLOAD();