失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > c语言编程TLC2543AD采集 AD转换器TLC2543编程

c语言编程TLC2543AD采集 AD转换器TLC2543编程

时间:2024-05-28 10:10:47

相关推荐

c语言编程TLC2543AD采集 AD转换器TLC2543编程

一、特性

(1)12位分辨率A/D转换器;

(2)在工作温度范围内10μs转换时间;

(3)11个模拟输入通道;

(4)3路内置自测试方式;

(5)采样率为66kbps;

(6)线性误差+1LSB(max)

(7)有转换结束(EOC)输出;

(8)具有单、双极性输出;

(9)可编程的MSB或LSB前导;

(10)可编程的输出数据长度。

二、引脚图

TLC2543的引脚排列如图所示。其中:

AIN0~AIN10:模拟输入端;

CS:片选端;

DIN :串行数据输入端;

DOUT:A/D转换结果的三态串行输出端;

EOC:转换结束端;

CLK:I/O时钟;

REF+:正基准电压端;

REF-:负基准电压端;

VCC:电源;

GND:地。

三、程序

本程序使用C51编程,每隔250ms采集一次数据,并通过串口发送出去,程序如下:

#i nclude

#i nclude

#i nclude

#define uchar unsigned char

#define uint unsigned int

sbit TCL2543_CLK =P3^2;

sbit TCL2543_ADIN =P3^3;

sbit TCL2543_DOUT=P3^4;

sbit TCL2543_CS=P3^5;

sbit EOC=P1^6;

// 其中 port 为通道:通道0:port = 0x01通道1:port = 0x02通道2:port = 0x04 ...

uint read2543(unsigned char port)

{

unsigned int i;

uint ad_value=0;

TCL2543_CLK=0;

TCL2543_CS=0;

EOC=1;

port<<=4;

for(i=0;i<12;i++)

{

if(TCL2543_DOUT)ad_value|=0x01;

TCL2543_ADIN=(bit)(port&0x80);

TCL2543_CLK=1;

_nop_();

_nop_();

_nop_();

TCL2543_CLK=0;

_nop_();

_nop_();

_nop_();

port=port<<1;

ad_value=ad_value<<1;

}

TCL2543_CS=1;

ad_value=ad_value>>1;

return ad_value;

}

void main(void)

{

unsigned int i = 0, a=0, result=0, j=0;

unsigned char tm_tm = 5;

float tmp;

tm_tm = 40;

SCON = 0x50; //串口方式1,允许接收

TMOD = 0x20; //定时器1 定时方式2

TCON = 0x40; //设定时器1 开始计数

TH1 = 0xFD; //11.0592MHz 9600 波特率

// TH1=0xF8;//30MHz, 9600Bps = 248 = 0xF8

TL1 = 0xE8;

TI = 1;

TR1 = 1; //启动定时器

// 使用定时器。30MHz晶振,0.4us周期,预置50000 = 20ms,计数50次=1秒

// 使用定时器0。11.0592MHz晶振,1.0us周期,预置50000 = 50ms,计数20次=1秒

TH0 = 60;// (65536-50000)/256;

TL0 = 176;// (65536-50000)%256;

TMOD = 0x20 + 0x01;// T1+T0, 工作方式1

TR0 = 1;// START T0

while(1)

{

if (TF0 == 1)

{

a++;

if(a==tm_tm)// 250ms

{

a = 0;

result = read2543(1);

tmp = (result*60.0/4096.0);

printf ("%d, %4.2f\n", result, tmp);

}

TF0=0;

TH0=60;

TL0=176;

}

}

}

如果觉得《c语言编程TLC2543AD采集 AD转换器TLC2543编程》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。