你读取那段有问题,试试我的
unsigned int ReadWord7705(uchar addr)
{
unsigned char b;
unsigned long y=0;
WriteByte7705(addr);//设置AD7705数据寄存器通道1
// P1M0=0X00;
// P1M1=0X00;
// P1M1=0X20;
AdClk = 1 ;
AdDout = 1 ;
delayNOP();
AdClk = 0 ;
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout);
y=(y<<1); //1
AdClk = 0 ; //
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout); //2
y=(y<<1);
AdClk = 0 ;
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout); //3
y=(y<<1);
AdClk = 0 ;
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout); //4
y=(y<<1);
AdClk = 0 ;
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout); //5
y=(y<<1);
AdClk = 0 ;
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout); //6
y=(y<<1);
AdClk = 0 ;
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout); //7
y=(y<<1);
AdClk = 0 ;
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout); //8
y=(y<<1);
AdClk = 0 ;
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout); //9
y=(y<<1);
AdClk = 0 ;
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout); //0
y=(y<<1);
AdClk = 0 ;
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout); //1
y=(y<<1);
AdClk = 0 ;
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout); //2
y=(y<<1);
AdClk = 0 ;
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout); //3
y=(y<<1);
AdClk = 0 ;
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout); //4
y=(y<<1);
AdClk = 0 ;
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout); //5
y=(y<<1);
AdClk = 0 ;
delayNOP();
AdClk = 1 ;
delayNOP();
y=(y|AdDout); //6
// y=(y<<1);
AdDin=1;
AdClk=1;
return y;
} |