⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tlv1544.txt

📁 TLV1544与TMS320VC5402通过串行口连接
💻 TXT
字号:

TLV1544与TMS320VC5402通过串行口连接,此时,A/D转换芯片作为从设备,DSP提供帧同步和输入/输出时钟信号。TLV1544与DSP之间数据交换的时序图如图3所示。



开始时, 为高电平(芯片处于非激活状态),DATA IN和I/OCLK无效,DATAOUT处于高阻状态。当串行接口使CS变低(激活),芯片开始工作,I/OCLK和DATAIN能使DATA OUT不再处于高阻状态。DSP通过I/OCLK引脚提供输入/输出时钟8序列,当由DSP提供的帧同步脉冲到来后,芯片从DATA IN接收4 b通道选择地址,同时从DATAOUT送出的前一次转换的结果,由DSP串行接收。I/OCLK接收DSP送出的输入序列长度为10~16个时钟周期。前4个有效时钟周期,将从DATAIN输入的4 b输入数据装载到输入数据寄存器,选择所需的模拟通道。接下来的6个时钟周期提供模拟输入采样的控制时间。模拟输入的采样在前10个I/O时钟序列后停止。第10个时钟沿(确切的I/O时钟边缘,即上升沿或下降沿,取决于操作的模式选择)将EOC变低,转换开始。




/*------------------TLV1544------------------------------------*/




void init_1544()  /*初始化1544口线*/
{
  CS_AD = 1;
  SO = 1;
  SI = 1;
  SCK = 1;
}

void write_1544(u8 a) 		//
{
   u8 g;
  u8 b=0x08;
  SCK=0;
  CS_AD=0;
  g=0;
  for (g=0;g<10;g++)
  {
    SCK=0;
    SI=(bit)(a&b);
    b>>=1;
    SCK=1;
  }
  SO=1;
  CS_AD=1;
}

u16 read_1544(u8 a)
{
  u8 g;
  u8 b=0x08;
  u16 r_data=0; /*返回转换结果*/
  SCK=0;
  CS_AD=0;
  g=0;
  for (g=0;g<10;g++)
  {
    r_data<<=1;
    SCK=0;		//时序
    SI=(bit)(a&b);
    b>>=1;
    SCK=1;		//时序
    if(SO == 1)
      r_data++;
  }
  SI=1;
  CS_AD=1;
  return r_data;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -