
拿到Mouser发来的CC1350 SensorTag开发套件和天线套件时我其实比预想中平静但拆开静电袋看到那块小得可以挂钥匙扣的板子还是觉得这钱花得值。SensorTag系列在低功耗IoT圈子里不算新鲜CC1350版本却有点特殊——它把Sub-1GHz和2.4GHz两种频段做进了同一颗无线SoC板上又集成了温湿度、气压、光照、红外温度、九轴运动传感器基本覆盖了无线传感器原型的常见验证需求。天线套件则是很多人容易忽略、但实际决定通信距离的关键道具。这篇就围绕这套组合讲讲CC1350双频段的价值、开发环境怎么搭、天线套件怎么用以及几个实操中容易踩的坑。1. CC1350 SensorTag为什么值得从Mouser直接下单1.1 双频段SoC到底解决了什么现实问题做低功耗无线产品选频段一直是个让人头疼的事。2.4GHz有BLE、Zigbee、Thread的成熟生态手机可以直接连协议栈丰富但穿墙能力和绕射能力一般Sub-1GHz比如868MHz、915MHz传播损耗更低开阔环境覆盖距离明显更远适合跑长距离传感器网络代价是协议生态相对碎片手机也没法直接连。常见的MCU方案通常只能二选一要么用2.4GHz SoC要么用Sub-1GHz SoC。如果产品既希望手机近场配置、又希望数据能通过长距离链路汇聚就需要两套芯片甚至两套系统成本和功耗都上去了。CC1350的思路是在一颗芯片上同时放下Sub-1GHz和2.4GHz两套射频通路主控运行时根据场景切换或分时使用一个节点就能同时满足“手机可以直接交互”和“低功耗远距离上行”两个需求。从硬件内部看CC1350主控是一颗48MHz的ARM Cortex-M3另外还有一个独立的Cortex-M0核心专门处理射频协议。这个设计很聪明协议栈的实时收发任务由专用核心承担主MCU不用每次收发都醒来即使应用处理器进入休眠无线部分也能维持协议状态。芯片集成128KB Flash和28KB RAM对于常见的传感器节点完全够用。典型待机电流可以做到微安级CR2032纽扣电池供电都能撑很久这才是SensorTag这类板子能做成“挂件形态”的前提。1.2 SensorTag开发套件的定位是一块能直接跑的传感器口袋CC1350 SensorTag官方型号是CC1350STK本质上是一块面向快速原型验证的多传感器无线节点。它不要求你先画底板、调传感器驱动出厂就预置了固件手机装上配套App就能直接看到温度、湿度、气压、光照、运动等数据。对软件工程师、产品经理、方案评估人员来说这是效率最高的起点不需要懂RF不需要焊板子几分钟就能把应用场景的大致数据流跑通。对硬件工程师来说SensorTag则是很好的参考设计。板子上传感器的选型、电源树、天线接口、调试接口都摆在那里可以照着抄也可以把它当成“活体测试床”换传感器、改协议、调功耗都能在这块小板上快速验证。很多人会把SensorTag当成一次性玩具其实它比LaunchPad这类开发板更适合做场景验证因为形态和真实产品更接近传感器也更齐全。我在Mouser下单时除了SensorTag本体还顺手勾了天线套件。原因很简单如果用默认板载天线跑应用通信距离只能得到一个模糊结果但产品最终做出来天线的形态、匹配、摆放位置都会直接影响覆盖。与其等项目样机出来再调天线不如一开始就用天线套件把手感建立起来。1.3 天线套件不是“配件”是无线设计的标尺很多刚接触无线开发的人会低估天线的作用认为“只要RF芯片输出功率够大距离自然远”。实际上在近距离、低功耗、小体积的产品里天线效率往往比发射功率更影响覆盖。一颗输出功率0dBm的芯片配上高增益天线和良好匹配实际通信距离可能超过输出功率10dBm但天线设计糟糕的方案。天线套件通常包含多种频率和形态的天线配合SensorTag上的射频连接器可以快速切换对比。用这套东西你可以在真实环境里验证868MHz的偶极子天线和2.4GHz的PCB天线在同一个节点位置、同样的发射功率下覆盖距离能差多少天线靠近电池、贴近金属外壳后RSSI又会掉多少这些数据没做过实测光靠数据手册是没法真正建立直觉的。2. 开箱硬件拆解与关键细节2.1 板载传感器资源与核心外设CC1350 SensorTag的小身板上集成度相当高。我按自己的使用习惯把主要传感器整理成了表格方便对照参考传感器/功能典型型号主要用途温湿度电容式数字温湿度传感器环境监测、冷链、暖通气压MEMS气压传感器气象、楼层定位、高度检测环境光数字环境光传感器智能照明、屏幕亮度调节红外温度MEMS非接触式温度传感器人体存在检测、工业测温九轴运动加速度计陀螺仪磁力计跌倒检测、姿态、运动追踪麦克风MEMS麦克风声音事件检测、噪声监测这些传感器几乎覆盖了物联网最常见的感知类型。对于原型验证来说你不用再挨个买模块、飞线、调I2C时序直接在例程里读寄存器就能拿到数据。SensorTag的主控通过内部I2C和SPI总线连接这些传感器SDK里的驱动和示例代码都给好了即使后面换成自己画的板子大部分驱动代码也可以直接复用。2.2 天线套件里有什么形态和频率怎么选这次一起到的天线套件里有Sub-1GHz频段和2.4GHz频段的多种天线形态。常见的主要是以下几类偶极子PCB天线带宽、效率都不错尺寸相对较大适合做网关或基础站。IFAInverted-F Antenna尺寸小适合便携产品但对净空区敏感。MIFAMeandered IFA通过蜿蜒走线进一步压缩尺寸适合空间受限的设备。螺旋天线/弹簧天线立体结构适合用在塑料外壳小产品里。不同频率的天线尺寸差异很大。Sub-1GHz的波长比2.4GHz长得多比如868MHz的自由空间波长约为34.5cm1/4波长也有8.6cm左右而2.4GHz的1/4波长只有约3.1cm。所以你会发现SensorTag上2.4GHz天线区域很容易做小Sub-1GHz天线要做好的话要么板子空间给足要么用外置天线。天线套件存在的意义就是让你在正式画板前先确认我的产品外形能不能容纳得下这个频段的高效天线。2.3 供电、调试接口与整体结构设计CC1350 SensorTag默认用CR2032纽扣电池供电也提供micro USB接口可以边充电边调试。板上保留了SWD调试接口可以通过TI的调试扩展板或外部XDS110调试器连接进行程序烧录和断点调试。需要注意SensorTag板载没有仿真器想用CCS或IAR在线调试需要额外准备调试器。整板的功耗设计非常讲究电池座、电源开关、传感器电源域划分都有讲究。实际调试时如果你长时间连着调试器或者USB系统可能不会进入真正的低功耗状态这时候测出的电流会偏高后面我会专门说功耗测试的坑。结构上SensorTag的外壳是塑料卡扣设计可以直接挂在钥匙扣上也方便放进不同环境做部署测试。做环境监测原型时我直接把它塞进了一个小塑料盒外面留出天线区域效果和真实产品已经很接近。3. 开发环境搭建与快速上手3.1 工具链选型CCS、IAR与Keil怎么选TI的芯片开发工具主要三个选择Code Composer StudioCCS、IAR Embedded Workbench for ARM、Keil MDK。我个人的习惯是优先用CCS原因很简单TI自己的SDK对CCS支持最完整例程导入最顺滑XDCtools版本匹配问题也最少。IAR的编译优化和调试体验也很好很多老工程师偏爱好但工程配置需要自己花点时间。Keil在ARM生态里用户量大但针对TI SimpleLink芯片的例程支持相对少一些。开发前需要安装TI官方的SimpleLink CC13xx SDK这包例程、驱动库、协议栈都在里面。SDK体积不小包含BLE协议栈、TI 15.4协议栈、Sub-1GHz专有RF例程等。安装时注意路径不要带中文和空格否则CCS导入工程时容易出奇怪问题。3.2 手机App连接SensorTag读取数据如果你只是想快速看看SensorTag能干什么最省事的方式是下载TI官方的SimpleLink SensorTag手机App。用手机蓝牙扫描到SensorTag配对后就能看到各传感器实时数据。温度、湿度、气压、光照强度、姿态角都以图形化界面展示数据翻页也流畅。这个方式尤其适合产品经理、方案销售或刚开始评估项目的同学不需要写一行代码就能直观感受硬件的性能边界。我自己会先用App跑一遍确认传感器数值正常再做后续开发。比如放到窗边测光照变化、用手紧握测红外温度变化、走路时看九轴数据波形这些快速实验能帮你建立对传感器灵敏度的直观认知。如果你后面要自研算法也可以先用App采集数据导出分析不必一上来就写嵌入式代码。3.3 编译烧录第一个示例工程进入嵌入式开发阶段第一步我建议把SDK里的“empty”或“sensor”相关例程导入CCS然后编译烧录。具体步骤可以这样走打开CCS选择工作区路径最好用默认的workspace避免权限问题。通过Project - Import CCS Projects导入SDK中的SensorTag例程选择CC1350STK对应板级支持文件。右键工程在Properties里确认Device型号是CC1350F128编译工具链选TI编译器。连接外部XDS110调试器接线确认SWDIO、SWCLK、GND、RST无误。点击Build按钮确认编译无错误再点击Debug或Flash按钮下载固件。第一次编译如果报找不到XDCtools或者编译器版本不匹配去CCS的App Center里安装对应版本的XDCtools一般能解决。烧录失败时首先要检查的是调试器驱动是否安装、目标板供电是否正常这两个问题占了绝大多数失败原因。3.4 双频段模式切换实操要点CC1350的双频段不是两路射频同时收发而是分时复用。也就是说同一时间你只能跑某个频段的协议但通过配置和切换可以让节点在不同场景下工作在不同频段。SDK里的例程通常分两类一类是BLE/2.4GHz一类是Sub-1GHz的15.4或专有RF。你需要在工程属性里把RF配置改成目标频段并选对对应协议栈。实际操作中我在同一个SensorTag上先烧了BLE例程用手机App读取数据然后切到Sub-1GHz的专有RF例程用另一个CC13xx板子做接收端验证长距离数据回传。关键点是发射端和接收端的中心频率、调制方式、数据速率、前导码设置必须完全一致。两个节点的参数只要差一点点数据就收不到。这也是无线开发调试中最考验耐心的地方。4. 天线套件使用与无线链路预算4.1 天线选型与匹配评估拿到天线套件后不要急着直接装上跑距离先把天线的匹配状态搞清楚。最好用矢量网络分析仪测天线的S11也就是回波损耗。S11在目标频率越低越好通常要求小于-10dB意味着反射功率不到10%大部分能量能辐射出去。如果没有网分也可以用实际收发测试做定性对比把发射节点固定接收节点逐渐拉远记录不同天线的RSSI变化。这个方法粗糙但实用尤其是对比同一频段不同天线的表现时很容易看出差别。我测试时发现同样在868MHz、同样5dBm发射功率下某款螺旋天线和某款PCB偶极子天线的接收RSSI在20米处能差出6到8dB这个差距直接反映在覆盖距离上。4.2 链路预算快速计算手算一遍心里有底做无线项目链路预算是必须掌握的基础功。简单公式是接收功率 发射功率 发射天线增益 接收天线增益 - 路径损耗 - 衰落余量。自由空间路径损耗L可以用简化公式估算L(dB) 20 × log10(距离, km) 20 × log10(频率, MHz) 32.44拿868MHz、100米举例L约等于20×log10(0.1) 20×log10(868) 32.44也就是-20dB 58.8dB 32.44大概71dB。如果发射功率5dBm天线增益都为0dBi衰落余量留10dB那么接收端信号强度约为5 - 71 - 10 -76dBm。CC1350在Sub-1GHz的接收灵敏度能到-110dBm左右所以这个场景余量非常充足通信会非常稳定。但如果把发射功率降到0dBm距离拉到500米衰落余量不变接收功率就是0 - 20×log10(0.5) - 20×log10(868) 32.44? 我顺手算了下大概在-98dBm附近也还能工作但余量已经不大。实际环境中还有多径衰落、遮挡、人体吸收等因素所以算出来的数字一定要打折看。这个手算习惯能帮你在选天线、定发射功率、规划节点密度时少走很多弯路。4.3 实测对比Sub-1GHz和2.4GHz的真实差距我把SensorTag和配套接收节点装进两个防水盒在园区做了一个简单对比测试。2.4GHz模式在开阔地带大概能稳定跑150米左右但绕过一个墙角后RSSI掉得很快同样的节点位置切到868MHz的Sub-1GHz模式在300米外还能稳定收到数据绕射能力明显强一个档次。这不是芯片性能差异而是频段本身的物理特性频率越低传播损耗越低衍射能力越强。室内场景则反过来2.4GHz由于频段拥挤、协议成熟和手机的交互更稳定Sub-1GHz虽然穿墙不错但周围的无线干扰源不多协议配置需要自己把控。所以双频段方案的价值就是该近场交互的用BLE该远距离传输的用Sub-1GHz一套硬件通吃。4.4 天线实战避坑天线测试中最容易被忽视的是净空区。板载天线周围如果铺铜、放金属螺丝、甚至被手握住谐振频率会偏移S11变差通信距离骤降。我踩过一次坑把SensorTag直接贴在金属配电箱外壳上测数据结果RSSI掉了20dB后来才意识到是天线被金属短路近场了。另一个坑是天线套件里的连接线缆有些细同轴线非常脆弱反复弯折容易内部断裂。外表看不出问题实际信号完全出不去。用之前最好用万用表测一下馈线的通断或者在源头用网分确认一下。最后匹配网络里的电容电感不要随意更换哪怕只换了一个不同容值的电容天线的谐振点就不知道漂到哪里去了。5. 常见问题排查与把项目往前推5.1 烧录识别不到、手机连不上SensorTag这是新手遇到最多的问题。烧录失败首先检查调试器驱动是否安装XDS110驱动在TI网站可以单独下载Windows下如果设备管理器里看到黄色感叹号驱动就是没装好。其次确认SWD线序SWDIO和SWCLK接反会导致无法识别我在第一次用外部调试器时就把这两个脚接反过一次排查了半天。手机连不上SensorTag时先排除电池电量问题CR2032没电后板子不会正常工作。再就是SensorTag可能处于深度睡眠按一下侧边的按键唤醒或者重新拔插电池复位。如果手机上能看到蓝牙广播但无法连接尝试在手机蓝牙设置里忽略该设备后重新扫描大部分情况是之前连接状态残留导致的。5.2 双频段切换后另一个频段收不到数据如果你在2.4GHz下用得好好的切到Sub-1GHz后收发节点之间不通最可能的原因是两端参数不一致。中心频率、调制格式、数据率、信道带宽、前导码长度、同步字每一项都必须两端配置成一样。我建议把配置文件的参数截图保存两组节点对照检查不要凭记忆设。另外还要注意手机App只能和BLE也就是2.4GHz频段交互。切到Sub-1GHz后手机是没办法直接收到SensorTag数据的你需要另一个CC13xx节点做接收端把数据转到串口或以太网。很多人在这一步卡住误以为板子坏了其实只是没有配套的Sub-1GHz接收设备。5.3 功耗测量结果偏高怎么排查如果你测SensorTag功耗发现待机电流远高于数据手册标称值先看看是不是插着调试器。调试器会持续给目标板供电并维持调试接口活动芯片无法进入低功耗模式。断开调试器、拔掉USB线、只用纽扣电池供电再测才是真实数据。另外如果你的程序里开启了多个传感器的周期性采样功耗也会明显升高。传感器本身虽然功耗低但每次采样和射频发送都有峰值电流采样越频繁、发送越频繁平均电流越高。想优化功耗要善用TI-RTOS的电源管理框架让CPU在空闲时进入更深的睡眠同时把传感器采样间隔调整到满足业务需求即可不要为了“看起来实时”无谓增加发射次数。5.4 我的体会和下一步扩展整套走下来我最深的感触是把无线产品从“能连上”做到“稳定覆盖”中间差的天线功课远比很多人想象的多。SensorTag加天线套件这套组合刚好把从节点硬件、协议栈到射频链路的门槛都降到了个人开发者能够得着的高度。它不是玩具更像一套“最小可行无线系统”拿它验证完场景再照着它设计量产板能省下大量冤枉钱。我自己的下一步计划是把两个SensorTag组成一个Sub-1GHz的星型网络一个节点做采集另一个做汇聚网关再通过BLE把汇总数据推给手机。多节点组网、数据冲突避免、低功耗策略这些真实产品要解决的问题用这套组合都能提前演练。如果你也在低速无线传感器这个方向折腾建议在Mouser上直接入一套别只是看数据手册板子拿在手里烧个程序、拉个距离心里才真正有底。