ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

AD7606完整设计指南:8通道同步采样ADC从硬件到驱动

AD7606完整设计指南:8通道同步采样ADC从硬件到驱动 做电力电子和工业采集这一行的人基本都绕不过一个名字——AD7606。我最早接触它是在一台电能质量分析仪的采集板上8路电压电流同时采样以前这种需求要“运放调理电路多片ADC负压电源”折腾一整套而AD7606一颗芯片就把模拟前端、采样保持、ADC转换、基准源全部打包了。也是从那时候起我对这颗芯片的定位有了一个非常直观的判断它就是工业多通道同步采集的“标准答案”之一。这篇文章不打算把数据手册逐页翻译一遍而是想从一个实际用过的角度把AD7606的硬件设计、软件驱动、时序控制、参数选型以及我在项目里踩过的坑完整梳理一遍。无论你是刚接触这颗芯片还是已经在用但被某个怪问题卡住这篇文章都值得从头到尾读一遍。1. 一颗芯片替代一整套调理链路AD7606的定位与核心卖点1.1 先搞清楚它到底“是什么”AD7606是ADI推出的一款16位、8通道、同步采样SAR型ADC。你把它拆开看会发现它不只是“一个ADC”而是把一套完整的数据采集前端集成到了一颗芯片里模拟输入通道自带钳位保护电路和二阶抗混叠滤波器支持真正的双极性模拟输入范围可选±5V或±10V内部集成2.5V基准源和基准缓冲器所有通道同时采样保持再由一颗16位SAR ADC逐通道完成转换数据输出支持并行、串行和菊花链三种模式单5V供电数字接口电平由VDRIVE引脚独立控制。这在2010年前后刚推出时几乎是把一个完整数据采集板的模拟前端体积缩小了一个数量级。放到今天来看虽然它的采样率最高200kSPS不算顶尖但它解决了一个工程上的核心痛点多通道采集的相位一致性问题。1.2 同步采样为什么这么重要很多新手会问我用一颗多路复用型ADC轮流采8个通道行不行行但前提是你不在乎相位差。拿三相电能质量分析来说你要同时看A、B、C三相电压波形计算三相不平衡度、有功功率、无功功率。如果A相先采、B相后采、C相最后采采完一轮花了几十个微秒那50Hz工频信号在这几十微秒里已经走过了一定角度。你以为自己在测同一个时刻的三相状态实际上测到的是一小段时间切片上的“伪同步”数据算出来的相角差全是错的。AD7606的每个模拟输入通道前面都有一个独立的采样保持放大器当CONVST引脚收到上升沿时8个通道会在同一个瞬间把所有电压“冻结”住然后逐个转换。这个过程叫“同步采样”。8个通道之间理论上不存在采样时刻偏差这才是多通道电参数测量的基础。1.3 它的适用边界在哪里AD7606适合什么场景我给你画个范围电力系统电压/电流采集、电能质量分析、继电保护装置电机驱动里的相电流采样、变频器里的电压电流监测多通道振动信号、声学信号同步采集工业自动化控制柜里的模拟量采集配合互感器/变送器电池测试、电源老化测试等需要多通道同步记录电压电流的场合。它不适合的场景也很明确射频、高速信号、瞬态脉冲等需要几十MSPS以上采样率的场合。AD7606最高200kSPS是全通道同步的极限值如果只是单通道用也是这个上限。想要更高采样率就得换AD7606B/C之外的高速ADC或者用FPGA接并行高速ADC阵列那是另一个话题了。提示选ADC第一条原则永远不是“位数最高”而是“合适”。AD7606的16位、200kSPS、8通道同步恰好卡在电力电子和工业采集最舒服的那个区间。2. 内部架构与引脚语义单5V供电为什么能采±10V的底层逻辑2.1 负压电荷泵一个被很多人忽略的设计巧思我第一次看AD7606数据手册时也有一个疑问它明明标注“模拟输入±10V”供电却只要一个5V负半轴的电压怎么处理答案藏在芯片内部的一个负压电荷泵里。AD7606内部有一个电荷泵电路能把5V电源转换成内部负电源轨用来给输入放大器供电。这样输入信号即使负到-10V放大器的工作点依然正常。你不需要在板子上额外生成一个-5V或-12V的负电源所有负压处理都在芯片内部完成。这个设计带来的直接好处是硬件设计大幅简化。早期用逐次逼近型ADC做双极性采集常用的方案是前端用运放把±10V信号电平抬升到0~5V再进ADC。这个方案有两个麻烦一是电平抬升电路会引入额外的失调和噪声二是电源设计要额外考虑负压。AD7606把这些全做了你对板子的要求就是一个干净的5V。2.2 模拟输入链路从引脚到ADC内核之间发生了什么每个模拟输入通道在引脚和ADC内核之间经过了这样一段链路过压钳位保护 → 1MΩ输入阻抗网络 → 二阶抗混叠滤波器 → 采样保持(T/H) → 16位SAR ADC过压钳位保护输入引脚内部有钳位二极管允许输入电压超过电源轨一定范围而不损坏芯片。数据手册给出的输入耐压范围是±16.5V相对AGND这意味着你直接把电压互感器PT的二次侧输出接进来大概率不会烧芯片。不过“不会烧”不代表“精度不劣化”持续过压还是会影响内部钳位管的漏电流所以在高精度场合前端还是要加防护。1MΩ输入阻抗这个参数非常关键。它意味着AD7606的模拟输入对前级来说是“轻负载”你不需要用运放去做阻抗变换直接接电阻分压网络或者互感器输出都行。很多工业采集模块就是把电压互感器输出直接接到AD7606的V1引脚中间只串一个RC滤波。输入阻抗低了前级驱动能力不够采样值就会随信号源内阻变化而变化这是很多现场问题藏在源头里的原因。二阶抗混叠滤波器ADC采样定理要求信号最高频率不超过采样率的一半否则会混叠。AD7606在每个输入通道都集成了一个二阶抗混叠模拟滤波器带宽比采样率高一些能把大部分高频干扰先滤掉给后面可选数字过采样滤波器减轻压力。2.3 引脚分组与多功能复用你得认识这几个“开关”引脚AD7606是LQFP-64封装引脚不算少但你别慌真正需要你关注的引脚可以按功能分成四组电源引脚AVCC接5VVDRIVE接数字接口电平如3.3VAGND和DGND分别接模拟地、数字地。模拟输入引脚V1~V8共8个通道。控制引脚CONVST A/B或合并后的CONVST、BUSY、RESET、CS、RD、OS[2:0]、RANGE、PAR/SER等。数据输出引脚DB[15:0]并行模式或DOUT串行模式。几个需要特别标记的多功能引脚RANGE引脚控制模拟输入量程。接高电平±10V接低电平±5V。注意它是在复位时被锁存的运行时不能随便切换。上电前就要把电位固定好。OS[2:0]过采样倍率选择。三个引脚组合出0~64倍过采样率。复位时锁存。PAR/SER选择数据输出接口低电平用并行DB[15:0]高电平用串行DOUT。这个引脚决定你后面写驱动的方式必须在复位前定好。DB[7:0]并行模式下是低8位数据但在复位期间会被当作配置输入用来设置OS、RANGE等参数。这就是为什么复位时序很重要——复位时这几个引脚的电平状态不能随便否则出来的配置不是你想要的。注意AD7606的很多配置引脚是“复位时锁存”的不是运行时实时读取的。设计电路板时这些引脚要么接固定电平要么接一个跳线/0欧电阻别用MCU的GPIO在运行时切换除非你确定自己清楚复位时序。3. 硬件设计实操参考电路之外的电源、基准与接口细节3.1 最小系统电路和电源去耦的布局细节看参考设计时AD7606的电路似乎很简单电源加几个电容就行了。但实际做板子的时候电源去耦这个细节决定了你的ADC精度上限。我的习惯是在每个AVCC引脚旁边放一个0.1μF陶瓷电容X7R0603加一个10μF钽电容或X7R大容量陶瓷电容并且这些电容要尽量靠近芯片引脚走线要先过电容再进芯片引脚不能芯片引脚下直接出线、电容甩在一边。数字侧的VDRIVE引脚也是同样放0.1μF和10μF的组合。模拟地和数字地在AD7606内部是分离的芯片底部有一个裸露焊盘EP这是模拟地必须焊接到PCB的地平面上。PCB上建议把模拟地和数字地分区然后在ADC芯片下方或者电源入口处单点连接避免数字噪声通过地平面串进模拟回路。电源本身也要干净。如果板上有开关电源AD7606的5V最好用LDO单独给或者至少加一级LC滤波。开关电源的开关纹波如果直接串进AVCC采样结果里会出现固定频率的毛刺很难通过软件滤波完全去掉。3.2 基准电压的三种接法REFOUT/REFIN/REFCAP怎么处理AD7606的基准部分有三个关键引脚REFIN/REFOUT、REFCAP。它们的分工是REFIN/REFOUT合在一起的引脚内部2.5V基准输出同时也是外部基准的输入端口。REFCAP内部基准缓冲器的输出用来给SAR ADC的电容阵列供电接去耦电容。具体接法分三种用内部基准最省事把REFOUT/REFIN引脚通过0欧电阻或直接短接到REFCAP不对这里是REFOUT接电容到AGNDREFCAP也接电容到AGND。实际参考设计中REFOUT/REFIN引脚对地接一个4.7μF电容REFCAP引脚对地接一个1μF电容即可稳定工作。用外部基准芯片追求温漂性能断开REFOUT/REFIN内部基准的连接或者把REFOUT悬空把外部基准芯片如ADR4525的2.5V输出接到REFIN/REFOUT引脚外部基准的输出电容按基准芯片手册配置。用板上其他基准源类似第二种方式但要注意基准源带载能力和噪声必须加缓冲不能直接把电阻分压器接上去。我的经验是常规项目用内部基准就够了内部基准的温漂大约在±10ppm/°C级别具体看批次除非你要做高精度计量级设备才需要外部基准。如果你在原理图上看到REFIN/REFOUT悬空没有任何电容那板子大概率会工作但噪声性能会打折扣。3.3 VDRIVE引脚的正确打开方式VDRIVE是AD7606的“逻辑电平倒装”引脚。它的作用是单独给数字接口供电让数据输出引脚和你的MCU/FPGA电平标准一致。比如主板MCU是STM32F407IO电平3.3V那VDRIVE就接3.3V如果你的系统里数字部分是5V逻辑VDRIVE就接5V。AD7606内部数字输出驱动器的电源就是VDRIVE所以它的输出电压摆幅会跟随VDRIVE不会出现MCU收不了5V信号的情况。这个引脚设计得很贴心省掉了一堆电平转换芯片。但注意一点VDRIVE和AVCC之间最好加一个0.1μF去耦电容别把数字地上折腾出的噪声通过VDRIVE引脚的退耦路径传给模拟电路。3.4 模拟输入前级的防护与RC取值虽然AD7606自带钳位保护但在工业现场浪涌、静电、共模干扰都是现实存在的我不建议直接裸奔把信号线接到芯片引脚上。现场采集互感器二次侧电压时我的标准接法是信号先过串联电阻R比如100Ω再过TVS管到地或者两个背靠背的稳压二极管做钳位然后进AD7606。串联电阻R有两个作用一是限制浪涌电流二是和后面的电容组成低通滤波。如果你需要更高精度的抗混叠可以在芯片引脚前加一级RC低通R取几百欧姆到几k欧姆C取纳法级别具体截止频率按你关心的信号最高频率算。RC越大滤波越深但要注意输入阻抗1MΩ和RC网络的分压效应R太大比如100kΩ会产生非线性误差因为输入端的偏置电流流过R会产生压降。4. 驱动与时序从时序图到STM32代码的落地过程4.1 三种接口模式并行、串行、菊花链怎么选AD7606的数据输出接口分三种模式由PAR/SER引脚决定复位时锁存并行模式PAR/SER低DB[15:0]输出16位数据每次读一个通道读8次完成一轮。速度快适合MCU或FPGA并行接总线。缺点是占用引脚多且8通道读下来时序紧密对MCU的IO操作频率有要求。串行模式PAR/SER高数据从DOUT引脚逐位输出SCLK驱动。适合MCU资源紧张、引脚不够的情况。但速度比并行模式慢而且串行模式下一个DOUT通道只能输出一个通道的数据多通道要切换片选或者用多个DOUT。菊花链模式PAR/SER高且通过配置多片AD7606的DOUT串联形成一条数据链用一个SCLK一次性把所有芯片的数据读出来。适合多板卡高通道数同步扩展比如8片AD7606做64通道同步采集主控只需要4根线。我的建议是单芯片方案优先用并行模式因为时序最简单、速度最快如果是STM32这种带FSMC的MCU并行模式简直是白送的功能如果只是做个测试工装、逻辑不够复杂串行模式凑合也行。4.2 并行读取时序拆解CONVST、BUSY、CS/RD的完整动作AD7606并行读取一轮数据的标准流程是这样的给CONVST引脚一个上升沿通常用低电平转高电平。这个动作触发所有通道同时采样并开始转换。转换期间BUSY引脚拉高。转换完成后BUSY引脚自动拉低。BUSY高电平的时长约2.7μs到3.7μs无过采样时。检测到BUSY下降沿后主控开始读数据。先拉低CS再拉低RDAD7606把第一个通道V1的16位数据放到DB[15:0]上主控在RD上升沿锁存数据。重复CS/RD操作8次依次读出V1~V8的数据。期间可以提前结束读数不用读完8个通道但下一轮CONVST触发前建议确认前面数据已经读走否则会覆盖上一轮数据。有几个时序细节值得注意CONVST的最小脉宽手册要求低电平至少保持25ns高电平也类似换算成主频就是GPIO翻转别太快。用MCU直接拉GPIO40MHz主频下没问题。RD最小脉宽大约21ns到25ns级别常规MCU的GPIO或总线时钟完全够用。第一个READ是否有效并行模式下通常CS和RD要同时有效才能把数据放到总线上有的参考设计是CS低后RD连续拉低8次。建议按“CS拉低后RD拉低→读数据→RD拉高→再拉低...”的顺序做保证每次读操作之间RD有完整的上升沿。如果你打算用MCU的GPIO模拟这个时序核心代码框架大概是void AD7606_StartConv(void) { CONVST_GPIO_HIGH(); // 上升沿触发转换 CONVST_GPIO_LOW(); } void AD7606_ReadData(uint16_t *buf) { // 等待BUSY拉低表示转换完成 while (BUSY_GPIO_READ() ! 0); CS_GPIO_LOW(); for (int i 0; i 8; i) { RD_GPIO_LOW(); // 这里延时少许等待数据稳定 buf[i] (uint16_t)(DATA_GPIO_READ()); RD_GPIO_HIGH(); } CS_GPIO_HIGH(); }4.3 用STM32的FSMC把读时序交给硬件上面的GPIO模拟方式虽然能跑但用系统时钟“喂”时序总觉得亏得慌。STM32F4系列有FSMC灵活的静态存储控制器可以把它映射成外部存储器接口AD7606并行接口在时序上和SRAM高度相似用FSMC简直完美。做法是把AD7606的DB[15:0]接到FSMC数据线D[15:0]CS信号接FSMC的NE1片选地址0x60000000RD信号接FSMC的NOE读使能脚。这样FSMC的一次读操作会自动产生CS有效、RD低脉冲、然后数据被锁存。地址线要根据你需要的通道号分配AD7606并行模式下没有地址线每次读同一个地址自动按通道顺序输出。所以FSMC读地址固定为0x60000000NE1基地址连续读8次即可#define AD7606_BASE ((volatile uint16_t *)0x60000000) void AD7606_FSMC_ReadAll(uint16_t *buf) { // 等待BUSY下降沿 while (GPIO_ReadInputDataBit(BUSY_PORT, BUSY_PIN) 1); // FSMC连续读取8个通道 for (int i 0; i 8; i) { buf[i] *AD7606_BASE; } }FSMC时序要配置成适合AD7606的SRAM模式。重点设置读时序里的ADDSET地址建立时间、DATAST数据建立时间等参数。AD7606的RD低电平脉宽大约要25nsSTM32F407主频168MHz时FSMC一个时钟周期约6ns把DATAST配成4~5个周期即24~30ns就够了。FSMC方案建议从一开始就用哪怕你觉得GPIO模拟看着更直观。因为后面一旦代码规模变大、系统里任务变多FSMC不占CPU时间的优势会越来越明显。4.4 过采样OS位的取舍与采样率计算AD7606的OS[2:0]引脚控制内部数字过采样滤波器。过采样倍率有2、4、8、16、32、64倍档位。原理很简单对同一个模拟输入连续采样多次再在数字域做平均/抽取换来的效果是有效位数提升和带外噪声压制代价是有效数据率下降。OS000不过采样最高200kSPS8通道同时转换。OS0012倍过采样有效吞吐率大约80kSPS具体值手册有表。OS0104倍过采样大约40kSPS。OS0118倍过采样大约20kSPS。以此类推64倍过采样时有效数据率可能低到几千SPS。我看到不少项目在最初调试时开了64倍过采样发现采样波形“很干净”但动态响应跟不上才想起是过采样拖慢了数据率。过采样不是一个“免费午餐”它是拿时间换精度。我的建议是现场信号干扰不大时默认关掉过采样或者开到2倍即可如果是在强干扰环境且对带宽要求不高再往上加。5. 现场问题复盘从噪声超标到通道错位的完整排查链路5.1 现象一所有通道读数偏高且带固定直流偏置有次在项目现场客户反馈所有通道的电压测量值都比实际值高0.3V左右而且这个偏差挺稳定不是随机噪声。一开始我怀疑是基准电压偏了量了一下REFOUT引脚2.5V很准。随后怀疑模拟输入网络分压有问题但前端就是直连信号源没道理所有通道同时偏。最后用示波器探头点在AD7606的V1引脚发现信号波形上叠加了一个很大的地弹噪声。顺着查发现PCB的地平面设计得不好AGND在芯片底部没有单独铺铜而是和数字地共用了一个很细的走线。数字总线翻转时地平面电流瞬间波动直接抬高了模拟参考地读数自然就偏了。处理办法底层重新铺完整地平面AGND和DGND单点连接在芯片下方加多个过孔把EP焊盘和地平面连接。重新打板后偏置消失读数回到正常。这个案例说明AD7606的“地”是最容易出问题的地方。AGND引脚一定要直接连到模拟地平面不能让模拟信号回流路径经过数字地。数据总线翻转引起的局部地电位波动在这种高精度ADC上是真实存在的。5.2 现象二8个通道的数据“串位”了另一个项目里用户读回来的数据规律很怪V2的值跑到V1的位置上V3跑到V2上依次错位V1的数据则跑到最后。我第一反应是驱动里通道索引写错了。检查代码循环读8次索引没毛病。上示波器看CS和RD时序发现CS拉低后主控第一次读操作还没等到RD上升沿数据就已经变了。原来那个主控用的FSMC时序配置成“总线复用”模式读操作里包含地址锁存周期。AD7606虽然不看地址线但那个额外的地址锁存周期会拉长CS的有效时间而且FSMC地址锁存信号ALE在CS之前出现导致AD7606内部通道指针提前推进了一次第一轮读到的其实是无效数据通道整体错一位。解决方式FSMC配置改成“非复用模式”关掉地址锁存同时把ADDSET配成0、DATAST配成合适的周期。另外并行模式下每次CS有效期间通道指针只能推进8次必须保证连续读的次数不超过8否则会回绕。记住一个排查技巧当数据出现“规律性错位”时别急着改代码先用示波器把CS、RD、BUSY三个信号的时序拍下来对比数据手册的时序图方向立刻清晰。5.3 现象三数据噪声大Sigma值远超手册标称有时候板子静态测输入接精密直流源按理说读数应该很稳但采集回来的数据低位不停跳噪声峰峰值明显大于手册上的典型值。这种问题的排查顺序我给一个经验清单检查电源干净度用示波器看AVCC引脚纹波超过20mV就要处理。开关电源供电时先加LDO。检查VDRIVE引脚数字逻辑电源如果也不干净会通过数字输出驱动器耦合到芯片内部。检查REFIN/REFOUT引脚的电容基准引脚上的噪声会直接影响低位跳动。REFOUT对地电容太小比如只有0.01μF时高频噪声明显增加。检查模拟输入前级的RC值输入信号源到ADC之间如果接了太大的电阻输入漏电流约几μA级别会在电阻上产生压降表现为输入阻抗越高误差越大。检查接地AGND和DGND是否单点连接模拟区域下方是否被数字走线穿过有一回问题是开关电源的开关频率几百kHz正好落在AD7606的抗混叠滤波器通带边缘噪声形态不是白噪声而是一簇固定频率毛刺。解决办法是在AVCC前面加一个LC滤波器把开关频率兜掉。5.4 现象四芯片完全无响应BUSY一直不拉低新板子回来焊好AD7606上电代码跑起来发现BUSY引脚一直是高电平CONVST触发了无数次也没反应。这种“死透”的情况排查顺序我固定是检查供电AVCC是不是5V很多新手把AVCC和VDRIVE接到同一个3.3VAVCC电压不够芯片内部负压电荷泵起不来自然无法工作。检查复位RESET引脚在上电后要有一次低脉冲复位。如果RESET悬空或者一直为高芯片可能停留在配置锁存阶段不进入正常工作状态。确保RC复位电路可靠工作或者由MCU控制RESET引脚。检查CONVSTCONVST低电平的时间太短或者上升沿不够陡可能触发不了采样。用示波器确认触发沿确实送进去。检查焊接LQFP-64封装引脚间距小虚焊、连锡、桥接都很常见。用万用表量引脚对地阻抗或用显微镜看焊点。我遇到过两片AD7606是引脚连锡导致VDRIVE和AVCC短路直接把芯片干烧了。检查OS/RANGE/DB低8位这些配置引脚复位期间它们的电平状态会被锁存如果锁存到非法组合芯片可能处于不可用模式。确保复位时将配置脚拉到确定电平。6. 选型对照与数据质量验证板子做好了怎么证明它准6.1 AD7606家族内部怎么选-4、-6、B/C后缀对应什么AD7606不是单颗芯片而是一个家族。常见后缀的意义AD7606-44通道版本引脚更少适合只需要4路同步采集的场景。AD7606-66通道版本很多电能表/电力终端正好用6路三相电压三相电流。AD76068通道标准版。AD7606B / AD7606C升级版内部结构类似但在无失码、温漂、动态范围等参数上有改进。C版本还有AD7606C-1616位和AD7606C-1818位之分精度更高当然价格也更高。选型就一条逻辑通道数够不够精度和温漂满不满足预算允不允许。常规工业控制柜AD7606标准版足够了做计量级或长年户外环境预算够就上AD7606B/C。如果你是要做高通道数系统比如16通道、24通道同步采集不要试图用一颗多芯片去拼正确思路是多片AD7606级联用菊花链串行模式一条SCLK把所有芯片数据读出来。主控只增加少量IO依然能保证所有通道的同步采样。6.2 拿到板子后先做的三个数据验证芯片焊好、驱动能跑通之后别急着去接真实信号先把板子“体检”一遍。我每块新的AD7606采集板拿到手后必做三件事短路底噪测试把8个模拟输入引脚全部短接到AGND连续采集65536个点计算每个通道的均值、峰峰值和标准差。理想情况下读数应该在0附近微小波动噪声峰峰值不超过几个LSB。如果某个通道噪声明显偏高检查那个通道的前级电阻、电容是否焊接正常。精密直流源线性度检查用一台六位半万用表校准过的直流源分别输入0V、1V、2V、5V、9V注意量程记录ADC读数。计算每个点的误差百分比和线性度。如果误差随输入增大而增大大概率是前级分压电阻网络精度不够换成0.1%精度电阻。FFT频谱分析输入一个干净的1kHz正弦波采集8192点做FFT看频谱上有没有异常谐波、电源工频干扰、固定频率毛刺。正常情况下基波应该是唯一的大信号其他位置的杂散越小越好。如果看到50Hz或开关频率附近的杂散说明电源/地处理有待改进。6.3 数据格式与校验别把符号位搞丢了最后提醒一个所有新手都会碰到的坑AD7606输出的是二进制补码格式的16位数据。双极性模式下0x0000对应0V0x8000对应负满量程比如-10V或-5V0x7FFF对应正满量程附近比如9.9997V0xFFFF对应“-1 LSB”而不是“很大正数”。这意味着你把原始数据直接当无符号数用或者直接转float后除以65536都会得到错误结果。正确的换算方法是float raw_to_voltage(int16_t adc_code, float full_scale_v) { // full_scale_v 为量程如10.0表示±10V return ((float)adc_code / 32768.0f) * full_scale_v; }先把16位原始数据强制为int16_t再除以32768而不是65536乘上满量程电压值才能得到正确的有符号电压。一个看似简单的符号位问题曾经让我们的换算公式整整错了半天才找到。我个人在实际操作中的一个经验是AD7606的调试过程一定不能贪快。不要一上来就铺完板调完代码直接上真实信号。先把芯片的“体检”流程走完把电源、地、基准、时序列成一张检查表逐项打勾会发现后来绝大多数怪异问题都能在几分钟内定位。这颗芯片本身非常皮实绝大多数“芯片坏了”的结论最后查出来都是外围电源或时序配置的锅。希望这篇分享能让你少走几步弯路。
返回列表