我写了个TLC2543的程序,显示不稳定。
这是电池巡检仪里用的,我们抄的板子。
别人的程序比较稳定。
其中EOC腿没接。
uint ad2543(uchar chunnel_select)
{uint din,j;
uchar dout,i;
din=0;
dout=ad_chunnel_select[chunnel_select];
//while(AD_EOC==0);
for(j=0;j<100;j++);
AD_CLOCK=0;
AD_CS=1;
AD_CS=0;
for(i=0;i<12;i++)
{if(dout&0x80)AD_IN=1;
else AD_IN=0;
AD_CLOCK=1;
_nop_();_nop_();_nop_();_nop_();
dout<<=1; din<<=1;
if(AD_OUT==1) din+=0x0001;
AD_CLOCK=0;
_nop_();_nop_();_nop_();_nop_();
}
AD_CS=1;
for(j=0;j<100;j++);
return(din);
}
请高手指教,哪里有问题,谢谢! |