TLC2543时序图以及程序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
TLC2543引脚说明
引脚号名称I/
O
说明
1~9,11,1
2 AIN0~AIN1
I 模拟量输入端。
11路输入信号由内部多路器选
通。
对于4.1MHz的I/OCLOCK,驱动源阻抗
必须小于或等于50Ω,而且用60pF电容来限
制模拟输入电压的斜率
15 I 片选端。
在端由高变低时,内部计数器复位。
由低变高时,在设定时间内禁止DATAINPUT
和I/O CLOCK
17 DATAINPUT I 串行数据输入端。
由4位的串行地址输入来选
择模拟量输入通道
16 DATA OUT O A/D转换结果的三态串行输出端。
为高时处
于高阻抗状态,为低时处于激活状态
19 EOC O 转换结束端。
在最后的I/OCLOCK下降沿之后,
EOC从高电平变为低电平并保持到转换完成和
数据准备传输为止
10 GND 地。
GND是内部电路的地回路端。
除另有说明
外,所有电压测量都相对GND而言
18 I/O CLOCK I 输入/输出时钟端。
I/OCLOCK接收串行输入信
号并完成以下四个功能:(1)在I/O CLOCK
的前8个上升沿,8位输入数据存入输入数据
寄存器。
(2)在I/OCLOCK的第4个下降沿,
被选通的模拟输入电压开始向电容器充电,直
到I/OCLOCK的最后一个下降沿为止。
(3)
将前一次转换数据的其余11位输出到DATA
OUT端,在I/OCLOCK的下降沿时数据开始
变化。
(4)I/OCLOCK的最后一个下降沿,
将转换的控制信号传送到内部状态控制位
14 REF+ I 正基准电压端。
基准电压的正端(通常为Vcc)
被加到REF+,最大的输入电压范围由加于本
端与REF-端的电压差决定
13 REF- I 负基准电压端。
基准电压的低端(通常为地)
被加到REF-
20 Vcc 电源
TLC2543接口时序
可以用四种传输方法使TLC2543得到全12位分辩率,每次转换和数据传递可以使用12或16个时钟周期。
一个片选()脉冲要插到每次转换的开始处,或是在转换时序的开始处变化一次后保持
为低,直到时序结束。
图2显示每次转换和数据传递使用16个时钟周期和在每次传递周期之间插入
的时序,图3显示每次转换和数据传递使用16个时钟周期,仅在每次转换序列开始处插入一次时序。
时钟传送时序图(使用,MSB在前)
时钟传送时序图(不使用,MSB在前)
使用2543转换的子程序
sbit d_in=P1^2;//串行数据输入端
sbit d_out=P1^0;//串行输出端
sbit _cs=P1^1;//片选端
//AD采样函数,通过AD芯片TLC2543读取变送器送来的电压信号,转换成数字信号,送给单片机处理。
uint read_2543(uchar port)
{
uchar i,al=0,ah=0;
unsigned long ad;
clock=0;
_cs=0;
port<<=4;
for(i=0;i<4;i++)
{
d_in=port&0x80;
clock=1;
clock=0;
port<<=1;
}
d_in=0;
for(i=0;i<8;i++)
{
clock=1;
clock=0;
}
_cs=1;
delay_50us(5); _cs=0;
for(i=0;i<4;i++) {
clock=1;
ah<<=1;
if(d_out)
ah|=0x01;
clock=0;
}
for(i=0;i<8;i++) {
clock=1;
al<<=1;
if(d_out)
al|=0x01;
clock=0;
}
_cs=1;
ad=(uint)ah;
ad<<=8;
ad|=al;
return(ad);
}。