国产芯片也能玩的好,高性价比ADS8688给你崭新试界

某公司在应对客户国产化要求时,尝试将ADI的ADS8688芯片替换为国产型号。经过调研与测试,发现北京核芯互联的CLAD16200K8芯片在功能上接近ADS8688,价格更优,但存在一些兼容性和性能差异,如采样速度、基准源误差、信号编码方式等。在软件移植过程中,需要注意不同芯片的控制指令和信号处理差异。
摘要由CSDN通过智能技术生成

项目中的国产AD芯片替换
我公司在2019年开始着手国产AD芯片元器件的替代工作,国产化已成为客户的强制要求,公司开始正式进行。全公司开始调研一些国产的元器件寻求国产替代。当时我们用的还是ADI公司的芯片ADS8688,这个芯片在工业控制领域使用非常广泛。自带8路通道,且可以同步采样,采样也达到了500K的速度,分辨率为16位,可以达到比较高的采样精度。
经过调研,发现市场上国产的AD芯片公司有芯海科技,晶华微,芯佰微,圣邦微,重庆中电24所,云芯微,上海贝岭等等。
因为我们公司用的是16通道同步采样的芯片,自带二阶有源低通滤波,如果单纯要PIN-TO-PIN替换,这样最省事,直接把精力放在软件移植上就可以。结果调研发现,在这个AD芯片上,没有任何可原位替代实现的可能性。因为AD芯片牵扯到数模混合电路,相对来说模拟电路比数字电路难度要高一个档次,这也是国外模拟电路工程师薪水非常高的原因。国内顶级的模拟电路设计比国外还是差好几个档次,特别是针对一些高速的模数转换芯片,国内还无法实现功能替换。不过随着时间的推移,国内的AD芯片设计水平和制造水平也越来越提升,相信不久的将来能赶上国外。国内的中低端AD芯片供应选择面还是比较大的,可以满足普通用户的需求。
我公司原来采用的ADS8688内部框图如下:

可以看到,8个通道的输入端为1M欧的高输入阻抗,这样模拟前端不用再通过电压跟随器之类的放大器进行阻抗变换,简化了电路设计。OVP是输入过电压保护电路,对芯片进行了一定程度的保护,如浪涌、ESD、EFT等。再往后是PGA电路,即可编程增益放大器,其优点是可动态的调节输入电压范围,使得信号源的电压幅值最大化的落入合适的电压输入范围等级,提高信号采集的精度。为了抑制电路中的噪声,芯片内部采用了二阶低通滤波电路。后端ADC驱动器本质上是一个放大缓冲器,可满足采样的高速性。Multiplexer即是一个多路开关MUX,具备自动扫描和手动扫描两种模式。MUX的输出由16位逐次逼近型AD转换器进行采样。芯片本身可用内部电压参考源或外部电压参考源两种模式。相对来说,如果要求精度高的话,最好配备低纹波噪声的外部电压基准源。芯片通过SPI总线与CPU进行通信,把采样到的数据送给CPU进行处理,支持菊花链拓扑的SPI标准接口协议。
ADS8688芯片优点一目了然,但既然PIN-TO-PIN替换无法实现,考虑进行功能级替换。最开始我司考虑的是重庆中电24所的一款芯片SAD7656EN。其内部功能框图为:

可以看到,这款芯片是6通道16位SAR AD转换器,但没有内置低通滤波器,支持数据串行输出。手册上写的是该芯片可原位替代国外芯片AD7656,但经过与24所技术人员沟通,发现首次与实际对应不上。此芯片手册上虽然写的支持两种电压输入范围,其实只支持一种电压范围。另外,关于串行总线输出的时序配置上,也与AD7656存在差异之处。最让用户感到头大的是一个芯片的价格为12000元,还是经过771所总师系统内沟通后的打折价,我司最终难以接受,开始寻找其他芯片供应厂商。
经过多方位寻找,最后锁定一个公司的芯片,北京核芯互联科技有限公司。型号是CALD16200K8,与技术人员沟通,发现兼容的是ADI公司AD7606芯片。其内部框图如下。

可以看到,其内部框图与ADS8688功能上非常接近。CLAD16200K8是8通道同步采样模数数据采集系统(DAS),内置二阶抗混叠滤波器、跟踪保持放大器、16位电荷再分配逐次逼近型模数转换器(ADC)、灵活的数字滤波器、2.5V基准电压源、基准电压缓冲以及高速串行和并行接口。
CLAD16200K8采用5V单电源供电,可以处理±10V和±5V真双极性输入信号,同时所有通道均能以高达200kSPS的吞吐速率采样。CLAD16200K8的模拟输入阻抗均为1MΩ。
最主要的这款芯片价格很亲民,一片70多元,比ADS8688还要便宜。下表是两款芯片的硬件资源对比表。可以看到,硬件功能性能指标非常接近,功能上可以实现完全替代。

  
资源对比
      
ADS8688
CLAD16200K8
  
采样速度
      
500 KHz
200 KHz
  
输入阻抗
      
1M欧
1M欧
  
通道数量
      
8个
8个
  
供电范围
      
4.75V-5.25V
4.75V-5.25V
  
功耗
      
最大16mA
最大20mA
  
温度
      
-40-85
-40-85
  
内置滤波
      
支持
支持
  
输入电压范围
      
±10.24 V, ±5.12 V, ±2.56 V, ±1.28 V,  ±0.64 V
  
– 10.24 V, 5.12 V, 2.56 V, 1.28 V
±10V,±5V
  
参考电压
      
4.096V
2.5V
  
内外基准
      
支持
支持
  
过采样技术
      
不支持
支持
  
串行协议
      
SPI™
  
SPI/QSPl™/MICROWIRE™/DSP

不过在实际使用中,还是发现了使用该芯片存在的一些问题。首先是该芯片在内部基准源和外部基准源分别工作时,实测的误差区别很大。特别是内部基准源下偏离的正常源信号值很大。经过与厂家沟通,厂家说提供的第一版芯片只支持外部基准源,这种情况下由于内外标定方法的原因导致误差比较大。后来厂家在第二版芯片中修正了此问题。第二,对于ADS8688而言,RST管脚是低电平有效,而CLAD16200K8的RESET却是高电平有效,这个在电路设计时要注意,我当时就犯了这个错误,导致CLAD16200K8芯片反复复位,无法正常工作。对于ADS8688而言,还有一个要注意的事项是,芯片推荐的原理图中,RST管脚通过47K电阻上拉到5V,实际使用时发现偶尔芯片工作不正常,通过示波器加到RST管脚,发现RST复位,分析由于47K电阻阻抗过大导致驱动电流不够,最终导致了电平越界门限值出现误动。把电阻更换为4.7K后,芯片工作正常。第三,对于负电压的信号,ADS8688的串行输出采用的是原码,而CLAD16200K8采用的是补码,故实际采集处理时需要把补码转换为原码使用。
关于ADS8688及CLAD16200K8的原理图可参考下图。
 


再说一下移植的事,整体上讲,没有什么大问题。由于两个芯片都遵循SPI标准协议,此处基本一样,主要是前端的寄存器配置上存在差异。
对于ADS8688而言,核心代码为:

复制
AI_CS0_LOW; //CS0 LOW

   ai_delay(5);   

    for(i = 0 ; i< 16 ; i++)

    {

      if((command >> (15-i)) & 0x0001)

        {

           AI_MOSI0_HIGH;//mosi high

        }

        else

        {

           AI_MOSI0_LOW;//mosi low

        }

       AI_CLK0_HIGH;//CLK high

       ai_delay(2);

       AI_CLK0_LOW;//CLK low

        ai_delay(2);      

    }

    ai_delay(5);

    for(i = 0 ; i< 16 ; i++)

    {

        sdo_value|= (AI_MISO0) << (15-i);        

       AI_CLK0_HIGH;//CLK high

       ai_delay(2);

       AI_CLK0_LOW;//CLK low

       ai_delay(2);

    }

    AI_CS0_HIGH;//CS0HIGH

    ai_delay(5);

    returnsdo_value;

对于CLAD16200K8而言,核心代码为:

if(BUSY_IS_LOW())

  {

    AD_CS_0();

   for(ch=0;ch<8;ch++)

    {

     for(index=0;index<16;index++)

      {

       Num<<=1;

        SCK_0();

         OSTimeDlyHMSM(0,0, 0, 10);

       if(MISO_IS_HIGH())

          Num++;

        SCK_1();

         OSTimeDlyHMSM(0,0, 0, 10);

      }  

    us_adc_now[ch]=(uint16_t)(Num+0x8000);//补码变为正码值

    }

    AD_CS_1();

  }


---------------------
作者:13426257085
链接:https://bbs.21ic.com/icview-3161130-1-1.html
来源:21ic.com
此文章已获得原创/原创奖标签,著作权归21ic所有,任何人未经允许禁止转载。

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值