标签: 电子产品开发 2026-09-06
一个电子产品能够完成预期功能,通常并不是某一块电路、某一颗芯片或者一段程序单独作用的结果。
对于包含传感器、MCU、通信接口、控制功能或数据采集功能的设备,从一个产品需求真正形成可以运行的样机,往往要经过需求分析、系统架构设计、器件选型、原理图设计、PCB Layout、嵌入式软件开发、PCBA打样、板级调试以及整机联调等多个工程环节。
如果项目还涉及数据展示、设备配置或远程管理,还可能继续连接上位机、APP或Web管理系统。
这些环节并不是彼此独立的。
例如,产品提出“低功耗运行”的要求,会同时影响主控选型、电源设计、传感器工作模式、无线通信策略以及嵌入式程序的休眠与唤醒机制;一个“每秒采集多路数据”的需求,则可能同时影响ADC配置、MCU性能、内存容量、通信带宽以及数据缓存方式。
因此,电子产品研发中的一个重要问题,并不是简单判断“硬件做什么、软件做什么”,而是如何让不同工程环节在同一套产品需求和接口约束下协同工作。
电子产品研发中的“软硬件协同”,并不只是指一个项目同时安排硬件工程师和嵌入式软件工程师。
更准确地说,它是指在产品方案阶段就共同确定系统资源、硬件接口、数据关系、运行时序、电源策略和异常处理边界,使硬件设计能够支持软件目标,软件方案也建立在真实的硬件能力之上。
从研发分工来看,可以大致分为三个层面。
硬件部分通常包括:
系统硬件架构设计;
MCU、处理器及外围器件选型;
电源设计;
传感器及信号调理电路;
通信接口设计;
原理图设计;
PCB Layout;
PCB及PCBA工程实现;
板级测试与硬件调试。
硬件的核心任务,是把产品功能转化成能够真实工作的电子电路和板级系统。
嵌入式软件运行在设备内部,常见内容包括:
MCU及外设初始化;
BSP和设备驱动;
传感器数据采集;
设备控制逻辑;
通信协议;
参数存储;
状态管理;
故障处理;
看门狗机制;
低功耗控制;
根据项目需要实现Bootloader、OTA、RTOS任务管理等功能。
它解决的是“硬件已经具备这些资源之后,设备应该如何工作”的问题。
真正的协同发生在两者之间。
例如:
硬件选择了一颗MCU,不仅需要看处理性能,还需要确认UART、SPI、I²C、CAN、ADC、PWM、定时器、DMA、Flash和RAM资源是否满足软件需求。
软件准备实现远程升级,则不能只开发一个升级功能,还需要提前考虑程序存储空间、Bootloader结构、通信可靠性、断电保护以及升级失败后的恢复机制。
因此:
软硬件协同的核心,是在设计阶段让硬件、嵌入式软件以及后续应用系统共享同一套接口、资源和产品约束,而不是等硬件完成后再让软件被动适配。

不同产品的复杂程度差异很大,并不存在所有项目都必须执行的固定模板。
但对于一个需要重新研发的电子设备,通常可以按照下面的逻辑逐步推进:
产品需求 → 技术可行性分析 → 系统架构 → 器件选型 → 原理图设计 → PCB Layout → 嵌入式开发 → PCB/PCBA → 板级调试 → 软硬件联调 → 样机验证 → 设计迭代
其中最容易被低估的是前面的需求分析和系统架构。
很多项目在早期看起来只是一个简单需求,例如:
“做一个采集温度并通过无线网络上传的设备。”
真正进入研发以后,需要继续明确:
测量什么温度;
使用什么类型的传感器;
精度要求是多少;
多长时间采样一次;
是否需要本地保存;
通信距离是多少;
使用BLE、Wi-Fi还是其他方式;
是否使用电池;
需要工作多长时间;
是否处于工业环境;
PCB尺寸是否受结构限制;
数据上传以后由什么系统接收;
设备断网以后数据如何处理。
这些条件最终都会转换成硬件和软件约束。
所以,在电子产品开发过程中,直接跳过系统分析进入原理图或者PCB设计,往往会增加后期修改的概率。
产品需求只有转换成工程参数,才能真正进入开发。
例如下面这些看似属于“产品层”的要求,会同时影响硬件和软件。
| 产品需求 | 主要硬件影响 | 主要嵌入式影响 |
|---|---|---|
| 采样精度 | ADC、传感器、模拟前端 | 校准、数字滤波 |
| 采样频率 | ADC、总线、MCU性能 | 定时、缓存、任务调度 |
| 无线通信 | 无线模组、天线、电源 | 协议、连接与重连 |
| 低功耗 | 电源及低功耗器件 | 睡眠与唤醒机制 |
| 本地存储 | Flash、EEPROM、SD等 | 数据组织和读写管理 |
| OTA升级 | Flash容量及启动配置 | Bootloader、升级与恢复 |
| RS485/CAN | 收发器、保护、隔离 | 通信协议、超时与异常处理 |
| 长时间运行 | 电源、器件可靠性 | 看门狗、错误恢复、状态管理 |
例如一个电池供电的BLE传感器,如果只在硬件阶段考虑“选一颗功耗较低的芯片”,仍然不够。
传感器采样频率、BLE广播和连接周期、MCU休眠时间、外设是否能够关闭以及设备多久上传一次数据,都会直接影响最终续航。
因此,需求分析阶段实际上就是第一次软硬件协同。
主控芯片通常是电子产品硬件架构的核心之一。
但MCU选型不是单纯比较主频高低。
一般还需要结合产品功能评估:
GPIO数量;
UART数量;
SPI接口;
I²C接口;
CAN接口;
ADC/DAC资源;
PWM资源;
定时器;
DMA;
Flash容量;
RAM容量;
工作电压;
功耗;
工作温度;
封装尺寸;
外围器件兼容性;
开发工具和软件生态;
器件供货情况。
例如,一个需要多路传感器、高频数据采集和通信的设备,即使CPU计算性能并不高,也可能需要较多DMA、ADC、定时器和通信接口资源。
反过来,如果设备的软件包含图形界面、复杂协议栈、大容量数据缓存或者多个并发任务,那么Flash和RAM容量可能比GPIO数量更容易成为限制。
因此,器件选型实际上需要从完整系统需求出发,而不是只从硬件原理图角度判断。

传统上容易把研发过程理解为:
先把硬件做完,再交给软件工程师开发程序。
对于简单产品,这种方式有时可以工作。
但设备复杂以后,很多软件需求实际上需要提前反映到硬件中。
例如:
某个GPIO究竟用于LED、继电器、传感器中断还是外设复位,需要提前确定。
而且还要明确:
上电默认状态;
高低电平有效关系;
是否需要上下拉;
是否影响设备启动。
多个SPI器件可能共享总线,但需要分别配置片选。
I²C设备则需要检查地址是否冲突。
传感器、通信模组、外部事件等可能需要中断处理,需要在硬件资源规划阶段确认。
BOOT引脚、SWD/JTAG接口、串口调试接口以及程序下载方式,都需要在PCB阶段预留。
如果软件需要日志记录、参数保存、离线数据缓存或OTA,可能需要增加外部Flash、EEPROM或其他存储器件。
这些问题如果等PCB打样完成以后才发现,很多情况下就不再是修改程序能够解决,而需要重新修改硬件。
通信协议是连接嵌入式设备与其他系统的重要接口。
例如设备可能需要连接:
另一个MCU;
上位机;
APP;
网关;
Web设备平台。
即使底层使用的是UART、RS485、CAN、BLE或者Ethernet,也仍然需要进一步定义应用层的数据规则。
常见内容包括:
帧头;
设备地址;
命令类型;
数据长度;
数据内容;
校验方式;
应答机制;
超时;
重发;
错误码;
协议版本。
如果设备端先完成开发,而应用软件到后期才开始确定协议,就容易出现数据结构频繁调整的问题。
尤其是一些需要长期维护的设备,协议还应该考虑一定程度的版本扩展能力。
因此:
通信协议不仅是软件问题,也是电子设备系统接口设计的一部分。
PCB和PCBA经常被混为一谈。
简单来说:
PCB 是已经完成电路图形和线路设计的印制电路板。
PCBA 是PCB完成元器件贴装、焊接和装配之后形成的电路板组件。
但在产品研发中,PCBA完成并不意味着研发结束。
第一版样板形成之后,通常还需要进行:
外观和焊接检查;
电源和短路检查;
分电源轨测试;
主控启动测试;
程序下载和调试接口验证;
外设驱动测试;
传感器测试;
通信接口测试;
整体功能测试;
长时间运行及异常场景测试。
如果测试发现问题,还需要判断问题究竟来自:
原理图;
PCB Layout;
元器件;
焊接;
驱动程序;
通信协议;
控制逻辑;
结构或外部环境。
所以对于研发型项目来说,PCB和PCBA更适合作为设计落地和样机验证的工程环节,而不是与前后研发过程割裂开的单纯加工步骤。
北京心玥科技在相关业务中也是按照这一逻辑理解PCB与PCBA:围绕电子产品整体研发需求完成工程实现,而不是将公司定位为单纯的PCB或PCBA加工厂。

工业电子设备往往比普通消费电子面临更多现场条件。
一个数据采集或者测试控制设备,可能同时连接:
模拟传感器;
数字传感器;
RS485设备;
CAN设备;
Ethernet网络;
控制输出;
上位机。
工程设计不能只考虑“接口能不能通”。
根据不同项目,还可能需要考虑:
输入保护;
隔离;
ESD;
浪涌;
电源波动;
总线终端匹配;
通信异常;
断线重连;
数据缓存;
掉电处理;
看门狗;
长时间连续运行。
例如一台数据采集设备,在实验室里短时间运行正常,并不等于放到实际现场以后就一定稳定。
当总线距离增加、节点数量增多、现场干扰变复杂之后,电路、PCB、固件以及通信机制都可能影响最终效果。
因此,工业数据采集、测试控制和工业通信设备尤其需要在系统阶段统一考虑硬件、固件和通信设计。
延伸阅读:《工业数据采集设备如何设计?从传感器、嵌入式到通信接口的系统分析》
不是。
不同电子设备的软件边界差异很大。
一些设备能够独立完成本地控制,不需要额外的软件系统。
但如果产品需要:
参数设置;
实时数据显示;
历史数据查询;
设备状态查看;
批量设备管理;
远程控制;
固件升级;
数据报表;
就可能需要继续开发上位机、APP或者Web管理系统。
例如:
工业测试设备可能需要上位机进行参数设置和数据显示;
BLE智能硬件可能需要APP完成设备连接和配置;
联网设备则可能通过Web系统完成状态管理。
在这类项目中,应用软件最好与嵌入式设备使用统一的数据和通信协议,而不是在硬件完全结束以后再重新定义。
对于北京心玥科技来说,上位机、APP和Web系统主要作为电子产品及硬件项目的配套开发能力,是否需要配置,应根据设备实际功能确定,并不是所有硬件项目的固定组成部分。
电子产品研发并不一定都从产品概念阶段开始。
现实项目可能处于不同状态。
客户只有功能目标和产品想法。
这种情况下通常需要首先完成:
需求分析 → 技术可行性 → 系统架构 → 器件选型。
可以进一步开展原理图、PCB及嵌入式开发。
可以根据已有资料进行PCB Layout和后续工程实现。
可以针对现有硬件开发或完善嵌入式程序。
可以根据现有设计和问题现象进行测试、调试和设计整改。
部分项目只需要PCB设计、固件开发、通信接口开发或者软硬件联调,同样可以根据明确边界开展工作。
因此,项目开始之前需要先确认现有资料和研发状态,而不是套用固定的完整流程。
返工不可能完全消除。
电子产品研发本身就是一个设计、验证和迭代过程。
但很多不必要的返工可以在前期通过规范接口和信息管理降低。
建议项目至少提前确定以下内容:
明确哪些属于必须功能,哪些属于可选功能。
确认各模块之间的关系。
包括MCU、关键外设以及主要接口资源。
统一记录:
引脚;
对应功能;
输入/输出;
默认电平;
有效电平。
不要只约定“串口通信”或者“RS485通信”,还需要确定具体数据格式。
分析各模块工作状态和峰值电流。
根据程序、数据、日志和升级需求提前规划。
硬件和软件联调过程中保持明确版本。
每次修改都能够追溯到对应问题。
这些资料本身并不复杂,但能够减少不同开发阶段之间的信息丢失。
北京心玥科技有限公司围绕电子产品研发、嵌入式软硬件开发、工业电子及数据采集、测试控制、智能硬件和IoT,以及PCB/PCBA工程实现等方向开展研发服务。
根据不同项目实际状态,研发工作可以从需求分析、技术方案、器件选型等前期阶段开始,也可以从已有原理图、已有硬件或者已有样机的基础上继续开展。
目前可覆盖的相关研发内容包括:
产品需求分析和技术方案;
MCU及核心器件选型;
原理图设计;
PCB Layout;
PCB/PCBA工程实现;
嵌入式固件开发;
UART、SPI、I²C等板级通信;
RS485、CAN、Ethernet等设备通信;
BLE、Wi-Fi等无线设备连接;
数据采集及测试控制;
样机上电与板级调试;
软硬件系统联调;
根据设备需求配套开发上位机、APP或Web管理系统。
不同项目的研发内容和交付边界并不相同。
项目具体交付内容可以根据合作范围确定,包括样机以及双方约定的设计文件、BOM、固件、通信协议或相关技术资料等,实际交付内容以双方项目约定为准,并不默认所有设计源文件和软件源码均包含在项目交付范围内。
对于电子产品研发而言,真正重要的不是项目中是否包含尽可能多的技术模块,而是从产品实际需求出发,把需要参与的硬件、电路、嵌入式程序、通信和应用软件之间的接口提前定义清楚。
这也是软硬件协同开发的实际价值所在。
根据项目复杂程度不同,通常可能涉及产品需求分析、技术方案、器件选型、原理图设计、PCB Layout、嵌入式软件、PCB及PCBA、板级调试、软硬件联调、样机验证和后续设计迭代。并非所有项目都需要完整经历全部环节。
可以,但双方最好在系统设计阶段提前确定GPIO、通信接口、存储、时序、电源以及通信协议等关键边界。项目越复杂,完全割裂开发越容易在后期产生接口和资源冲突。
PCB是系统设计的落地结果之一。产品功能、核心器件、电源架构、接口关系以及软件资源需求尚未明确时直接进入PCB设计,后续需求变化可能导致较大修改。
除处理性能之外,通常还需要综合考虑GPIO、UART、SPI、I²C、CAN、ADC、PWM、定时器、Flash、RAM、DMA、功耗、工作环境、封装以及器件供应等因素。
通常不能。研发阶段PCB完成并形成PCBA以后,还需要进行上电测试、接口验证、嵌入式程序调试、通信测试、功能测试以及样机验证。根据测试结果还可能继续修改设计。
PCB是完成线路设计和制造的印制电路板,PCBA是在PCB上完成元器件贴装、焊接及组装后形成的电路板组件。研发过程中通常需要PCBA才能进行真实硬件调试。
工业数据采集设备通常需要考虑更多现场工程条件,例如模拟信号、工业通信、隔离、接口保护、电磁干扰、数据缓存、异常恢复以及长时间连续运行等,因此更强调系统级软硬件协同。
不一定。如果设备能够独立完成所有功能,可以不开发额外应用软件。只有涉及参数配置、数据显示、设备管理、数据记录或远程控制等功能时,才需要根据项目情况配置上位机、APP或Web系统。
可以根据项目实际状态确定研发边界,例如从需求及方案阶段开始,也可以在已有原理图、已有PCB、已有硬件或已有样机基础上继续进行PCB、嵌入式开发、调试或系统联调等工作。