1. 项目概述与核心思路拆解最近和几个圈内的硬件、嵌入式老伙计聊天大家不约而同地感慨现在的手机越来越“大而全”但似乎也离“纯粹”越来越远。我们怀念那个功能机时代一个设备就干好一两件事的踏实感。于是我们一拍即合决定搞一个“虚拟项目”来玩一玩也当是技术练兵和头脑风暴。这个项目我们内部称之为“微型移动终端”核心目标很简单在极其有限的物理空间内长宽高不超过5.5cm x 3.5cm x 2cm塞进一个能独立接入蜂窝网络GSM/CDMA、能通话发短信、能通过蓝牙或数据线为其他设备如电脑、PDA提供网络共享的核心模块。这听起来有点像把一部功能手机的“主板”和基础通信功能极致压缩后做成一个可穿戴或便携的独立模块。它本身不是给最终用户直接操作的“手机”而是一个“通信心脏”。你可以把它理解为一个超级迷你的、带电池的蜂窝网卡但它又比网卡多了独立的通话和短信处理能力。设立这个虚拟项目不是为了马上做出产品上市而是想逼着自己去思考在现有技术条件下如何做极致的微型化和低功耗设计如何平衡功能、体积和续航这既是对我们这些老工程师基本功的一次考验也是对手机未来形态例如模块化、分布式设备的一种可行性推演。这个项目特别适合几类朋友参与一是痴迷于硬件微型化设计的工程师你得跟每一毫米的PCB空间较劲二是深耕低功耗嵌入式开发的软件/固件工程师如何在毫安级别优化代码是你们的战场三是熟悉射频RF和天线设计的朋友在小空间里保证信号质量是个大挑战最后当然也欢迎对产品架构和供应链有想法的朋友一起聊聊怎么把这一堆芯片和方案“攒”起来。我们希望能组成几个小团队从不同技术路径出发提出各自的解决方案最后再来一场“华山论剑”互相学习。2. 核心需求解析与技术指标定义既然是个虚拟项目我们就先抛开成本束缚当然心里还是要有个谱专注于技术实现的极限。根据初步讨论我们把需求拆解成了几个必须达成的硬指标和几个需要权衡的软指标。2.1 刚性需求不可妥协的底线首先是几个必须实现的“铁律”蜂窝网络接入必须支持GSM或CDMA网络。从技术成熟度和全球覆盖率来看GSM2G是更稳妥的起点它的协议栈相对简单芯片方案也更为古老和廉价。但我们也考虑直接上Cat.1甚至NB-IoT这类低功耗广域网LPWAN技术为物联网方向留个口子。不过鉴于要支持语音通话传统2G或3G的CS电路交换域目前仍是必须的。蓝牙功能集成蓝牙至少是蓝牙4.0低功耗或以上。核心用途有两个一是连接蓝牙耳机实现无线通话这能省掉机身上的耳机孔对缩小体积有巨大帮助二是作为与手机、电脑等智能设备进行数据交换如同步通讯录、传输文件的短距离通道。统一多功能接口这是实现“微型化”和“扩展性”矛盾统一的关键。我们设想只保留一个物理接口比如USB Type-C但通过这个接口配合不同的线缆或协议实现充电、音频输出接有线耳机、以及连接电脑进行数据同步/调试的所有功能。Type-C的Alternate Mode如音频配件模式和强大的供电/数据能力让它成为首选。体积极限38.5立方厘米5.53.52。这是整个项目的“灵魂约束”。所有设计都必须服务于这个数字。它决定了PCB的层数、电池的形状和容量、屏蔽罩的设计、乃至芯片的选型必须优先考虑WLCSP、BGA等封装。核心通信功能必须实现基本的语音通话和SMS短信收发。这是它作为“通信终端”的立身之本。网络共享Tethering能为电脑通过USB或PDA等设备提供移动互联网接入。这意味着模块内部需要实现一个简单的网络协议栈如PPP和NAT转发功能。连接PDA的功能为古老的PDA设备提供蜂窝网络接入。连接方式待定蓝牙或数据线各有利弊。蓝牙无线方便但可能涉及额外的驱动数据线稳定但需要PDA支持USB网络共享或特定协议。可靠性要求具备较强的防摔抗震能力。这要求我们在结构设计如采用软硬结合板、加强边框、芯片选型更耐震的BGA而非QFN和灌封工艺上都要下功夫。续航底线电池需支持至少72小时3天的纯待机时间。这里的待机指的是注册到网络但不进行任何主动通信的状态。这是对低功耗设计的终极考验。2.2 核心矛盾与设计权衡明确了必须做什么接下来就要面对几个棘手的矛盾这直接决定了我们的技术路线体积 vs. 电池容量这是最主要的矛盾。在38.5立方厘米的空间里留给电池的体积可能不到15立方厘米。假设使用能量密度较高的锂聚合物电池约250-300Wh/L那么电池容量大约在3.7-4.5Wh之间。以3.7V标压计算电池容量大概在1000mAh到1200mAh。用这1000mAh的电去支撑3天待机意味着平均待机电流必须小于1000mAh / 72h ≈ 13.9mA。这给基带芯片、射频前端的低功耗模式提出了极高要求。功能集成 vs. 功耗与散热是把应用处理器AP、基带处理器BP、内存等都集成在一颗芯片上如高通或紫光展锐的入门级手机平台还是采用AP外挂Modem的方案集成方案体积小但可能功耗优化不够极致分离方案可能更灵活但占用的PCB面积和互连复杂度会增加。在小空间内任何芯片的发热都需要认真考虑。射频性能 vs. 天线尺寸GSM 900MHz的波长约33cm天线尺寸理论上是波长的1/4即8cm左右。在5.5cm的设备里实现高效天线必须采用曲折线、倒F天线IFA或陶瓷天线等小型化设计这必然会牺牲一些效率。我们需要在天线性能、SAR值电磁波吸收比值和体积之间找到平衡点。接口简化 vs. 功能完整性只留一个Type-C口意味着充电管理、音频Codec、USB数据功能都要集成到主芯片或通过很少的配套芯片实现。同时要确保在连接电脑时能正确枚举为不同的设备如Modem、网卡、声卡。3. 系统架构设计与核心芯片选型基于上述分析我们倾向于采用一种“中度集成”的架构在保证低功耗的前提下尽可能减少芯片数量。3.1 主控平台选型MCUModem vs. 单芯片SoC这是一个关键决策点。方案A专用通信模组低功耗MCU。例如选择一款集成了GSM/GPRS基带、射频和电源管理的通信模组如移远EC20系列的古旧版本或者更专门的低功耗模组。再由一颗超低功耗的MCU如STM32L4系列、Nordic nRF52系列负责控制模组、处理蓝牙协议、管理外设和用户逻辑。这种方案的优势是分工明确通信模组经过市场验证稳定性高MCU可以极致优化功耗。缺点是总物料成本BOM可能偏高体积占用稍大两个处理器间需要通信UART增加了复杂度。方案B高度集成的单芯片智能手机平台。例如紫光展锐的SC6531E老旧但极其成熟的功能机平台或者高通骁龙Wear系列面向穿戴设备集成应用处理器、基带、蓝牙、Wi-Fi。这种方案集成度极高一颗芯片解决大部分问题外围电路简单有利于缩小体积。但缺点是这类芯片的功耗优化可能不如专用低功耗MCU且开发门槛相对较高需要配套的BSP和复杂的软件开发环境。个人倾向与理由对于这个极致追求体积和待机功耗的虚拟项目我更倾向于方案A。原因有三第一灵活性高。我们可以为MCU选择最先进的低功耗工艺节点如40nm甚至22nm ULP而通信模组可以独立进入深度睡眠。第二责任分离。通信功能的稳定性由成熟的模组保证我们只需通过AT指令集控制它把主要精力放在MCU端的功耗优化和蓝牙/USB逻辑上。第三更容易实现“3天待机”。我们可以设计一个系统让MCU绝大部分时间处于STOP模式微安级电流定时唤醒检查状态通信模组也设置为最长的DRX非连续接收周期。两者配合有望将平均待机电流控制在10mA以内。3.2 核心子系统分解与芯片初选假设我们采用方案AMCUModem系统可以分解为以下几个核心子系统通信与主控子系统蜂窝通信模组选择一款支持GSM/GPRS或EDGE体积小巧的模组。例如SIM800C的缩小升级版或者专门为M2M设计的SIM7070G支持Cat-M/NB-IoT但若需语音则需另选。模组需内置TCP/IP协议栈以减轻MCU负担。关键参数封装尺寸最好是LGA、工作电压范围、功耗尤其是睡眠电流应低于1mA。主控MCU选择一款具有丰富外设和超低功耗特性的ARM Cortex-M4/M33内核MCU。STM32L4R5或STM32U5系列是强力候选。它们不仅功耗极低STOP2模式电流低至几微安而且集成USB OTG、多个LPUART、I2S音频接口正好满足我们连接电脑、控制蓝牙音频、与模组通信的需求。需要至少256KB Flash和64KB RAM以运行轻量级RTOS如FreeRTOS和协议栈。无线连接子系统蓝牙芯片可以选择独立的蓝牙音频芯片如Actions的ATS2835集成蓝牙5.0、音频DSP、降噪或者更简单的蓝牙数传芯片如TI的CC2640R2F。但更优的方案是选择一颗集成蓝牙的MCU这样能进一步节省空间和功耗。例如Nordic nRF5340它双核设计高性能应用核和超低功耗网络核分开蓝牙5.3功耗控制非常出色完全可以兼任主控和蓝牙功能。这需要我们重新评估架构或许可以采用“nRF5340 通信模组”的组合。电源管理子系统这是项目的“命门”。需要一颗高度集成的PMIC电源管理集成电路。它需要能从单节锂电3.0V-4.2V产生多路电源例如1.8V/2.8V给通信模组SIM电压3.3V给MCU和外围芯片1.2V给MCU内核可能还需要一路升压给射频功放。同时它要集成电池充电管理从Type-C口取电、电量计、多个LDO和DC-DC。TI的BQ系列或ADI的MAX系列有大量针对穿戴设备和小型设备的PMIC方案。例如MAX77650非常紧凑但需要仔细核对每路电源的电流能力和时序要求。音频与接口子系统音频Codec如果采用“MCU蓝牙音频芯片”方案音频由蓝牙芯片处理。如果采用集成蓝牙的MCU如nRF5340它内部可能有简单的I2S接口和PDM麦克风接口但驱动耳机可能需要外接一个简单的音频放大器。为了极致简化我们甚至可以利用Type-C接口的音频配件模式将数字音频流通过USB送到电脑或外接的Type-C转耳机孔适配器来处理设备本体不集成模拟音频输出。这能省去Codec和耳机孔。Type-C接口控制器要实现充电、音频、数据三合一并且能正确识别插入的设备类型可能需要一颗简单的Type-C端口控制器如FUSB302来处理CC配置通道逻辑和PD供电协议通信。现在很多高性能MCU也集成了Type-C PD控制器需要仔细查阅数据手册。结构与天线设计PCB必须采用至少6层HDI高密度互连板甚至8层。需要充分利用盲孔、埋孔技术来走线。射频部分需要做阻抗控制通常50欧姆并严格分区RF区、数字区、电源区。天线这是最大的挑战之一。需要在有限空间内布置蜂窝主天线GSM 900/1800、蓝牙天线并考虑分集天线以改善性能。很可能需要采用柔性电路板FPC天线贴在设备内部侧面或背面或者使用芯片天线Chip Antenna。必须预留天线调试匹配网络π型网络的位置并计划进行严格的OTA空中下载测试。电池定制异形锂聚合物电池充分利用设备内部的不规则空间。需要与电池供应商紧密合作确定能量密度、放电倍率C-rate和安全性保护板。4. 硬件设计要点与实战考量画原理图和PCB是这个项目最“硬核”也最有趣的环节。以下是一些关键的设计要点和容易踩坑的地方。4.1 原理图设计围绕低功耗展开电源树Power Tree设计这是低功耗设计的基石。必须绘制一张清晰的电源树图标明每一路电源的来源PMIC的哪个DCDC或LDO、电压、最大电流、以及供给哪些负载。关键原则是按需供电独立控制。例如蓝牙芯片和传感器在不工作时其供电引脚应能被MCU通过MOSFET完全关断做到零漏电。通信模组接口模组通常通过UART与MCU通信注意电平匹配通常是1.8V或2.8V。务必引出模组的所有关键信号电源键PWRKEY、复位RESET、状态指示NETLIGHT、音频输入输出MIC/MIC- SPK/SPK-如果用到。特别注意模组的射频天线接口ANT到天线馈点之间的走线必须尽可能短且严格按照模组手册要求的阻抗50Ω进行布线这段走线最好用微带线计算工具算好宽度。时钟电路MCU需要高速外部晶振如8MHz和低速外部晶振如32.768kHz。32.768kHz的晶振对低功耗模式STOP/RTC下的时钟精度至关重要其负载电容CL1 CL2必须根据晶振规格书和PCB寄生电容精确计算和选择否则可能导致起振困难或频率偏差。Type-C电路如果使用FUSB302这类控制器要正确连接CC1、CC2引脚并配置I2C接口与MCU通信。VBUS通路需要有过压过流保护器件。如果希望支持USB3.0以上的高速数据复杂度会指数级上升鉴于我们需求只是充电和全速/高速USB2.0数据可以暂不考虑。调试接口必须预留SWDSerial Wire Debug接口用于MCU编程和调试。考虑到体积可能只能用测试点pogo pin而不是连接器。4.2 PCB布局布线与毫米斗争堆叠Stack-up设计与PCB板厂工程师充分沟通。一个典型的6层HDI堆叠可能是Top信号/元件 - GND - Signal/Power - Power - Signal - Bottom信号/元件。射频部分正下方最好有完整的地平面作为参考。模块化布局将板子划分为几个清晰的功能区射频区通信模组、天线馈点、射频匹配网络、数字区MCU、内存、晶振、电源区PMIC、电感、电容、接口区Type-C连接器、ESD保护。区域之间用“壕沟”即禁止布线的空白区隔离必要时使用屏蔽罩。射频布局黄金法则最短路径天线馈点到模组ANT引脚的距离是“圣旨”必须最短。禁止在这段路径上打过孔。完整地平面射频走线正下方必须有完整的地平面为信号提供清晰的返回路径。远离干扰源射频走线要远离高速数字信号线如时钟、USB数据线、电源线和电感。平行走线是禁忌。匹配网络布局π型匹配网络的电容电感必须紧靠天线馈点放置布局要紧凑、对称。电源布线电源走线要宽以满足电流需求。DC-DC开关电源的电感、输入输出电容必须紧靠芯片引脚放置回路面积最小化以减少噪声和辐射。散热考虑通信模组在发射信号时尤其是最大功率时会发热。需要在PCB底层对应位置铺设大面积铜皮并通过过孔连接到顶层帮助散热。如果空间允许可以在结构上考虑使用导热硅胶垫将热量传导到金属外壳或框架上。踩坑实录天线调试的“玄学”在我之前的一个类似项目中GSM天线性能始终不达标。原理图、PCB布局看起来都没问题。最后花了大量时间用矢量网络分析仪VNA一点点调试发现问题出在两个地方一是天线附近的塑料外壳材质含有某些添加剂对信号有吸收二是电池尤其是金属封装部分距离天线太近形成了耦合改变了天线的谐振频率。教训天线设计必须和结构设计、电池摆放同步进行。在打第一版样机前最好能用3D电磁仿真软件如HFSS对包含外壳和电池的完整模型进行仿真。预留的匹配网络元件值不要焊死用0欧姆电阻或电容/电感的焊盘组合方便调试时更换。5. 软件/固件架构与低功耗策略硬件是骨架软件是灵魂。在这个项目中软件的核心使命就一个省电。5.1 操作系统与驱动层RTOS选择对于MCU一个轻量级的实时操作系统RTOS是必要的它可以帮助我们管理任务、定时器和事件。FreeRTOS或Zephyr RTOS都是优秀的选择。Zephyr尤其值得关注它对低功耗的支持非常系统化提供了完整的电源管理框架Power Management, PM可以方便地定义设备的各种电源状态。驱动开发通信模组驱动实现一个稳定的AT命令解析器。不仅要处理发送命令和接收响应更要实现异步事件处理如来电、新短信、网络状态变化这些通常通过模组的URCUnsolicited Result Code上报。蓝牙协议栈如果使用Nordic nRF系列其配套的nRF Connect SDK提供了完整的蓝牙协议栈SoftDevice我们只需关注应用层开发。需要实现HFP免提协议用于蓝牙通话SPP串口协议或GATT通用属性协议用于数据传输。USB协议栈实现USB CDC通信设备类用于模拟串口AT命令调试和ECM以太网控制模型或RNDIS远程网络驱动接口规范用于网络共享。同时实现USB Audio Class用于音频输出如果采用USB音频方案。5.2 应用逻辑与功耗状态机整个设备的软件应该围绕一个清晰的功耗状态机来设计。我们可以定义几个状态深度睡眠状态MCU进入STOP或STANDBY模式仅RTC运行蓝牙和通信模组断电。电流目标 50μA。可由定时器如每10分钟或外部中断如按键唤醒触发退出。监听状态MCU低速运行蓝牙保持低功耗广播或连接通信模组处于最长的DRX周期如2.56秒监听寻呼。电流目标2-5mA。活跃状态通话中、数据传输中、用户操作中。所有模块全速运行。电流可能高达200mA以上。状态切换的策略至关重要。例如在无任何操作时设备应尽快从“监听状态”进入“深度睡眠状态”。当蓝牙耳机连接后设备可能需要维持在“监听状态”以快速响应来电。软件中需要精心设计无锁队列和事件标志让低优先级任务如日志记录不会阻塞高优先级任务如接听电话的执行从而影响进入睡眠的时机。5.3 网络共享与协议栈实现为电脑提供移动上网本质上是让我们的设备成为一个“路由器”。实现方式有两种模组内置协议栈许多现代通信模组如4G Cat.1模组内部已经集成了完整的TCP/IP协议栈甚至支持PPP和NAT。MCU只需通过AT命令激活模组的“拨号上网”功能和“USB网络共享”功能即可。这是最简单的方式。MCU实现协议栈如果模组只提供纯数据通道如发送原始PPP帧则需要MCU运行一个轻量级的TCP/IP协议栈如lwIP并实现PPP拨号、NAT转换。这需要更多的MCU资源RAM和CPU但控制更灵活。对于PDA的连接如果PDA支持蓝牙DUN拨号网络那么通过蓝牙共享网络是最佳选择。如果不支持则可能需要通过USB连接并让设备在USB上模拟成一个串口CDC ACMPDA端通过串口拨号上网。这需要为古老的PDA系统如Windows Mobile准备驱动程序是个不小的挑战。6. 测试验证、问题排查与未来演进硬件打样回来软件烧录进去真正的挑战才刚刚开始。6.1 分阶段测试清单硬件基础测试电源测试上电后用万用表和示波器测量每一路电源的电压、纹波。确保上电/下电时序符合芯片要求。时钟测试用示波器测量主晶振和RTC晶振的波形、频率和幅度。接口测试连接Type-C线测试充电是否正常电脑是否能识别USB设备。通信功能测试AT命令测试通过USB或UART转接板发送基本的AT命令AT ATCSQ等检查模组响应。网络注册与通话插入SIM卡测试能否成功注册到网络显示信号强度拨打10086等测试号码测试通话音频。短信测试收发短信。蓝牙功能测试被搜索与配对测试手机能否搜索并配对设备。音频连接测试配对蓝牙耳机后通话音频是否能正确路由到耳机。数据传输测试通过蓝牙发送文件如通讯录vCard。功耗测试静态电流在深度睡眠状态下使用高精度电源或万用表微安档串联测量整机电流。这是验证低功耗设计成败的关键。各状态电流分别测试待机、蓝牙连接、通话、数据下载等不同场景下的平均电流和峰值电流。续航估算根据电池容量如1000mAh和各状态电流及时间占比估算实际待机和通话时间。可靠性测试温升测试在高温环境下如55°C进行长时间通话或数据传输用热像仪检查芯片表面温度。跌落测试参照相关标准如1米高度六面三边各跌落一次测试后检查功能是否正常。6.2 常见问题与排查技巧以下是一些我们预见到可能会遇到的“坑”及其排查思路问题现象可能原因排查思路与解决方法上电不启动无任何反应1. 电源短路或断路2. 启动电压不足3. 复位电路问题4. 晶振未起振1. 检查电源路径上的电感、电容是否焊接短路。2. 测量电池电压及PMIC各路输出。3. 检查复位引脚电平手动触发复位试试。4. 用示波器探头高阻测量晶振引脚注意探头电容可能影响起振可尝试更换负载电容。通信模组无法注册网络1. SIM卡接触不良或未识别2. 天线阻抗严重失配3. 射频走线或匹配电路问题4. APN设置错误数据业务1. 检查SIM卡座焊接测量SIM卡各引脚电压。2. 使用VNA测量天线端口的回波损耗S11在900MHz/1800MHz频点是否小于-10dB。3. 检查天线馈线是否断裂匹配网络的电容电感值是否正确。4. 发送ATCGDCONT命令正确设置APN。蓝牙连接不稳定或距离短1. 蓝牙天线性能差2. 附近有强干扰源如GSM射频3. 电源纹波大影响射频性能1. 优化蓝牙天线布局和匹配。2. 在蓝牙工作时让GSM模组进入空闲模式减少同时发射的概率。3. 检查为蓝牙芯片供电的LDO输出纹波增加滤波电容。待机电流远高于预期1mA1. 有GPIO引脚漏电2. 外设芯片未彻底断电3. 软件未正确进入低功耗模式1. 在睡眠前将所有未使用的GPIO配置为模拟输入或输出低并检查外部上拉/下拉。2. 使用热像仪或用手触摸查找在睡眠状态下发热的芯片检查其使能引脚。3. 单步调试检查进入睡眠前各外设时钟是否已关闭唤醒源配置是否正确。USB连接电脑无法识别1. USB数据线问题仅充电线2. USB D/D-线接反或短路3. 软件未正确初始化USB协议栈1. 更换确认支持数据的USB线。2. 测量D/D-对地电阻检查是否短路。3. 使用USB协议分析仪如Beagle USB抓取通信过程查看枚举阶段是否成功。6.3 项目演进思考这个“微型移动终端”虚拟项目如果沿着这个思路走下去还有很多可以探索和扩展的方向技术演进将2G模组升级为4G Cat.1或5G RedCap模组支持更高速率和更低延迟。主控MCU可以升级为集成NPU神经网络处理单元的型号为边缘AI应用如关键词唤醒、简单语音命令留出可能。形态演进可以设计成可穿戴式如智能戒指、项链吊坠通过骨传导或微型扬声器实现私密通话。也可以做成模块化成为其他设备的“通信背夹”。生态扩展为其开发一个极简的手机伴侣App实现通讯录同步、短信管理、查找设备等功能。甚至可以通过蓝牙广播其状态与智能家居设备联动例如到家自动关闭安防模式。这个项目最大的价值不在于最终是否做出一个完美的实物而在于在整个过程中我们对系统级设计、跨领域协作、极限约束下的权衡有了更深的体会。每一个参数的取舍每一毫米空间的争夺每一微安电流的节省都是工程师精神的体现。欢迎更多有兴趣的朋友加入讨论提出你们的大胆想法和具体方案我们一起把这个虚拟项目“盘活”让它成为一次精彩的技术之旅。