导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→tlv2544, tlv2548程序设计[soxyh]

 *第46621篇: tlv2544, tlv2548程序设计

  
楼 主:soxyh 2007年2月26日00:00
 tlv2544, tlv2548程序设计
最近领导交代了一个设计任务,采样用TLV2544,按照资料,采用内部基准,把CSTART,FS同VCC短接,但程序读不出数据,谁能帮我看一看??????急,在线等

主程序 :
#define  CS2        P2_0
#define  SDO2        P1_5
#define  SDI2        P1_4
#define  SCLK2       P1_0
......
init_2548();
pv=read_2548_cfr(0x90);
pv=ReadAD2(0);//读0通道
......
void init_2548(void)//初始
{
  EA=0;
  
 // SCLK2=0;
  SDI2=1;
  SDO2=1;
  CS2=1;
  SCLK2=0;
  //CSSTART2=1;

  
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  write_2548_cfr(0xa000);

  CS2=1;
  _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
  
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    write_2548_cfr(0xac00);
   
    CS2=1;
 _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
}
void write_2548_cfr(unsigned int com_code1)//写配置字
{
    unsigned char c_pp1;

 CS2=0;
 
 _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
  
 for(c_pp1=0;c_pp1  <16;c_pp1++)
 {
     
  if(com_code1&0x8000==0x8000) SDI2=1;
  else SDI2=0;

  SCLK2=0;
  _nop_();_nop_();_nop_();_nop_();
  _nop_();_nop_();_nop_();_nop_();
  SCLK2=1; 
  _nop_();_nop_();_nop_();_nop_();
  _nop_();_nop_();_nop_();_nop_();
  com_code1  <  <=1;

 }

 CS2=1;

unsigned int read_2548_cfr(unsigned char com_code)//读配置
{
    unsigned char c_pp1;
 unsigned int c_pp2;

 c_pp2=0;
 CS2=0;
 _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
    _nop_();
  
 for(c_pp1=0;c_pp1  <4;c_pp1++)
 {
     
  if(com_code&0x80==0x80) SDI2=1;
  else SDI2=0;

  SCLK2=1;
  _nop_();_nop_();_nop_();_nop_();
  _nop_();_nop_();_nop_();_nop_();
  
  SCLK2=0;
  _nop_();_nop_();_nop_();_nop_();
  _nop_();_nop_();_nop_();_nop_();
  com_code  <  <=1;

 }
 for(c_pp1=4;c_pp1  <16;c_pp1++)
 {
      
  SCLK2=1;
  _nop_();_nop_();_nop_();_nop_();
  _nop_();_nop_();_nop_();_nop_();  
  if(SDO2==1) c_pp2=c_pp2|0x01;
  c_pp2  <  <=0x01;  
  SCLK2=0;
  _nop_();_nop_();_nop_();_nop_();
  _nop_();_nop_();_nop_();_nop_();
  

 }
/*  for(c_pp1=4;c_pp1  <16;c_pp1++)
 {
     
  SCLK2=1;
  _nop_();_nop_();_nop_();_nop_();
  _nop_();_nop_();_nop_();_nop_();
  if(SDO2==1) c_pp2=c_pp2|0x01;
  c_pp2  <  <=0x01;
  SCLK2=0;
  _nop_();_nop_();_nop_();_nop_();
  _nop_();_nop_();_nop_();_nop_();

 } */
 CS2=1;
 return(c_pp2);

int ReadAD2(unsigned char chunnel)//chunnel:0---7对应1到8通道

    AData=0;


    CS=1;CS2=0;

    delay2(5);

    for(cLoop=0;cLoop  <13;cLoop++){ //11
    if(cLoop  <4){
       if((chunnel&0x80)==0){
             SDI2=0;
          }
          else
          {
             SDI2=1;
          }
       
       chunnel  <  <=1;
       }

       SCLK2=1;
    delay2(5);    
 
 
    bData=SDO2;
       AData  <  <=1;
       if(bData){
          AData|=0x01;
       }
    
    SCLK2=0;
    delay2(5);
    }
 AData>  >  =1;


    CS2=1;    
   // SCLK2=0;
 delay2(5);

    return AData;
}


>>>>>>对该主题发表你的看法

本主题贴数1,分页: [第1页]


[上一篇主题]:锐极嵌入式培训优惠购买开发板!

[下一篇主题]:广州联智基于EP9312/EP9315ARM9学习板