1. 项目概述与核心价值
在物联网和嵌入式设备开发领域,Wi-Fi连接已成为标配功能。德州仪器(TI)的CC3120作为一款高度集成的Wi-Fi网络处理器(Network Processor),将复杂的射频、协议栈和安全功能封装于一颗芯片内,极大地简化了嵌入式系统的无线连接设计。然而,将这颗芯片成功应用到产品中,远不止是画原理图和焊接那么简单。其硬件设计的精妙之处,尤其是GPIO驱动配置、WLAN射频性能调优以及低功耗模式的管理,直接决定了最终产品的稳定性、通信距离和电池续航能力。
很多工程师在初次接触CC3120时,可能会把注意力集中在软件API和网络配置上,而忽略了数据手册中那些看似枯燥的电气参数和时序要求。实际上,这些硬件层面的细节才是项目成败的关键。比如,一个不恰当的GPIO驱动强度设置,可能会在设备密集工作的2.4GHz频段引入难以排查的噪声,导致Wi-Fi信号时断时续;对低功耗模式时序理解不透彻,则可能让设备无法从休眠中正常唤醒,或者唤醒后状态异常。本文将从一线硬件工程师的视角,深入拆解CC3120硬件设计中的三大核心模块:GPIO驱动配置的权衡、WLAN性能参数的解读与优化、以及低功耗模式(LPDS、Hibernate、Shutdown)的实战应用与陷阱规避。无论你是正在评估选型,还是已经进入PCB布局阶段,相信这些从数据手册字里行间提炼出的实战经验,都能帮你避开不少坑,设计出更可靠、更高效的嵌入式Wi-Fi产品。
2. GPIO驱动能力配置:细节决定成败
GPIO是微控制器与世界交互的桥梁,在CC3120上,它用于连接外部Flash、配置引脚、中断信号等。数据手册中关于GPIO驱动电流(IOL)的表格,往往被新手忽略,但其影响却非常深远。
2.1 驱动强度参数深度解析
CC3120的GPIO引脚(除29、30、50、52、53外)在25°C下,其低电平灌电流(IOL)提供了2mA、4mA、6mA三档可配置的驱动强度。默认设置是6mA。这个参数是什么意思呢?简单来说,它决定了GPIO引脚在输出低电平时,能够“吸入”多少电流来将外部电路拉低。驱动能力越强,引脚翻转速度越快,驱动容性负载的能力也越强,信号边沿更陡峭。
但是,TI在数据手册中明确建议:“TI recommends using the lowest possible drive strength that is adequate for the applications.” 即,建议使用能满足应用需求的最低驱动强度。这背后有两个至关重要的原因:
- 降低射频干扰:GPIO信号的快速翻转(尤其是上升/下降沿)会产生高频谐波。在2.4GHz Wi-Fi频段附近,这些谐波如果处理不当,会通过空间辐射或PCB走线耦合到敏感的射频接收路径中,成为带内噪声,直接劣化接收灵敏度。驱动强度越大,边沿越陡,产生的谐波能量往往越高。
- 减少功耗:驱动一个外部负载,本质上是在对负载电容进行充放电。驱动电流越大,每次翻转所消耗的瞬时功率也越大。对于电池供电的设备,每一个微安级的电流都值得计较。
2.2 实战配置策略与计算示例
那么,如何选择“足够且最低”的驱动强度呢?这需要根据GPIO所驱动的外部负载来计算。
负载类型分析:
- 轻负载:例如连接至另一个CMOS器件输入端的信号线(如另一个MCU的输入、配置上拉电阻的引脚)。这类负载的输入电容很小,通常在几个皮法(pF)量级,所需驱动电流极小。
- 中等负载:例如通过一个串联电阻驱动LED指示灯,或者驱动一段较长的PCB走线(存在分布电容)。
- 重负载:例如直接驱动光耦的LED侧,或者驱动一个需要快速开关的MOSFET栅极。
计算与选型步骤:
- 确定负载电容(C_L):通过器件手册或估算(PCB走线电容约1pF/cm)得到。
- 确定所需信号边沿时间(t_r):根据通信速率(如SPI时钟)确定。例如,20MHz SPI的时钟周期为50ns,其边沿时间通常要求小于周期的10%,即5ns。
- 计算所需驱动电流(I):使用公式
I = C_L * ΔV / t_r。其中ΔV是电压摆幅(例如从3.3V到0V)。假设负载电容为10pF,需要在5ns内完成3.3V的电压变化,则所需电流I = 10e-12 * 3.3 / 5e-9 = 6.6e-3 A = 6.6mA。 - 选择档位:计算值约为6.6mA,略高于CC3120的6mA档位。这时需要评估:
- 实际负载电容可能小于10pF。
- 边沿时间略慢一点(如7ns)是否会影响SPI通信的建立/保持时间?需要回头检查SPI时序参数。
- 如果必须保证,则需选择6mA档,并优化布局减小电容。如果计算值只有3mA,那么选择4mA甚至2mA档位就是更优解。
实操心得与注意事项:
注意:对于nRESET(引脚32)这类关键控制信号,数据手册明确要求其低电平识别电压(VIL)必须低于0.6V。这意味着,即使你选择了较低的驱动强度,也必须确保在驱动其下拉电阻时,在电阻上产生的压降足够小,使得nRESET引脚电压能被可靠地拉低至0.6V以下。通常,我们会为nRESET使用一个较强的下拉驱动(如默认6mA),或者使用一个较小的下拉电阻(如10kΩ),并确保主机MCU的GPIO有足够的驱动能力将其拉高。
配置方法:CC3120的GPIO驱动强度通常在芯片的初始配置或服务包(Service Pack)中进行设置,需要通过主机MCU发送相应的配置命令。务必在硬件设计初期就确定各个GPIO的功能和负载,并在软件初始化流程中完成针对性配置。
3. WLAN射频性能:从参数到实战优化
WLAN性能是无线模块的核心。数据手册中7.9和7.10节的接收/发射特性表,是评估和优化射频性能的圣经。
3.1 接收灵敏度(RX Sensitivity)解读
接收灵敏度是指在保证一定误包率(PER,如10%)的前提下,接收机所能识别的最小信号功率。数值越负(如-96 dBm),说明接收机“耳朵”越灵,能接收到更弱的信号,通信距离也就越远。
关键洞察:
- 速率与灵敏度的权衡:从表格清晰可见,速率越低,灵敏度越好(数值更负)。1Mbps DSSS模式下可达-96dBm,而高速的54Mbps OFDM模式下则为-74.5dBm。这意味着在信号边缘区域,设备会自动降速(速率自适应)以维持连接。
- 模式影响:在802.11n的MCS7高速模式下,Greenfield(GF)模式比Mixed Mode(MM)灵敏度好约1dB。在信道选择上,信道13(2472MHz)的灵敏度比信道6(2437MHz)差1dB,这在做多信道部署或区域规划时需要考虑。
- 供电模式影响:在预稳压1.85V模式下,接收灵敏度会劣化0.25至1dB。这是因为内部LDO的噪声性能可能优于外部DC/DC转换器,在追求极致灵敏度(如远距离应用)时,需谨慎选择预稳压模式。
3.2 最大输出功率(TX Power)与链路预算
最大输出功率决定了信号的“嗓门”有多大。CC3120在11b CCK模式下典型值可达18.3dBm(约67mW),在54Mbps OFDM下为14.5dBm。
链路预算计算: 通信距离由链路预算决定:接收功率 = 发射功率 + 发射天线增益 - 路径损耗 + 接收天线增益。 路径损耗(dB) = 32.44 + 20log10(频率MHz) + 20log10(距离km)。 假设发射功率17dBm,接收灵敏度-90dBm,天线增益0dBi,则允许的最大路径损耗为107dB。 代入公式:107 = 32.44 + 20log10(2400) + 20log10(d),可估算出理论上的最远通信距离d。这有助于在产品规划阶段评估覆盖范围。
实际输出功率的影响因���:
- 供电电压:在VBAT电压较低(接近2.1V)时,输出功率可能会略有下降。
- 信道与法规:数据手册脚注明确指出,边缘信道(2412和2472 MHz)以及802.11b速率下的功率可能会降低,以满足FCC/ETSI的频谱掩模和带外发射要求。这意味着在实际应用中,最大功率并非在所有条件下都能达到标称值。
- 匹配电路与滤波器损耗:这是硬件设计中最关键的一环。PCB上的射频走线、巴伦(Balun)电路、以及外部带通滤波器的插入损耗,都会直接“吃掉”一部分发射功率,并劣化接收信号。1dB的滤波器插入损耗,就意味着发射功率减少1dB,同时接收灵敏度也变差1dB,一来一回对链路预算的影响是2dB,可能直接导致通信距离缩短30%。
3.3 外部滤波器选型与设计要点
数据手册7.11节明确了必须使用外部带通滤波器以满足FCC等认证要求,并强烈建议使用参考设计中的同款滤波器以简化认证流程。
滤波器参数解读:
- 通带(2412-2484 MHz):要求回波损耗(Return Loss)>10dB,插入损耗(Insertion Loss)<1.5dB(典型值1dB)。回波损耗差意味着信号在滤波器端口反射严重,影响天线匹配;插入损耗直接损耗功率。
- 阻带衰减:表格列出了从800MHz到10GHz多个频段的衰减要求。例如,在1600-1670MHz(GPS L1频段附近)要求至少20dB衰减,这是为了防止Wi-Fi信号谐波干扰其他系统,也是法规强制要求。
实操心得与布局警告:
警告:滤波器的布局是射频性能的生死线。必须遵循以下原则:
- 最短路径:CC3120 RF_OUT引脚 → 匹配网络/巴伦 → 滤波器 → 天线连接器,这条路径必须尽可能短。任何多余的走线都是天线,会辐射或接收噪声。
- 完整地平面:射频走线正下方必须有完整、无割裂的接地参考平面,为信号提供清晰的回流路径。
- 屏蔽与隔离:滤波器本身最好用接地屏蔽罩覆盖,并远离数字电路(如MCU、晶振、电源开关节点)。可以将射频区域用一排接地过孔“围起来”进行隔离。
- 参数勿随意更改:不要为了追求更低的插入损耗而轻易选择参数不同的滤波器。阻带衰减不达标可能导致认证失败。TI参考设计中的滤波器型号是经过验证和认证的,是最稳妥的选择。
4. 低功耗模式详解与实战时序控制
对于电池供电的物联网设备,低功耗设计是灵魂。CC3120提供了LPDS、Hibernate和Shutdown三种低功耗模式,理解其机制和时序是稳定工作的基础。
4.1 三种模式对比与选型指南
| 模式 | 典型电流消耗 | 唤醒时间 | 状态保持 | 唤醒源 | 适用场景 |
|---|---|---|---|---|---|
| 活动模式 (Active) | ~50mA (峰值) | - | 全功能运行 | - | 正在传输/接收数据 |
| 低功耗深睡 (LPDS) | 115 µA | < 3 ms | 保持软件状态、网络连接信息 | 内部定时器、主机命令 | 设备空闲但需快速响应(如心跳包、传感器定时上报) |
| 休眠模式 (Hibernate) | 4.5 µA | ~50 ms | 仅保持RTC运行,软件状态丢失 | nHIB引脚信号拉高 | 长时间待机,由外部事件(如按键、传感器中断)触发唤醒 |
| 关断模式 (Shutdown) | 1 µA | ~1.1 s | 全部丢失,相当于重新上电 | nRESET引脚信号拉高 | 超长周期休眠(如数月),或完全断电场景 |
选型逻辑:
- LPDS:是连接态下的主要省电模式。当设备关联到AP后,在无数据收发时自动进入。唤醒极快,对应用透明,是平衡功耗和响应速度的最佳选择。
- Hibernate:当设备需要长时间(如数小时)完全静默时使用。例如,一个每天只上报一次数据的传感器。进入Hibernate前,主机需调用
sl_Stop()函数通知CC3120保存必要上下文。唤醒后,设备需要重新初始化并连接网络。 - Shutdown:功耗最低,但唤醒过程等同于冷启动,耗时最长。仅用于对功耗极度苛刻,且对唤醒时间不敏感的场景。
4.2 关键时序与硬件设计陷阱
数据手册中的时序图(图7-6, 7-7, 7-8)和参数表是硬件连接和软件驱动的法律依据。
1. 上电与复位时序(图7-6): 这是设备正常工作的第一步,也是最容易出错的一步。
- T1(电源稳定时间):VBAT和VIO电源必须在上电后3ms内达到稳定。实操中,必须确保电源电路的上升时间足够快,且无过冲或跌落。使用示波器测量电源引脚波形是必要的调试步骤。
- T2(硬件唤醒时间):nRESET释放(拉高)后,硬件需要最多25ms的初始化时间。在此期间,主机不应尝试通过SPI/UART与设备通信。
- T3(初始化时间):这是最长的阶段。使用内部32kHz晶振时,典型值为1.35秒!这包括了晶振起振、固件加载、射频校准等过程。很多新手在nRESET拉高后立即发送命令,会导致通信失败。必须等待
HOST_INTR引脚产生中断(或查询状态寄存器),表明设备就绪后,才能进行后续操作。使用外部32kHz时钟源时,此时间可缩短至250ms。
2. Hibernate模式进入与唤醒时序(图7-8):
- 进入:主机将nHIB引脚拉低至少
Thib_min(10ms),CC3120收到信号后进入Hibernate模式。 - 唤醒:主机将nHIB引脚拉高,经过
Twake_from_hib(典型50ms)后,设备准备就绪。这里有一个大坑:脚注说明,如果休眠期间环境温度变化超过20°C,唤醒时间可能因射频校准而增加200ms。如果你的设备可能经历剧烈温差(如户外设备),软件必须预留足够的唤醒等待时间。
3. 复位电路设计: 数据手册7.14.2节提供了两种复位方案:
- 方案A(简单可靠):在nRESET引脚上产生一个至少200ms的低电平脉冲。这通常由一个简单的MCU GPIO控制即可。
- 方案B(应对短脉冲):如果主机无法保证200ms的长脉冲(例如MCU本身也在复位),则必须在引脚52(RTC_XTAL_N)上连接一个2MΩ的下拉电阻。这样,nRESET引脚上的低电平脉冲只需至少100µs即可触发复位。这个下拉电阻经常被遗漏,导致系统无法可靠复位。
4.3 时钟系统设计:稳定性的基石
CC3120需要两个时钟:40MHz主时钟和32.768kHz RTC时钟。
40MHz时钟方案选择:
- 外部晶体(最常用):成本低,但需要精确的负载电容(典型值6.2pF)来满足±25ppm的频率精度。PCB布局必须紧凑,晶体尽量靠近芯片引脚,下方净空,周围用接地过孔包围。
- 外部有源晶振/TCXO:精度和稳定性更高,抗干扰能力更强,尤其适合宽温范围应用。需要连接
WLAN_XTAL_P引脚,并将WLAN_XTAL_N接地。如果TCXO有使能脚,可由CC3120的TCXO_EN引脚控制以省电。
32.768kHz RTC时钟方案选择:
- 内部晶体:最省成本的方案,连接一个32.768kHz晶体到引脚51/52。需注意其ESR(等效串联电阻)需≤70kΩ,否则可能不起振。
- 外部时钟源:如果主MCU已有高质量的32.768kHz时钟(如内置RTC输出),可以共享给CC3120,以节省成本和PCB空间。此时时钟信号接
RTC_XTAL_P,RTC_XTAL_N接VIO。务必确保该时钟是CMOS���平,且精度在±150ppm以内。
时钟问题排查心得: 设备不启动、反复复位或Wi-Fi性能不稳定,很大概率是时钟问题。排查步骤:
- 用示波器测量40MHz和32.768kHz时钟波形。观察幅度、频率是否正常,波形是否干净(无过多毛刺)。
- 检查晶体两端是否有起振电压(通常为几百毫伏的正弦波)。
- 确认负载电容的值和焊接。容值偏差过大会导致频率偏移,影响射频性能甚至导致无法连接。
5. 主机接口设计:SPI与UART的抉择
CC3120通过SPI或UART与主机MCU通信。选择哪种接口,取决于你的应用需求。
5.1 SPI接口设计要点
SPI接口最高时钟20MHz(VBAT=3.3V时),是高速数据传输的首选。
- 时序参数:必须满足数据手册7.14.6.1节的时序要求。例如,时钟高/低电平时间(tHT, tLP)至少25ns,MISO数据建立/保持时间(tIS, tIH)至少4ns。对于大多数现代MCU的SPI外设,在20MHz下这些时序通常都能满足。
- 关键细节:nCS信号必须在时钟开始翻转前至少10ns有效(拉低),并在时钟边沿后至少10ns才能无效(拉高)。许多MCU的SPI硬件控制器会自动控制nCS,但需要配置其极性、相位,并检查其时序是否符合此要求。错误的nCS时序是SPI通信失败的常见原因。
- 布局:SPI时钟线(HOST_SPI_CLK)是高速信号,走线应尽量短,并远离射频和模拟线路。最好在时钟线两侧布置地线进行屏蔽。
5.2 UART接口设计要点
UART接口配置简单,最高波特率可达3Mbps,但需要流控以实现可靠的低功耗通信。
- 推荐拓扑:5线制:包括TX, RX, RTS, CTS, HOST_INTR。这是最可靠的配置。RTS/CTS硬件流控确保了主机和CC3120在对方未准备好时不会发送数据,避免了缓冲区溢出。
HOST_INTR中断线用于CC3120主动唤醒处于睡眠模式的主机,是实现低功耗协同工作的关键。 - 简化拓扑的风险:
- 4线制(无HOST_INTR):主机必须始终保持唤醒,或UART具备起始边沿检测功能来自动唤醒,否则会丢失数据。
- 3线制(无RTS/CTS):风险最高。由于缺少从主机到CC3120方向的流控(无CTS),如果主机处理数据不够快,CC3120发送的数据可能会被覆盖丢失。仅在全双工、主机处理能力极强的系统中可考虑,不推荐用于低功耗应用。
接口选择建议:
- 追求高吞吐量、低延迟(如音频流、高速数据采集),选SPI。
- 追求设计简单、引脚少、兼容性强(主MCU UART资源丰富),且数据量不大,选UART(5线制)。
6. 电源系统设计与PCB布局实战指南
稳定的电源是射频性能的保障,合理的布局则是抑制干扰的前提。
6.1 电源架构与引脚连接
CC3120支持两种供电模式:
- 宽电压电池模式(VBAT:2.1V - 3.6V):最常用。将电池或稳压源(如3.3V LDO)直接连接到VBAT相关引脚(37, 39, 44)和VIO引脚(10, 54)。芯片内部的DC/DC转换器会生成所需的各种电压。务必确保所有VBAT和VIO引脚都正确连接,且走线足够宽以承载峰值电流(可能超过500mA)。
- 预稳压1.85V模式:外部提供一个高性能、低噪声的1.85V稳压源,直接给上述所有引脚供电。此模式可以省去内部DC/DC所需的外部电感和电容,降低BOM成本和面积。但对这颗外部LDO要求极高:输出电流能力≥900mA,负载调整率好,瞬态响应快(<4µs)。必须紧贴芯片放置,并用大面积铜皮连接。
去耦电容设计: 数据手册的参考设计给出了详细的去耦电容方案,必须严格执行。基本原则是:大电容(如10µF)应对低频电流需求,放置在电源入口;小电容(如0.1µF, 0.01µF)应对高频噪声,必须尽可能靠近芯片的每个电源引脚放置。每个电源引脚到其最近的地引脚之间,应形成一个低阻抗的高频回路。
6.2 PCB布局分层与分区策略
一个四层板是设计CC3120的推荐起点:
- 顶层(Top Layer):放置CC3120、射频匹配电路、滤波器、天线接口、晶体、关键去耦电容。这是主要的信号和元件层。
- 中间层1(内电层1):完整的地平面(GND Plane)。这是最重要的层!为所有信号提供清晰的回流路径,并屏蔽各层间的干扰。
- 中间层2(内电层2):完整的电源平面(Power Plane),用于分布3.3V/1.85V等电源。如果电源种类多,可分割。
- 底层(Bottom Layer):放置阻容、 SPI Flash、连接器等次要元件。避免在底层走高速线或射频线。
分区布局原则:
- 射频区:将CC3120、巴伦、滤波器、天线连接器集中在一个连续的区域内。该区域下方必须是完整的地平面。用一排接地过孔将射频区“包围”起来,形成屏蔽墙。射频走线需做50欧姆阻抗控制。
- 数字区:主机MCU、SPI Flash、复位电路等放在另一区域。避免数字信号线穿越射频区上方。
- 电源区:DC/DC电感、输入输出电容等噪声较大的器件集中放置,并远离射频和时钟区域。
- 时钟线:40MHz和32.768kHz时钟走线应尽量短,两边用地线保护,下方避免其他信号线穿越。
6.3 接地与过孔策略
- 单点接地 vs. 多点接地:对于射频和高速数字混合电路,应采用多点接地。芯片的每个GND引脚都应通过最短的路径(通常是一个过孔)连接到内部完整的地平面。这为高频噪声提供了最短的回流路径。
- 过孔的使用:在电源引脚旁,使用多个过孔将电源平面与顶层连接。在去耦电容的接地端,同样使用过孔直接连接到地平面。过孔能显著降低连接阻抗和电感。
- 天线下方:天线辐射区域下方的所有PCB层必须净空(无铜),特别是不能有地平面或走线,否则会严重影响天线辐射效率。
7. 常见问题排查与调试实录
即使严格按照设计指南,首次投板也可能遇到问题。以下是一些典型问题的排查思路。
7.1 设备无法启动或初始化失败
- 症状:上电后,测量电流极小或无变化,主机无法通过SPI/UART与CC3120通信。
- 排查步骤:
- 电源:用万用表和示波器检查所有VBAT、VIO引脚电压是否正常、稳定(无跌落)。检查复位期间nRESET引脚电平是否被可靠拉低>5ms,然后保持高电平。
- 时钟:用示波器探头(需使用高频探头或最小化探头接地环)测量40MHz和32.768kHz时钟引脚是否有波形。32.768kHz时钟幅度较小,需调整示波器灵敏度。确认晶体两端电压差(峰峰值)在预期范围内(通常几百mV)。
- SPI Flash:确认外部SPI Flash型号与TI支持列表一致,焊接无误。CC3120启动时需要从Flash加载固件和服务包。
- 启动时序:确保主机在释放nRESET后,等待了足够长的时间(>1.5秒用于内部晶振初始化),并检查
HOST_INTR中断信号是否变高。
7.2 Wi-Fi性能差,连接距离短或不稳定
- 症状:RSSI(信号强度)值低,吞吐量不达标,容易断线。
- 排查步骤:
- 射频路径:使用矢量网络分析仪(VNA)测量从CC3120 RF_OUT到天线连接器的S11参数(回波损耗)。在2.4GHz频段内,S11应小于-10dB(即VSWR<2:1)。如果不达标,检查巴伦电路和滤波器的匹配元件值。
- 电源噪声:用示波器(最好是带宽>100MHz的)的AC耦合模式,测量CC3120电源引脚上的噪声。在射频发射时,噪声可能会增大。过大的电源噪声会直接劣化接收灵敏度和发射信号的频谱纯度。确保去耦电容布局合理。
- 外部干扰:将设备置于屏蔽室或远离其他2.4GHz设备(如路由器、手机)测试。排查板上的数字噪声源(如开关电源、MCU的GPIO翻转)是否耦合到了射频部分。可以尝试暂时降低GPIO驱动强度(见第2章)。
- 天线:检查天线是否匹配,连接器是否焊接良好。换用已知性能良好的标准天线(如偶极子天线)进行对比测试。
7.3 低功耗模式电流不达标
- 症状:进入LPDS或Hibernate模式后,整机电流远高于数据手册典型值。
- 排查步骤:
- 引脚泄漏:检查CC3120所有未使用的GPIO引脚配置。悬空的输入引脚会产生漏电流,应通过软件将其配置为输出低电平或带上拉/下拉电阻。
- 外部电路:断开CC3120与主MCU及其他外围电路的连接(如切断电源或信号线),单独测量CC3120的电流。如果电流正常,说明问题在外部电路;如果仍高,则问题在CC3120本身或其周边。
- SPI Flash功耗:确认外部SPI Flash是否支持深度睡眠模式,并在CC3120进入低功耗模式时,主机是否将其置于省电模式。
- 软件配置:确认是否正确调用了进入低功耗模式的API(如
sl_Stop()用于Hibernate)。检查网络连接是否已正确断开,因为保持连接态进入LPDS的功耗会高于空闲态。
7.4 SPI/UART通信异常
- 症状:数据丢包、校验错误、完全无响应。
- SPI排查:
- 用逻辑分析仪抓取SPI的CLK, MOSI, MISO, nCS四路信号。严格对照数据手册时序图,检查建立时间、保持时间、nCS时序是否满足要求。
- 检查SPI时钟极性(CPOL)和相位(CPHA)设置。CC3120的SPI模式需要根据数据手册确定(通常是Mode 0或Mode 3)。
- 检查主机SPI时钟频率是否在允许范围内(VBAT低时最高12MHz)。
- UART排查:
- 用逻辑分析仪或示波器检查波特率是否准确(115200bps)。测量10个位的时间宽度,计算实际波特率。
- 检查流控引脚(RTS/CTS)的电平逻辑。确认主机和CC3120的流控使能设置一致。
- 如果使用中断唤醒,检查
HOST_INTR引脚的连接和中断触发方式(边沿/电平)配置是否正确。
硬件调试是一个系统性的工程,需要耐心和细致的测量。一份清晰、完整的原理图和PCB布局图,配合示波器、逻辑分析仪、频谱分析仪(如果条件允许)等工具,是快速定位问题的关键。记住,数据手册是你的第一参考资料,而本文提供的这些实战经验和排查思路,希望能成为你调试过程中的第二参考。