#include"NEW_8051.H"
#include"globedef.h"
#include"intrins.h"
extern uchar TLC1549_value_h; //高2位
extern uchar TLC1549_value_l; //低8位
sbit TLC1549_CS=P1^3;
sbit TLC1549_DATA=P1^2;
sbit TLC1549_CLK=P1^1;
void TLC1549_conver(void)
{
uchar i;
TLC1549_value_h=0;
TLC1549_value_l=0;
TLC1549_CS=1; //初始状态
TLC1549_CLK=0;
_nop_();
TLC1549_CS=0;
_nop_();
_nop_();
_nop_();
_nop_();
if(TLC1549_DATA==1) //bit 9
{
TLC1549_value_h|=0x01;
}
else
{
TLC1549_value_h&=0xFE;
}
TLC1549_value_h=TLC1549_value_h<<1;
TLC1549_CLK=1;
TLC1549_CLK=0; //clk的下降沿DAYA端输出新的数据
if(TLC1549_DATA==1) //bit 8
{
TLC1549_value_h|=0x01;
}
else
{
TLC1549_value_h&=0xFE;
}
for(i=0;i<8;i++) //读低8位的数据
{
TLC1549_CLK=1;
TLC1549_CLK=0; //clk的下降沿DAYA端输出新的数据
TLC1549_value_l=TLC1549_value_l<<1;
if(TLC1549_DATA==1) //bit7~0
{
TLC1549_value_l|=0x01;
}
else
{
TLC1549_value_l&=0xFE;
}
}
TLC1549_CLK=1;
TLC1549_CLK=0;
// TLC1549_CS=1;
}
//使用的是STC单片机