|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
关于ADC芯片的选型,还是其他芯片的选型,那都不是随随便便就说了算得。
8 }, o4 M5 |9 a8 G& p关于选型,各大厂家也给出了系列芯片的选型手册,但是手册中那么多芯片型号和参数,哪些参数是要关注的,怎么快速地选择符合我们项目用到的芯片呢。! e, J2 L% A7 D6 l
ADC芯片成本参差不齐,选的好直接起飞,选的不好,直接破产。我拿ADC芯片举个例子,大家举一反三吧。
# X K- H6 e9 K. ^
4 p. ?# M1 M+ `! l, d! n; A" N1.模拟量输入范围
$ F( n+ n1 k+ t& Y1 g2 g按照我的经验啊,一般需求过来的时候,模拟量的采集,输入范围一定是刚需,不可忽略的。所以首先肯定先确认模拟量的输入范围,如果是0~3V的,ADC芯片都不用了,这样一下就省下了好几个mcu的成本。如果是0" y. v) o4 u2 a- i* G
~5V的模拟量,可以经过电阻网络分压到MCU,或者有的MCU的AD口直接可以接受0 ~5V的模拟量,或者用ADC芯片转化,这时候成本一下就上去了。能不用ADC芯片就不要用;如果输入电压是±5V之间,那没办法,选个合适的ADC芯片吧,±10V的情况也一样。 E5 r" }( z! I' b1 I
绝对是刚需,之所以把这个需求放在最前面就是说一旦选了片子,如果出错是不可挽回的。; t" J0 o( A5 T' D
9 {% d6 f; [0 C2 A以AD7606举例:
# l$ [% u) A( C+ g& J% x$ O
8 ~0 T% g7 s: z, P% ~# r
" L7 H3 t; T: S; c+ D2.采样率
: M- d8 d) N- b. ]. C% Z6 c% |首先要搞明白什么是采样率。; Z$ J+ V4 Y2 w( S3 D: `# Q
采样率指ADC每秒钟会进行多少次的模拟量转数字量的操作,如10K/s就是说ADC每秒钟,就采集了10K个模拟量,并将模拟量转换为数字量。当采样声时,一般的采样率是44Kbps/s,当采样温度时,几K/s的采样率就够了。, G& M( v8 t, b
学过通信原理的大家应该都知道采样定理。
: ^- ^' L/ z- Z# ~3 s在进行模拟/数字信号的转换过程中,当采样频率fs.max大于信号中最高频率fmax的2倍时(fs.max>2fmax),采样之后的数字信号完整地保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的2.56~4倍;采样定理又称奈奎斯特定理。
1 E" O' }9 M+ ~% {8 x, u J就是说你采集50K的信号,采样频率最起码大于2.56*50K。
) V# a8 x& t1 ? B9 B$ H; Z7 W9 k& d* T
以AD7606举例:
2 X5 i4 r& Q9 A* u; m) W9 ~
c* `: J3 @3 D2 X6 ^( o
: O8 \; h- A1 R5 r, J+ {, K所以说这个参数也是刚需,如果选不对,也是完全没法弥补,就相当于是一块金子焊在电路板上,既心疼还没啥用。
4 \+ r* q: \9 X1 V( Q* ~
R, ~/ e0 o0 y, V* G8 R) W4 D3.通道数
7 @" ^( d' G4 u$ W通道数同样值得关注,不会造成损失,但是肯定在功能上有欠缺了,同样应该被首先考虑进去的,不仅要考虑通道数,有实力一点还要考虑是独立通道还是差分通道,如果是多个通道,是同步采样吗,如果是差分通道,可以互换吗,另一通道可以接地吗,这些都是在选择通道时候需要考虑的问题,具体问题具体考虑,这里只为大家提供思路。* n5 [' M5 o; L! `
. \9 @( q3 _/ J- a, h
同样以AD7606举例。4 G4 w0 V5 _. Q5 y- ~
6 X5 H% d F( i3 ^& M
9 \) ?6 ~; N" W' A. Q- v. ~$ n1 s: e }- B+ O/ _& y
4.分辨率
% I, A" o% e: O8 l8 f( u: f5 q: d' B$ Z
ADC的分辨率指的是模数转换器所能表示的最大数是多少,即ADC的位数,如果ADC是10位ADC,那么分辨率是2的10次方,即1024的分辨率,如果模拟量是温度,测量范围是0~100度,那么可以把100度分成1024份,每一份你都能感知,当温度有100/1024度的变化时,能测量出来。
! B6 o5 L2 q4 t/ z+ G$ q% {4 y通俗一点就是精度,肯定是位数越高采样的精度越精确。但是并不是选型的时候精度越高越好,越高的精度代表着成本越高,根据项目实际需要,选择合适成本的精度。 v. r4 q2 S3 E- _6 O8 @" x( G
一般把8位以下的A/D转换器称为低分辨率ADC,9~12位称为中分辨率ADC,13位以上为高分辨率。A/D器件的位数越高,分辨率越高,量化误差越小,能达到的精度越高。
: F9 U7 D. O' b2 ?. U* X5 `3 l! J6 s! f0 z6 `
量化误差 (Quantizing Error) 由于AD的有限分辩率而引起的误差,即有限分辩率AD的阶梯状转移特性曲线与无限分辩率AD(理想AD)的转移特性曲线(直线)之间的最大偏差。通常是1 个或半个最小数字量的模拟变化量,表示为1LSB、1/2LSB。; C" @% E, S" g9 N y+ c1 j$ C
在转化过程中,由于存在量化误差和系统误差,精度会有所损失。其中量化误差对于精度的影响是可计算的,它主要决定于A/D转换器件的位数。
t9 L3 G0 j+ x; ~. \; F% B0 G
7 U' D5 D% \3 P9 I: ?+ K0 B* o, M
& `6 ?; @% d8 {, ]5 k( u! S$ g5.接口类型
( z3 _% p. U8 b% J! ^/ ?/ U( p* O4 B2 j6 l9 \- u' z/ y8 H3 E
接口类型同样是选型的时候需要关注的问题,接口类型有三种,串口,并口、高速并口。串口一般是SPI的。4 B; d, y. I+ K( a ]
/ _7 a5 X& A8 d! K/ Z& D" T" F那么如何选择呢,并口软件开发简单,软件开发成本小一些,但是占IO口多,占用大量MCU资源,所以在IO资源紧缺的情况下尽量避免选择并口的ADC芯片;6 n( h$ {7 t+ J/ _+ {
串口开发成本高一点,但是占用IO资源少,IO资源不足的情况下,可以考虑选择串口通讯的ADC芯片。
, U, u" ]2 i7 {现在市面上大多部分ADC芯片串口和并口的通讯方式都集成了,那可以根据项目实际的需求选择合适的通信方式。
" G$ Y& Q5 y: i2 h2 [
: {- N* [* @" f( j% |# h
5 ^. ~) U8 X: z/ l% i
7 d( z+ `5 e0 d/ M/ ~6.结构,信噪比,封装 q" j$ L3 T6 G4 e1 Q% |
剩下的就是一些不影响功能的性能参数了,讲究点,追求发挥ADC芯片极致的工程师们可以关注一下这些参数,可能用在不同的场所,关注的参数也会有所不同。毕竟花了那么多钱,干嘛不用。
! G: E' V! C( z4 n" N+ m" y- j, C+ n* i# W
大体上总结这么几点,按照我的经验划分出来的优先级顺序,如果不对,请大家指正,一起讨论进步学习。4 ]* d3 R) }$ v0 A! u, d1 w
" I+ J6 k( g; u& n s% G+ J# [
如果是要考虑芯片迭代甚至是国产和进口芯片的替代,那这可要下了功夫了,只要是围绕上面的6点,基本上就可以少看好多数据手册。
2 U4 Y% Z- ]0 k9 H" C. _/ ^0 E
: h7 n( C2 w9 p$ u6 s( h4 i4 Z |
|