失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > c语言编程TLC2543AD采集 TLC2543单片机程序 带Proteus仿真 电路原理图 AD转换实验

c语言编程TLC2543AD采集 TLC2543单片机程序 带Proteus仿真 电路原理图 AD转换实验

时间:2018-11-27 14:36:05

相关推荐

c语言编程TLC2543AD采集 TLC2543单片机程序 带Proteus仿真 电路原理图 AD转换实验

#include

sbit SDO=P3^0; //定义端口

sbit SDI=P3^1;

sbit CS=P3^2;

sbit CLK=P3^3;

sbit EOC=P3^4;

sbit P2_0=P2^0;

sbit P2_1=P2^1;

sbit P2_2=P2^2;

sbit P2_3=P2^3;

unsigned char code xiao[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};

//共阳极数码管0-9的段码

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

//延时程序

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

void delay(unsigned char n)

{

unsigned char i,j;

for(i=0;i

for(j=0;j<125;j++);

}

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

//向TLC2543写命令及读转换后的数据

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

unsigned int read2543(unsigned char con_word)

{

unsigned int ad=0,i;

CLK=0; //时钟首先置低

CS=0; //片选为0,芯片工作

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

{

if(SDO) //首先读TLC2543的一位数据

ad=ad|0x01;

SDI=(bit)(con_word&0x80); //向TLC2543写一位数据

CLK=1; //时钟上升沿,TLC2543输出使能

delay(3);

CLK=0; //时钟下降沿,TLC2543输入使能

delay(3);

con_word<<=1;

ad<<=1;

}

CS=1;

ad>>=1;

return(ad);

}

void main()

{

unsigned int ad;

while(1)

{

ad=read2543(0x00);

P0=xiao[ad/1000];//千位数字的段码

P2_0=1; //显示千位

delay(3);

P2_0=0;

P0=xiao[(ad%1000)/100]; //百位数字的段码

P2_1=1; //显示百位

delay(3);

P2_1=0;

P0=xiao[(ad%100)/10]; //十位数字的段码

P2_2=1; //显示十位

…………限于本文篇幅 余下代码请从51黑下载附件…………

如果觉得《c语言编程TLC2543AD采集 TLC2543单片机程序 带Proteus仿真 电路原理图 AD转换实验》对你有帮助,请点赞、收藏,并留下你的观点哦!

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