SPI串行接口AD转换器TLC2543
串行总线
PCF8563是PHILIPS公司推出的一款工业级内含I2C总线接口 功能的具有极低功耗的多功能时钟/日历芯片。 PCF8563的多种报警功能、定时器功能、时钟输出功能以及 中断输出功能。 内部时钟电路、内部振荡电路、内部低电压检测电路1.0V 以及两线制I2C总线通讯方式,不但使外围电路极其简洁, 而且也增加了芯片的可靠性。 每次读写数据后内嵌的字地址寄存器会自动产生增量。 是一款性价比极高的时钟芯片,它已被广泛用于电表、水 表、气表、电话、传真机、便携式仪器以及电池供电的仪 器仪表等产品领域。
I2C总线工作特点
SDA、SCL 启动条件 终止条件 应答信号 典型应用系统图(可挂接不同功能的芯片,不同类型的芯片 有不同的器件地址)
串行E 一 串行E2PROM 24C**
I2C总线工作特点
启动条件 终止条件 应答信号
串行E 一 串行E2PROM 24C**
24C**典型芯片管脚
串行E 一 串行E2PROM 24C**
POT非易失性数字电位器 五 E2POT非易失性数字电位器 X9313 管脚
POT非易失性数字电位器 五 E2POT非易失性数字电位器
内部结构
X9313
POT非易失性数字电位器 五 E2POT非易失性数字电位器 X9313
管脚描述
POT非易失性数字电位器 五 E2POT非易失性数字电位器 X9313 典型应用:程控放大器
典型应用图
POT非易失性数字电位器 五 E2POT非易失性数字电位器 X9313 概述
E2POT X9313非易失性数控电位器,端电压±5V,32 个抽头,X9313是固态非易失性电位器,把它用作数 字控制的微调电阻器是理想的。 X9313是一个包含有31个电阻单元的电阻阵列。在 每个单元之间和二个端点都有可以被滑动单元访问的 抽头点。滑动单元的位置由CS 、U/D和INC 三个输入 端控制。滑动端的位置可以被贮存在一个非易失性存 贮器中,因而在下一次上电工作时可以被重新调用。 X9313的分辨率等于最大的电阻值被31除。例如 X9313W(10kΩ)的每个抽头间的阻值为323Ω。 所有的Xicor非易失性存贮器都设计成并经过测试 能够用于持久地保存数据的应用场合。
AD2543
.摘要:介绍一种多通道高精度串行A/D转换器TLC2543的主要特点、工作原理,给出了TLC2543与51系列单片机的接口电路及驱动程序。
关键词:串行外设接口;单片机;接口TLC2543是11个输入端的12位模数转换器,具有转换快、稳定性好、与微处理器接口简单、价格低等优点,应用前景好。
由于它带有串行外设接口(SPI,Seri-al Peripheral Interface),而51系列单片机没有SPI,因此研究它与51单片机的接口就非常有意义。
1 TLC2543的引脚及功能TLC2543是12位开关电容逐次逼近模数转换器,有多种封装形式,其中DB、DW或N封装的管脚图见图1。
引脚的功能简要分类说明如下。
I/OCLOCK:控制输入输出的时钟,由外部输入。
DATAINPUT:控制字输入端,用于选择转换及输出数据格式。
DATAOUT:A/D转换结果的输出端。
2 TLC2543的使用方法2.1 控制字的格式控制字为从DATAINPUT端串行输入的8位数据,它规定了TLC2543要转换的模拟量通道、转换后的输出数据长度、输出数据的格式。
其中高4位(D7~D4)决定通道号,对于0通道至10通道,该4位分别为0000~1010H,当为1011~1101时,用于对TLC2543的自检,分别测试(V REF++V REF-)/2、V REF-、V REF+的值,当为1110时,TLC2543进入休眠状态。
低4位决定输出数据长度及格式,其中D3、D2决定输出数据长度,01表示输出数据长度为8位,11表示输出数据长度为16位,其他为12位。
D1决定输出数据是高位先送出,还是低位先送出,为0表示高位先送出。
D0决定输出数据是单极性(二进制)还是双极性(2的补码),若为单极性,该位为0,反之为1。
2.2 转换过程上电后,片选CS必须从高到低,才能开始一次工作周期,此时EOC为高,输入数据寄存器被置为0,输出数据寄存器的内容是随机的。
AD(模数转换器)选型
AD(模数转换器)选型:TI/BB公司ADC产品:【ADS7812】1通道,12位,串行接口,低功耗,SOIC封装;【AMC7820】8通道,12位,串行接口,100kHz 采样速率,TQFP封装;【TLC2558】8通道,12位,串行接口,400KSPS,5V供电,0-Ref输入,SOIC封装;【TLV2543】11通道,12位,串行接口,低功耗,DIP封装;【TLC2543】11通道,12位,串行接口,DIP封装;【ADS7869】12通道,12位,串行/并行接口,TQFP封装;【TLC3548】8通道,14位,串行接口,200KSPS,5V供电,0-Ref输入,SOIC封装;【ADS8320】1通道,16位,串行接口,高速,2.7V-5.5V,MSOP封装;【ADS8321】1通道,16位,串行接口,高速,MSOP封装;【ADS8505】1通道,16位,并行接口,250-KSPS,SSOP封装;【ADS8509】1通道,16位,串行接口,250Ksps,SSOP封装;【ADS7809】1通道,16位,串行接口,100Ksps,5V供电,SOIC封装;【ADS8342】4通道,16位,并行接口,250Ksps,输入范围-2.5-2.5,TQF P封装;【ADS8345】8通道,16位,串行接口,串行,SSOP封装;【ADS1241】4通道,24位,串行接口,SSOP封装;【ADS7835】1通道,24位,串行接口,高速,低功耗AD转换器,MSOP封装;详细内容,请访问:查看AD公司ADC产品:【AD7864】4通道,12位,并行接口,高速同时采样,单电源,TQFP封装;【AD7865】4通道,14位,并行接口,高速同时采样,单电源,TQFP封装;【AD677 】1通道,16位,串行接口,100KSPS,DIP封装;【AD7612】1通道,16位,并行/串行,750KSPS,单级/双级输入,DIP封装;【AD7715】1通道,16位,串行接口,3V供电,DIP封装;【AD974 】4通道,16位,串行接口,单电源,200KSPS,DIP封装;【AD976 】4通道,16位,串行接口,单电源,200KSPS,±10V输入,DIP 封装;【AD7710】2通道,24位,串行接口,输入可编程增益,SOIC封装;详细内容,请访问:查看。
使用GPIO控制SPI接口的AD芯片
使用GPIO控制SPI接口的AD芯片在实际应用中,英创的嵌入式工控主板经常需要与客户外部扩展的AD芯片相连。
一般来讲AD单元的扩展有两种方法,一种是通过英创工控主板的精简ISA总线扩展,另一种则是通过同步串口的方法,如SPI、I2C接口,与AD连接。
前一种方法所涉及的AD芯片一般具有并行接口,如MAX197等;而后一种方法的AD芯片则带有SPI或I2C接口。
采用SPI 或I2C接口的AD芯片,可使芯片的管脚数大幅减少,进一步使芯片本身的尺寸也大幅减小,从而大大扩展了这些AD芯片的应用范围。
为了方便广大客户在英创的嵌入式工控主板上快速应用这类AD芯片,本文将介绍如何通过EM9160工控主板的GPIO信号来控制TI公司的带有SPI接口的TLC2543 AD芯片。
TI公司的TLC2543是一款支持11路模拟输入,量化分辨率12-bit的低成本AD芯片。
EM9160是英创公司的一款预装Windows CE实时操作系统的高性价比ARM9工控主板产品。
EM9160最多可支持16位方向可独立设置的GPIO,这些GPIO均可被用来作为同步串口接口SPI的信号。
在本文以下部分,SPI信号方向都是以工控主板EM9160为参考的。
4线制的SPI接口其接口信号包括:1. SPI_CS:SPI片选信号,低电平有效;从EM9160输出,接到TLC2543。
2. SPI_CK:SPI接口的同步时钟信号;从EM9160输出,接到TLC2543。
3. SPI_DO:SPI接口数据输出,从EM9160输出的转换命令,输入到TLC2543。
4. SPI_DI:SPI接口数据输入,从AD芯片输出的转换数据,输入到EM9160。
用EM9160的GPIO仿真SPI接口的第一步是根据具体的设计情况,选择合适的GPIO 信号来作为SPI的各个信号,用C代码可表述如下:#include 'em9160_dio_ex.h'#include 'em9160_isa_dio.h'#define GPIO0_PIN 0x0001#define GPIO1_PIN 0x0002#define GPIO2_PIN 0x0004#define GPIO3_PIN 0x0008#define GPIO4_PIN 0x0010#define GPIO5_PIN 0x0020#define GPIO6_PIN 0x0040#define GPIO7_PIN 0x0080#define GPIO8_PIN 0x0100#define GPIO9_PIN 0x0200#define GPIO10_PIN 0x0400#define GPIO11_PIN 0x0800#define GPIO12_PIN 0x1000#define GPIO13_PIN 0x2000#define GPIO14_PIN 0x4000#define GPIO15_PIN 0x8000//// 输入输出方向是以主板为参考来定义的。
tlc2543详细使用说明
重金买的一篇好资料1 引言实验和工程实际中我们要进行大量的数据处理。
运用单片机采集系统能很好的解决这些问题。
基本的采集系统一般由MCU,A/D,PC 构成,MCU是整个系统的核心,A/D是数据的源头,PC是数据的归宿地。
A/D转换器的选择直接关系到采集精度是否理想。
现在TLC2543这款A/D转换器运用很广泛。
TLC2543是TI公司的12位串行模数转换器,使用开关电容逐次逼近技术完成A/D转换过程。
由于是串行输入结构, 能够节省51 系列单片机I/O 资源;且价格适中, 分辨率较高。
2 TLC2543的引脚排列及说明(1) TLC2543 的封装形式TLC2543的封装形式:DB、DW或N封装以及FN封装,这两种封装的引脚的排列及说明见图 1 。
⑵TLC2543的简要工作过程TLC2543的工作过程分为两个周期:1/0周期和转换周期。
a ) I/O 周期I/O 周期由外部提供的I/O CLOCK 定义,延续8 12或16个时钟周期,决 定于选定的输出数据长度。
器件进入I/O 周期后同时进行两种操作。
I 在I/O CLOCK 的前8个脉冲的上升沿,以MSB 前导方式从 DATA INPUT 端输入8位数据流到输入寄存器。
其中前 4位为模拟通道地址,控制14 通道模拟多路器从11个模拟输入和三个内部测电压中选通一路送到采样 保持电路,该电路从第4个I/O CLOCK 脉冲的下降沿开始对所选信号进行 采样,直到最后一个I/O CLOCK 脉冲的下降沿。
I/O 周期的时钟脉冲个数 与输出数据长度(位数)同时由输入数据的D3 D2位选择为& 12或16。
当工作于12或16位时,在前8个时钟脉冲之后,DATA INPUT 无效。
l 在DATA OU 端串行输出8、12或16位数据。
当CS 保持为低时,第一 个数据出现在EOC 勺上升沿。
若转换由CS 控制,则第一个输出数据发生 在CS 的下降沿。
2548中文资料
串行A/D转换器TLV2544/2548中文资料串行A/D转换器TLV2544/2548中文资料1 TLV2544/2548概述TLV2544/2548是TI公司生产的一组高性能12位低功耗/高速(3.6μs)CMOS模数转换器,它精度高,体积小、通道多,使用灵活,并具有采样-保持功能,电源电压为2.7V~5.5V。
另外TLV2544/2548还个有3个输入端和一个三态输出端,可为最流行的微处理器串行端口(SPI)提供4线接口。
当与DSP连接时,可用一个帧同步信号(FS)来表明一个串行数据帧的开始。
该器件除了具有高速模数转换器和多种控制功能外,还具有片内模拟多路器,可选择多部的模拟电压或三个内部自测试电压中的任一个外部的模拟电压或三个内部自测试电压中的任一个作为输入。
TLV2544/2548工作时的功耗非常低,而软件/硬件/自动关机模式以及可编程的转换速度又进一步增强了其低功耗的特点。
同时它还具有内置转换时钟(OSC)和电压基准,可以采用外部SCLK作为转换时钟源以获取更高的转换速度(在20MHz的SCLK时可高达3.6μs)。
并有两种不同的内部基准电压可供选择。
图1和图2分别是TLV2544/2548的功能方框图和引脚排列,表1是其引脚说明。
表1 引脚说明表2 TLV2544/TLV2548配置寄存器(CFR)的位定义*这些位仅在10和11转换模式中有效TLV2544/2548两芯片的内部功能结构相同,不同之处就是前者的模拟输入通道为4路,而后者为8路。
下面以TLV2544为例为介绍。
2 TLV2544/2548工作原理TLV2544有4路模拟输入和3个内部测试输入端,它们可由模拟多路转换器根据输入的命令来选择。
输入多路转换器采用先开后合型,因为这可减少由通道切换引起的输入噪声。
TLV2544 的工作周期的开始模式有两种:一种是当不使用FS时(在CS的下降沿FS=1),CS的下降沿即为周期的开始。
TLC2543 中文资料
TLC2543 中文资料TLC2543是TI公司的12位串行模数转换器,使用开关电容逐次逼近技术完成A/D转换过程。
由于是串行输入结构,能够节省51系列单片机I/O资源;且价格适中,分辨率较高,因此在仪器仪表中有较为广泛的应用。
2 TLC254 ...TLC2543是TI公司的12位串行模数转换器,使用开关电容逐次逼近技术完成A/D 转换过程。
由于是串行输入结构,能够节省51系列单片机I/O资源;且价格适中,分辨率较高,因此在仪器仪表中有较为广泛的应用。
2 TLC2543的特点(1)12位分辩率A/D转换器;(2)在工作温度范围内10μs转换时间;(3)11个模拟输入通道;(4)3路内置自测试方式;(5)采样率为66kbps;(6)线性误差±1LSBmax;(7)有转换结束输出EOC;(8)具有单、双极性输出;(9)可编程的MSB或LSB前导;(10)可编程输出数据长度。
3TLC2543的引脚图(管脚图)及说明TLC2543有两种封装形式:DB、DW或N封装以及FN封装,这两种封装的引脚排列如图1,引脚说明见表1。
表1 TLC2543引脚说明引脚号名称I/O 说明1~9,11,12 AIN0~AIN10 I 模拟量输入端。
11路输入信号由内部多路器选通。
对于4.1MHz的I/OCLOCK,驱动源阻抗必须小于或等于50Ω,而且用60pF电容来限制模拟输入电压的斜率15 I 片选端。
在端由高变低时,内部计数器复位。
由低变高时,在设定时间内禁止DATAINPUT和I/O CLOCK17 DATAINPUT I 串行数据输入端。
由4位的串行地址输入来选择模拟量输入通道16 DATA OUT O A/D转换结果的三态串行输出端。
为高时处于高阻抗状态,为低时处于激活状态19 EOC O 转换结束端。
在最后的I/OCLOCK下降沿之后,EOC从高电平变为低电平并保持到转换完成和数据准备传输为止10 GND 地。
电子设计创新训练(基础)第四章 常用AD、DA转换器应用介绍
此程序仅为一个采样示例, 主函数实际没有使用意义。
(二)8路8位分辨率ADC0809及与MCU的直接I/O接口
1、简介
ADC0809芯片有28条引脚,采用双列直 插式封装,如图3-13所示。下面说明各引脚功 能。IN0~IN7:8路模拟量输入端。2-1~2-8: 8位数字量输出端。ADDA、ADDB、ADDC:3 位地址输入线,用于选通8路模拟输入中的一路。 ALE:地址锁存允许信号,输入,高电平有效。 START: A/D转换启动信号,输入,高电平 有效。 EOC: A/D转换结束信号,输出, 当A/D转换结束时,此端输出一个高电平(转 换期间一直为低电平)。 OE:数据输出允许 信号,输入,高电平有效。当A/D转换结束时, 此端输入一个高电平,才能打开输出三态门, 输出数字量。CLK:时钟脉冲输入端。要求时 钟频率不高于640KHZ(典型500KHZ,转换时 间小于100μs)。 REF(+)、REF(-):基 准电压。 Vcc:电源,单一+5V。GND:地。 图4-13 ADC0809引脚图
图4-8 AD57A的管脚图
A0 :字节地址/短周期,高为8位变换/输出低4位,低为12位变换/输出高8位; STS :变换状态,高为正在变换,低为变换结束.STS总共有三种接法:(1)空着:只 能在启动变换,25 μ s以后读A/D结果;(2)接静态端口线:可用查询方法,待STS为 低后再读A/D变换结果;(3)接外部中断线:可引起中断后,读A/D变换结果; REFIN :基准输入. REFOUT :内部10V基准输出; BIP OFF :双极性方式时,偏置电压输入端(10V基准);
ADC0809的工作过程是:首先输入3位地址,并使ALE=1,将地址存 入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上 升沿将逐次逼近寄存器复位。下降沿启动 A/D转换,之后EOC输出信号变 低,指示转换正在进行。直到A/D转换完成,EOC变为高电平,指示A/ D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输 入高电平 时,输出三态门打开,转换结果的数字量输出到数据总线上。
关于TLC2543的总结
关于TLC2543的一些问题TLC2543是我调的第四个模块,严格意义上说第三个,因为A/D与D/A是相互配合使用的,在原理上有很多相同的地方。
比如逐次逼近式的A/D转换芯片,内部就存在一个D/A转换器。
总之二者在原理上有相通的地方,下面是我在调试芯片过程中遇到的一些问题:1、下面是它的管脚图以及结构框图:图1、TLC2543NC管脚图图2、2543的结构框图2、它有0~10共11个输入端口,也就是有11个通道,这11个通道是由DA TA IN的高四位决定的,而DA TA IN的低四位决定了是采用8位、12位还是16位数据输出格式,以及输出是单极性输出还是双极性输出,详见表1.需要注意的是这里的DATA IN并不是用于转换的输入数据,而是对输入通道,及一些相关格式的选择数据,相当于命令数据。
DATA OUT是一个串行的输出端,将输入的模拟量转换为数字量后,一位一位输出出来。
转换结束的信号是由EOC决定的,当它为低时表示转换结束,为高时表示正在转换,这里需要注意的是,现在转换的信号,并须在下一次有效输出信号来临时,才被输出;而当前输出的数据世上一次操作转换的结果,所以要输出当前的转换结果,至少要执行两次有效输出,才能得到正确结果。
表1、2543的输入数据功能表3、下面是2543在使用时的两种不同模式,一种是使用~CS端进行控制,一种是不使用。
很显然,第二种,2543时刻都被选通,时刻都在准备进行数据的转换,这样必然会有一定的功耗,所以如果能合理地设计~CS的选通状态,就可以减少电路的功耗。
同样的,还有以8位数据及16位数据格式输出,原理及时序图都与12位的相同,只有输出结果的位数不同,当然,相应的精度也就不同。
可根据具体需要,进行设置。
图3、采用12位输出数据并使用~CS时的序图图4、采用12位输出数据并不使用~CS时的序图。
TL2543
图3.5TLC2543芯片引脚图图3.6内部结构图3.6 TLC2543芯片引脚及内部结构TLC2543是德州仪器公司生产的12位开关电容型逐次逼近模数转换器,最大转换时间10us,11个模拟输入通道,3路内置自测试方式,采样率为66KSPS,线性误差±1LSBmax,有转换结束输出EOC,具有单极、双极性输出,可编程的MSB或LSB前导,可编程输出数据长度。
它具有三个控制输入端,采用简单三线SPI串行接口可方便的与微机进行连接,图3.5和图3.6分别是TLC2543的引脚排列图和内部结构图。
表3.2是TLC2543的引脚功能说明。
3.7 TLC2543的工作方式和输入通道的选择TLC2543是一个多通道和多工作方式的模数转换器件。
图3.5为其芯片引脚图,图3.6是它的内部结构图。
其工作方式和输入通道的选择是通过向TLC2543的控制寄存器写入一个八位的控制字来实现的。
这个八位控制字由四个部分组成:D7D6D5D4选择输入通道,D3D2选择输出数据长度,D1选择输出数据顺序,D0选择转换结果的极性。
八位控制字的各位的含义如表3.3所示。
主机以MSB为前导方式将控制字写入TLC2543的控制寄存器,每个数据位都是在CLOCK序列的上升沿被写入控制器。
表3.2引脚功能说明3.7.1 TLC2543的读写时序当片选信号/CS为高电平时,CLOCK和DATA-IN被禁止、DATA-OUT为高阻状态,以便SPI总线上的其它器件让出总线。
在片选信号/CS的下降沿,A/D转换结果的第一位数据出现在DATA-OUT引脚上,A/D转换结果的其他数据位在时钟信号CLOCK的下降沿被串行输出到DATA-OUT。
在片选信号/CS下降以后,时钟信号CLOCK的前八个上升沿将八位控制字从DATA_IN引脚串行输入到TLC2543的控制寄存器。
在片选信号/CS下降以后,经历8个(12个或16个)时钟信号完成对A/D转换器的一次读写。
tl2543
上电时,第一周期读取的Dout数据无效,应舍去。
TLC2543除了具有高速的转换速度外,片内还集成了14路多路开关。其中n路为外部模拟量输入,3路为片内自测电压输入。在转换结束后,EOC引脚变为高电平,转换过程中由片内时钟系统提供时钟,无需外部时钟。在AD转换器空闲期间,可以通过编程方式进入断电模式,此时器件耗电只有25pA。
Hale Waihona Puke 二、控制字: TLC2543的工作过程如下:首先在8、12或16时钟周期里向片内控制寄存器写入8位的控制字,控制字中的2位决定时钟长度,在最后一个时钟周期的下降沿启动AD转换过程,经过一段转换时间,在随后的8、12或16个时钟周期里,从DATA OUT脚读出数据。
控制字的定义见下表:
控制字的前四位(D7-D4)代表11个模拟通道的地址;当其为1100-1110时,选择片内检测电压;当其为1111时,为软件选择的断电模式,此时,AD转换器的工作电流只有25uA.
一、引脚:
TLC2543为20脚DIP封装,引脚图如下图所示。
TLC2543具有4线制串行接口,分别为片选端(CS),串行时钟输入端(I/O CLOCK),串行数据输入端(DATA IN)和串行数据输出端(DATA OUT)。它可以直接与SPI器件进行连接,不需要其他外部逻辑。同时,它还在高达4MHz的串行速率下与主机进行通信。
8.经过时间tconv<=10us,转换完毕,EOC上升。
9.使CS下降,转换结果的MSB位B11输出到Dout供读数。
10.将新周期的输入控制字的MSB位D7送到Din,在CS下降之处,tSU时间处由CLK上升将Din数据移入输入寄存器。
11.CLK下降,将AD结果的B10位输出到Dout。
TLC2543中文资料
串行A D转换器T L C2543中文资料TLC2543是TI公司的12位串行模数转换器,使用开关电容逐次逼近技术完成A/D转换过程。
由于是串行输入结构,能够节省51系列单片机I/O资源;且价格适中,分辨率较高,因此在仪器仪表中有较为广泛的应用。
2TLC2543的特点(1)12位分辩率A/D转换器;(2)在工作温度范围内10μs转换时间;(3)11个模拟输入通道;(4)3路内置自测试方式;(5)采样率为66kbps;(6)线性误差±1LSBmax;(7)有转换结束输出EOC;(8)具有单、双极性输出;(9)可编程的MSB或LSB前导;(10)可编程输出数据长度。
3TLC2543的引脚排列及说明TLC2543有两种封装形式:DB、DW或N封装以及FN封装,这两种封装的引脚排列如图1,引脚说明见表1。
图1T L C2543的封装4接口时序可以用四种传输方法使T L C2543得到全12位分辩率,每次转换和数据传递可以使用12或16个时钟周期。
一个片选()脉冲要插到每次转换的开始处,或是在转换时序的开始处变化一次后保持为低,直到时序结束。
图2显示每次转换和数据传递使用16个时钟周期和在每次传递周期之间插入的时序,图3显示每次转换和数据传递使用16个时钟周期,仅在每次转换序列开始处插入一次时序。
引脚号名称I/O说明1~9,11,12AIN0~AIN10I模拟量输入端。
11路输入信号由内部多路器选通。
对于的I/OCLOCK,驱动源阻抗必须小于或等于50Ω,而且用60pF电容来限制模拟输入电压的斜率15I片选端。
在端由高变低时,内部计数器复位。
由低变高时,在设定时间内禁止DATAINPUT和I/OCLOCK17DATAINPUT I串行数据输入端。
由4位的串行地址输入来选择模拟量输入通道16DATAOUT O A/D转换结果的三态串行输出端。
为高时处于高阻抗状态,为低时处于激活状态19EOC O转换结束端。
几种常用的总线标准
什么是CAN总线?
CAN意为Controller Area Network的缩写,意为控制区域网络。是国际上流行的现场总线中的一种。是一种特别适合于组建互连的设备网络系统或子系统。
2. CAN总线特点?
l CAN是到目前为止为数不多的有国际标准的现场总线
l CAN通讯距离最大是10公里(设速率为5Kbps),或最大通信速率为1Mbps(设通信距离为40米)。
A、较低的成本与极高的总线利用率;
B、 数据传输距离可长达10Km,传输速率可高达1Mbit/s;
C、可靠的错误处理和检错机制,发送的信息遭到破坏后可自动重发;
D、节点在错误严重的情况下具有自动退出总线的功能;
E、报文不包含源地址或目标地址仅用标志符来指示功能信息和优先级信息;
由于人为、自然、其它外界环境的影响和人们对公交系统的安全可靠性、真实、实时性的追求,使得我们对通信方式,通信设备有了更高的要求,基于CAN总线的网络则成为我们最佳的选择
CAN采用报文识别符识别网络上的节点,从而把节点分成不同的优先级,高优先级的节点享有传送报文的优先权。
报文是短帧结构,短的传送时间使其受干扰概率低,CAN有很好的效验机制,这些都保证了CAN通信的可靠性。
3. CAN总线应用领域
CAN总线最初是德国BOSCH为汽车行业的监测,控制而设计的。现已应用到铁路、交通、国防、工程、工业机械、纺织、农用机械、数控、医疗器械机器人、楼宇、安防等方面。
UART使用发送数据线TXD和接收数据线RXD来传送数据,接收和发送可以单独进行也可以同时进行。它传送数据的格式有严格的规定,每个数据以相同的位串形式传送,每个串行数据由起始位,数据位,奇偶校验位和停止位组成。从起始位到停止位结束的时间称为一帧(frame),即一个字符的完整通信格式。
TLC2543资料c语言
2.2TLC2543的内部寄存器
从编程角度看,TLC2543内部寄存器有输入数据寄存器与输出数据寄存器。输入数据寄存器存放从DATA INPUT端移入的控制字。输出数据寄存器存放转换好的数据,以供从DATA OUT端移出。
(4)控制字输入引脚
DATA TNPUT,17脚:控制字输入端,选择通道及输出数据格式的控制字由此输入。
(5)转换数据输出引脚
DATA OUT,16脚:A/D转换结果输出的3态串行输出端。
2TLC2543的编程要点
2.1控制字的格式
控制字为从DATA INPUT端串行输入TLC2543芯片内部的8位数据,它告诉TLC2543要转换的模拟量通道、转换后的输出数据长度、输出数据的格式。其中高4位(D7~D4)决定通道号,对于0通道至10通道,该4位分别为0000、0001、…、1010,该4位为其它数字时的功能,用于检测校正,本文不作具体介绍。低4位决定输出数据长度及格式,其中D3、D2决定输出数据长度,TLC2543的输出数据长度有8位、12位、16位,但由于TLC2543为12位A/D转换芯片,经过分析可以看出,8位、16位输出对TLC2543的应用意义不大,宜定在12位输出,D3、D2两位为00即可。D1决定输出数据是高位先送出,还是低位先送出,若为高位先送出,该位为0,反之为1。D0决定输出数据是单极性(二进制)还是双极性(2的补码),若为单极性,该位为0,反之为1。
关键词:A/D转换;TLC2543芯片;51系列单片机;接口技术
中图法分类号:TP334.7文献识别码:B
TLC2543中文资料
串行A D转换器T L C2543中文资料T L C2543是T I公司的12位串行模数转换器,使用开关电容逐次逼近技术完成A/D转换过程。
由于是串行输入结构,能够节省51系列单片机I/O资源;且价格适中,分辨率较高,因此在仪器仪表中有较为广泛的应用。
2T L C2543的特点(1)12位分辩率A/D转换器;(2)在工作温度范围内10μs转换时间;(3)11个模拟输入通道;(4)3路内置自测试方式;(5)采样率为66k b p s;(6)线性误差±1L S B m a x;(7)有转换结束输出E O C;(8)具有单、双极性输出;(9)可编程的M S B或L S B前导;(10)可编程输出数据长度。
3T L C2543的引脚排列及说明T L C2543有两种封装形式:D B、D W或N封装以及F N封装,这两种封装的引脚排列如图1,引脚说明见表1。
图1T L C2543的封装4接口时序可以用四种传输方法使T L C2543得到全12位分辩率,每次转换和数据传递可以使用12或16个时钟周期。
一个片选()脉冲要插到每次转换的开始处,或是在转换时序的开始处变化一次后保持为低,直到时序结束。
图2显示每次转换和数据传递使用16个时钟周期和在每次传递周期之间插入的时序,图3显示每次转换和数据传递使用16个时钟周期,仅在每次转换序列开始处插入一次时序。
引脚号名称I/O说明1~9,11,12AIN0~AIN10I模拟量输入端。
11路输入信号由内部多路器选通。
对于4.1MHz的I/OCLOCK,驱动源阻抗必须小于或等于50Ω,而且用60pF电容来限制模拟输入电压的斜率15I片选端。
在端由高变低时,内部计数器复位。
由低变高时,在设定时间内禁止DATAINPUT和I/O CLOCK17DATAINPUT I串行数据输入端。
由4位的串行地址输入来选择模拟量输入通道16DATA OUT O A/D转换结果的三态串行输出端。
薄膜铂热电阻PT1000在热测试中的应用
薄膜铂热电阻PT1000在热测试中的应用陆心宇;郭庆【摘要】The thermal test of electronic equipment is complete thermal analysis and thermal design in electronic equipment and complete the prototype, the prototype of electronic equipment in the actual test, to verify the effect of the thermal design and thermal analysis. Eight-way real-time temperature measuring device PT1000 is adopted as a temperature sensor. To meet the needs of the hot test, the article gives the eight-way temperature measuring device design process.%电子设备的热测试是在电子设备完成热分析、热设计和完成样机之后,对电子设备样机的实际测试,以检测验证热设计与热分析的正确性。
八路温度实时测量装置采用了薄膜铂热电阻PT1000作为温度传感器,以满足热测试的需求,文章给出了八路实时温度测量装置设计和工作原理。
【期刊名称】《仪器仪表用户》【年(卷),期】2016(000)001【总页数】3页(P73-75)【关键词】热测试;薄膜铂热电阻;测量电桥;单片机【作者】陆心宇;郭庆【作者单位】桂林电子科技大学电子工程与自动化学院,广西桂林 541004;桂林电子科技大学电子工程与自动化学院,广西桂林 541004【正文语种】中文【中图分类】TH811电子设备的热技术包括了热分析、热设计、热测试3个环节。
基于ARM的AD和DA模块转换的设计
基于ARM的A/D和D/A转换模块的设计1黎大鹏, 程良伦(广东工业大学自动化学院,广州 510060)摘要:近年来,传感器网络技术的兴起,为模数和数模转换的应用注入新的血液。
在此大趋势下,本文介绍了在ARM系统下,通过对TI公司的TLC2543和DAC5573的控制,来实现 A/D和D/A转换模块的设计。
该系统具有良好可扩展性,强大的可操作性,广泛应用在传感器技术的各个方面。
关键词:A/D; D/A; TLC2543; DAC5573Design of A/D and D/A change system based on ARMLi DaPeng, Cheng Liang-lun(Faculty of Automation, Guangdong University of Technology, Guangzhou510050)Abstract:The application of A/D and D/A change have been entering into a new step based on development of the sensor network technology in recent years. The paper introduced the design of A/D and D/A change through controlling TLC2543 and DAC5573 that were made from TI Company based on the S3C4510 system. The system had a great expansion and a strong operation, and it apply in all aspects of the technology of the sensor.Key word: A/D; D/A; TLC2543; DAC55730、引言传感测试技术正朝着多功能化、微型化、智能化、网络化、无线化的方向发展[1]。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SPI串行接口AD转换器TLC2543的
应用
作者: 来源:mcuzb
//-----------------------函数声明,变量定义
--------------------------------------------------------
#include <reg51.h>
#include <intrins.h>
//-------------------------------------------------------------------------------------------------- // 2543控制引脚宏定义
//-------------------------------------------------------------------------------------------------- sbit SS1=P1^0; // 将p1.0口模拟片选
sbit SCK=P1^1; // 将p1.1口模拟时钟输出
sbit MOSI=P1^2; // 将p1.2口模拟主机输出
sbit MISO=P1^3; // 将p1.3口模拟主机输入
//-----------------------预定义控制字--------------------------------------------------------
#define CONTROL_WORD 0x00 //选择通道0,输出数据长度12bit,MSB,单极性二
进制数
//-------------------------------------------------------------------------------------------------- // 函数名称:delay
// 入口参数:N
// 函数功能:延时子程序,实现(16*N+24)us的延时
// 系统采用11.0592MHz的时钟时,延时满足要求,其它情况需要改动
//-------------------------------------------------------------------------------------------------- void delay(unsigned int N)
{
int i;
for(i=0;i<N;i++);
}
//-------------------------------------------------------------------------------------------------- // 名称:read2543
// 功能:TLC2543驱动模块
// 输入参数:CON_WORD控制字
// 输出参数:ad转换值
//-------------------------------------------------------------------------------------------------- unsigned int read2543(unsigned char CON_WORD)
{
unsigned int ad=0,i;
SCK=0;
SS1=0;
for(i=0;i<12;i++)
{
if(MISO) ad|=0x01;
MOSI=(bit)(CON_WORD&0x80);
SCK=1;
delay(3);
SCK=0;
delay(3);
CON_WORD<<=1;
ad<<=1;
}
SS1=1;
ad>>=1;
return(ad);
}
//-------------------------------------------------------------------------------------------------- // 名称:main
// 功能:主函数
// 输入参数:无
// 输出参数:无
//--------------------------------------------------------------------------------------------------
void main()
{unsigned int ad;
while(1)
{
ad=read2543(CONTROL_WORD); }
}。