共2条
1/1 1 跳转至页
tlc2543 大家看看tlc2543程序
问
sbit IOCLK2543=P1^4;
sbit DI2543=P1^5;//2543选通道等
sbit DO2543=P1^6;//2543AD转换结果输出
sbit CS2543=P1^7;//2543片选,低电平有效
sbit DB7=B^7;
nsigned char bdata addata=0;
unsigned char bdata addata2=0;
sbit addatalow=addata^0;
sbit addatalow2=addata2^0;
void ADC()
{ CS2543=1;
_nop_();
_nop_();
CS2543=0;
B=0x00; //选第0通道
for(k=0;k<8;k++)
{ IOCLK2543=0;
DI2543=DB7;
B=B<<1;
addatalow=DO2543;
IOCLK2543=1;
addata=addata<<1;
}
for(k=0;k<4;k++)
{ IOCLK2543=0;
addatalow2=DO2543;
IOCLK2543=1;
if(k<3)
addata2=addata2<<1;
}
CS2543=1;
}
addata1=0x0000;
addata1=addata2;
addata1=addata1<<8;
addata1=(addata1+addata);
addata1=addata1*5000/0x0fff;
为什么显示的时候只出现零 答 1: 这类转换器,你输入数据时,读出的上一次的转换结果程序没有注释说明,看起来很累。
而且转换在数据手册中写有好几种方式,里面有时序和数据输入输出的关系,把注释添上 看看我找到并验证过的的关于此类型的程序。 答 2: dai_weis 你的Blog最好重新排下版文字重叠了,看着难受。。。 答 3: 谢谢,已经修改了,
sbit DI2543=P1^5;//2543选通道等
sbit DO2543=P1^6;//2543AD转换结果输出
sbit CS2543=P1^7;//2543片选,低电平有效
sbit DB7=B^7;
nsigned char bdata addata=0;
unsigned char bdata addata2=0;
sbit addatalow=addata^0;
sbit addatalow2=addata2^0;
void ADC()
{ CS2543=1;
_nop_();
_nop_();
CS2543=0;
B=0x00; //选第0通道
for(k=0;k<8;k++)
{ IOCLK2543=0;
DI2543=DB7;
B=B<<1;
addatalow=DO2543;
IOCLK2543=1;
addata=addata<<1;
}
for(k=0;k<4;k++)
{ IOCLK2543=0;
addatalow2=DO2543;
IOCLK2543=1;
if(k<3)
addata2=addata2<<1;
}
CS2543=1;
}
addata1=0x0000;
addata1=addata2;
addata1=addata1<<8;
addata1=(addata1+addata);
addata1=addata1*5000/0x0fff;
为什么显示的时候只出现零 答 1: 这类转换器,你输入数据时,读出的上一次的转换结果程序没有注释说明,看起来很累。
而且转换在数据手册中写有好几种方式,里面有时序和数据输入输出的关系,把注释添上 看看我找到并验证过的的关于此类型的程序。 答 2: dai_weis 你的Blog最好重新排下版文字重叠了,看着难受。。。 答 3: 谢谢,已经修改了,
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |