news 2026/9/30 1:04:33

嵌入式开发是否吃青春饭?技术分层与能力模型深度解析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
嵌入式开发是否吃青春饭?技术分层与能力模型深度解析

1. 嵌入式开发到底算不算吃青春饭

这个话题在技术社区里隔三差五就会被翻出来讨论一次。每次有人问“嵌入式是不是吃青春饭”,底下必然分成两派:一派说“35岁之后没人要”,另一派说“越老越吃香”。我在嵌入式这条线上摸爬滚打了十多年,从8位单片机裸机开发一路做到嵌入式Linux驱动、系统集成和边缘计算网关,带过团队也面过不少人。我的结论可能跟你想的不太一样:嵌入式开发本身不吃青春饭,但“只会点灯调串口”的嵌入式开发,确实吃青春饭。

先把话说清楚,这里讨论的“嵌入式开发”是一个很大的范畴。从最底层的芯片寄存器操作,到RTOS任务调度,再到嵌入式Linux的BSP、驱动、应用层Qt界面,甚至到最近几年火起来的边缘AI推理部署,全都算嵌入式。不同层次的岗位,对年龄的敏感度完全不同。你如果做的是那种照着芯片手册配寄存器、拿现成SDK改改参数就能出货的活,那确实容易被更年轻、要价更低的人替代。但如果你能独立搞定一套Linux BSP、能定位内核崩溃、能优化系统启动时间、能设计跨平台的驱动框架,那你的经验就是护城河,年龄反而成了加分项。

我见过太多人把“嵌入式”等同于“单片机”,然后拿单片机的薪资天花板去推断整个行业,这本身就是一种认知偏差。嵌入式Linux驱动开发、系统级性能调优、异构多核通信、功能安全认证这些方向,对工程经验的依赖极强,一个踩过无数硬件坑、处理过现场疑难杂症的老手,跟一个刚毕业只会跑Demo的新手,产出差距可能是十倍以上。这种差距不是靠加班能追平的,它来自对硬件行为的直觉、对时序的敏感、对异常场景的预判,这些东西只能靠年头堆出来。

所以这篇文章我不打算给你灌鸡汤,也不打算贩卖焦虑。我想从技术分层、能力模型、行业需求、个人成长路径几个角度,把“嵌入式到底吃不吃青春饭”这件事拆开揉碎讲清楚。无论你是刚入行的新手,还是干了几年正在迷茫的老兵,都能从中找到对自己有用的判断依据和行动方向。

2. 嵌入式开发的技术分层与年龄敏感度

2.1 从裸机到Linux:不同层级的经验权重

嵌入式开发大致可以分成几个层级,每个层级对“经验”的定价方式完全不同。我把它分成四层来看:

第一层是裸机与RTOS应用开发。这一层主要工作是基于MCU写业务逻辑,用GPIO、UART、I2C、SPI、ADC这些外设,跑FreeRTOS或RT-Thread之类的实时系统。这一层的门槛相对低,培训班几个月就能输出能干活的人。企业对这一层的需求量大,但替代性也强。年龄敏感度最高,因为核心能力是“熟练度”,而熟练度是随时间线性增长然后很快见顶的。

第二层是嵌入式Linux应用开发。这一层要懂文件IO、多线程、进程间通信、网络编程、Qt界面开发。相比裸机,这一层更接近传统软件工程,但多了交叉编译、资源受限、硬件交互这些约束。经验的价值开始体现,比如你知道怎么在内存只有128MB的板子上把Qt界面跑流畅,知道怎么设计环形缓冲区避免丢帧。这一层年龄敏感度中等,35岁左右如果还在纯写应用层业务代码,确实会面临压力,但如果你能往系统层靠,情况就不同。

第三层是嵌入式Linux驱动与BSP开发。这一层要跟内核打交道,写字符设备、平台设备、I2C/SPI子系统驱动,改设备树,移植U-Boot和内核,处理启动流程、电源管理、时钟树。这一层的坑极多,而且很多坑只有特定硬件组合才会触发。一个做过十几款不同SoC的驱动工程师,看到原理图就能预判哪里会出问题。这一层年龄敏感度低,因为经验直接等于排错效率。

第四层是系统架构与异构计算。这一层涉及多核通信、FPGA与SoC协同、边缘AI推理部署、功能安全、系统级功耗与性能优化。这一层需要跨领域知识,既要懂硬件又要懂软件,还要懂算法部署。能做到这一层的人,市场上始终稀缺,年龄基本不是问题,反而是信任背书。

注意:这里说的“年龄敏感度低”不等于“躺着就能干到退休”。它指的是你的经验积累能形成壁垒,但前提是你真的在积累,而不是把一年经验重复用了十年。

2.2 为什么驱动和系统层更抗年龄冲击

驱动开发和系统层工作有一个特点:问题空间是开放的,而且高度依赖上下文。应用层开发很多时候是在既定框架里填业务逻辑,框架本身帮你屏蔽了复杂性。但驱动层不一样,你面对的是硬件行为、内核机制、并发时序、电源状态切换这些交织在一起的东西。一个I2C通信失败,可能是上拉电阻不对、可能是时钟频率超了、可能是从设备时序不满足、可能是内核驱动probe顺序有问题、也可能是电源域没打开。这种问题没有标准答案,只能靠经验缩小排查范围。

我举个真实例子。之前有个项目,一块定制板子上SPI屏幕偶尔花屏,概率大概百分之几。年轻同事查了两周,换了屏幕、改了驱动、调了时钟,都没根治。后来一位干了十几年的老工程师过来,看了一眼原理图,问了一句“SPI时钟线和屏幕排线是不是走在一起了”,然后建议在时钟线上串一个22欧姆电阻。问题解决。原因就是SPI时钟频率较高时,走线耦合导致屏幕初始化偶发失败。这种判断不是从手册里能直接读出来的,它来自对信号完整性的直觉和过往踩坑的记忆。

这就是为什么驱动和系统层更抗年龄冲击。你的价值不在于写代码的速度,而在于定位问题的速度和准确度。而这种能力,恰恰是随着年龄增长而增长的。

2.3 应用层开发的年龄焦虑从何而来

应用层开发的焦虑主要来自两个方面。一是技术栈更新快,今天用Qt,明天可能用LVGL,后天可能上Flutter embedded,框架变了,部分经验会贬值。二是业务逻辑的可替代性,很多嵌入式应用层工作本质上是在调API和拼界面,这部分能力跟互联网前端有重叠,而互联网行业对年龄的歧视更明显,这种情绪会传导过来。

但我想说的是,嵌入式应用层跟纯互联网应用有一个根本区别:你始终要面对资源约束和硬件交互。在PC上写界面,内存随便用,CPU随便跑。在嵌入式设备上,你可能只有64MB内存,CPU主频800MHz,还要同时跑通信、采集、显示、存储。这种约束下的应用开发,经验价值远高于普通业务开发。你知道怎么用双缓冲加局部刷新降低CPU占用,知道怎么设计线程优先级避免界面卡顿,知道怎么在Flash寿命有限的情况下做日志轮转。这些东西,培训班不教,网上搜不到完整答案,只能靠项目喂出来。

所以应用层开发不是不能做,而是不能只做“调API”那一层。你要往深里走,走到能理解系统行为、能优化资源使用、能跟驱动层对话的程度。到了那个程度,年龄就不再是负担。

3. 市场真实需求与薪资分布

3.1 招聘市场对嵌入式岗位的年龄要求

我翻了不少招聘平台的数据,也跟做HR的朋友聊过。嵌入式岗位的年龄要求大致是这样的:

岗位方向常见年龄要求经验要求薪资区间(一线城市)
单片机裸机开发20-30岁1-3年8K-15K
RTOS应用开发22-32岁2-5年12K-20K
嵌入式Linux应用25-35岁3-6年15K-25K
嵌入式Linux驱动28-40岁5-10年20K-35K
系统架构/异构计算30岁以上8年以上30K-60K+

这张表是大概的轮廓,具体数字因城市、行业、公司规模浮动很大。但趋势很明显:越往底层走,年龄上限越高,薪资天花板也越高。驱动和系统架构岗位,很多公司明确写“经验丰富者年龄可放宽”,甚至有些岗位直接要求“8年以上驱动开发经验”。这在互联网行业几乎不可想象。

3.2 哪些行业在抢嵌入式老手

嵌入式老手最抢手的行业,往往不是消费电子。消费电子迭代快、利润薄、对成本极度敏感,容易倾向用年轻人。真正愿意为经验付费的,是那些出错代价高、认证周期长、硬件形态复杂的领域。

工业控制与自动化是一个典型。PLC、运动控制器、工业网关这些设备,一旦出问题可能导致产线停摆,客户对稳定性要求极高。这类项目周期长,现场环境复杂,需要工程师有丰富的排错经验。我认识一个做运动控制的朋友,四十多岁,专门帮客户解决伺服电机抖动和同步问题,按天收费,档期排得很满。

汽车电子与车载系统也是。虽然这两年行业有波动,但功能安全、AUTOSAR、车载以太网这些方向,对经验要求极高。一个懂ISO 26262流程、做过量产项目的嵌入式工程师,市场上始终稀缺。这类岗位不是年轻人能快速顶上的,因为功能安全认证需要完整的项目经历背书。

医疗设备、航空航天、能源电力这些领域同样如此。这些行业的共同特点是:硬件定制化程度高、软件与硬件耦合紧、认证和测试流程长、现场问题复现困难。这些特点决定了企业更愿意用有经验的人,因为试错成本太高。

3.3 薪资增长曲线与年龄的关系

嵌入式开发的薪资增长曲线跟互联网不太一样。互联网可能是前五年快速上涨,然后趋于平缓甚至下滑。嵌入式更像是阶梯式上涨:前三年打基础,薪资增长一般;三到五年如果突破到驱动或系统层,会有一个明显跳升;五到十年如果能在某个细分领域形成专长,薪资还能继续往上走;十年以上如果做到架构或专家岗,薪资天花板很高,但岗位数量也少。

关键节点在第三到第五年。这个阶段如果你还在做跟第一年差不多的事情,那年龄焦虑就会开始出现。但如果你主动往底层走、往系统层走、往细分领域走,那你的经验就开始产生复利。我自己的体会是,工作前三年在学“怎么做”,第三到第八年在学“为什么这么做”和“出问题怎么办”,第八年之后在学“怎么让别人也能做对”。每个阶段的积累方式不同,但都指向同一个方向:从操作者变成问题解决者,再变成系统设计者。

4. 能力模型:什么在贬值,什么在增值

4.1 容易贬值的技能特征

有几类技能在嵌入式领域贬值速度比较快。第一种是特定工具链的操作技能。比如某个厂商的IDE怎么配置、某个烧录工具怎么用、某个配置软件怎么点。这些技能换一家公司可能就作废了。第二种是特定芯片的寄存器操作。你花很多时间记住某款MCU的寄存器地址和位定义,换一款芯片就要重新来。第三种是纯业务逻辑的堆砌。比如照着需求文档写if-else,这种工作可替代性太强。

这些技能不是不重要,而是不能作为核心竞争力。它们更像是“入场券”,没有不行,但只有这些也不行。如果你发现自己每天的工作内容主要是这些,那就要警惕了。

4.2 持续增值的能力内核

真正增值的能力,我总结为四个字:抽象与迁移。具体来说:

第一,对硬件行为的理解能力。你知道一个GPIO从写寄存器到引脚真正翻转,中间经过了多少个时钟周期、多少级缓冲、多少种可能的延迟来源。这种理解让你在调试时序问题时能快速定位。它不依赖具体芯片,而是对数字电路和总线行为的通用认知。

第二,对系统行为的建模能力。你能在脑子里构建出整个系统的运行时模型:哪些任务在跑、它们怎么通信、资源怎么分配、瓶颈可能在哪里。这种能力让你在优化性能或排查死机时有的放矢。它来自大量项目的积累,但一旦形成,就跨平台通用。

第三,对问题空间的裁剪能力。面对一个模糊的故障现象,你能快速列出可能原因,并按概率排序,然后设计最小验证步骤逐个排除。这种能力是驱动工程师的核心竞争力,也是年龄带来的最大红利。

第四,跨层沟通能力。你能跟硬件工程师聊原理图和时序,能跟应用工程师聊接口和性能,能跟产品经理聊需求和取舍。这种能力让你成为团队里的连接点,价值远超单纯写代码。

这四种能力,没有一个是靠短期培训能获得的,也没有一个会因为年龄增长而贬值。它们只会随着项目经历的增加而增强。

4.3 从“写代码”到“解决问题”的转变

我观察到一个现象:很多嵌入式工程师工作几年后陷入瓶颈,根本原因是没有完成从“写代码的人”到“解决问题的人”的转变。写代码只是手段,解决问题才是目的。客户不关心你用了什么框架、什么设计模式,他们关心的是设备能不能稳定运行、功能能不能按时交付、出了问题能不能快速解决。

完成这个转变的标志是:你开始主动去理解需求背后的真实场景,开始预判哪些地方可能出问题,开始为未来的维护和扩展留余地。你写的代码可能变少了,但你做的决策变多了。你不再追求“代码写得漂亮”,而是追求“系统跑得稳定”。这种转变,才是对抗年龄焦虑的根本。

5. 不同阶段的成长路径与避坑指南

5.1 入行前三年:打地基,别急着追新

前三年最重要的是把基础打牢。什么叫基础?C语言要写到能理解指针和内存布局的程度,数据结构要能自己实现链表和环形缓冲区,计算机组成原理要能理解中断和DMA,操作系统要能理解进程调度和内存管理。这些听起来像大学课程,但真正在工作中用起来,你会发现大部分人的基础是不过关的。

我面试过很多人,简历上写“精通C语言”,结果让他写一个内存拷贝函数,不考虑重叠的情况;让他解释volatile的作用,只说“防止编译器优化”,说不出具体场景。这种基础不牢的人,后面走不远。

这个阶段还要养成一个习惯:遇到问题先查手册和源码,再问人。芯片手册、内核源码、协议规范,这些是第一手资料。很多人习惯遇到问题就搜博客、问同事,短期看效率高,长期看能力增长慢。因为你在获取答案,而不是在训练自己找答案的能力。

实操心得:前三年尽量多接触不同硬件平台。不要在一款芯片上待太久。每换一个平台,你都会被迫重新理解一遍启动流程、时钟树、中断控制器、外设驱动模型。这种被迫的重新理解,就是抽象能力的来源。

5.2 三到五年:选方向,往深里扎

三到五年是一个分水岭。这个时候你已经能独立完成一些模块,但还没形成专长。接下来往哪个方向走,决定了你后面的路。

如果你喜欢跟硬件打交道,喜欢看波形、调时序、抠寄存器,那就往驱动和BSP方向走。这个方向需要你补的课包括:Linux设备模型、设备树、内核启动流程、电源管理、常用子系统(I2C、SPI、USB、PCIe、网络)。学习方式最好是拿一块开发板,从零开始移植U-Boot和内核,然后自己写几个外设驱动。

如果你喜欢跟业务和系统打交道,喜欢设计架构、优化性能、做技术选型,那就往系统集成和架构方向走。这个方向需要你补的课包括:系统性能分析、内存管理、多线程与并发、异构通信、系统安全、功能安全。学习方式是多参与完整项目,从需求到量产全流程跟下来。

如果你对算法和AI感兴趣,那就往边缘计算和AI部署方向走。这个方向需要你补的课包括:模型量化与剪枝、推理框架(如TFLite、ONNX Runtime)、异构计算(CPU+GPU+NPU)、算子优化。这个方向目前人才缺口大,但要求也高,需要同时懂嵌入式和算法。

5.3 五到十年:建体系,输出方法论

五到十年,你已经是一个有经验的工程师了。这个时候如果还在拼“谁写代码快”,那就走偏了。这个阶段的核心任务是建立自己的知识体系,并开始输出方法论。

什么叫知识体系?就是你对嵌入式系统的理解不再是零散的知识点,而是一个相互关联的网络。你知道一个问题的出现可能涉及硬件、驱动、内核、应用多个层面,你知道每个层面的排查方法和工具,你知道哪些问题是常见的、哪些是罕见的。这种体系化的认知,让你在面对新问题时能快速定位。

输出方法论的方式有很多:写技术博客、做内部培训、带新人、参与开源项目、在技术社区回答问题。输出的过程也是梳理和深化的过程。我自己的很多认知,都是在写文章和带人的过程中才真正清晰的。

这个阶段还要注意避免技术舒适区。不要一直做自己熟悉的事情,要主动接触新领域。比如你一直做ARM Linux,可以试试RISC-V;一直做消费电子,可以试试工业或汽车;一直做单核,可以试试异构多核。每次跨界都会带来新的认知增量。

5.4 十年以上:做选择,找定位

十年以上,技术能力已经不是主要问题,关键是找到自己的生态位。你可以走技术专家路线,在某个细分领域做到顶尖,靠技术咨询或高端项目生存。也可以走技术管理路线,带团队、管项目、做规划。还可以走产品路线,把技术能力转化为产品定义能力。

无论走哪条路,核心都是把你的经验转化为可复用的价值。技术专家的价值在于能解决别人解决不了的问题;技术管理的价值在于能让团队高效运转;产品路线的价值在于能定义出有竞争力的产品。这三条路没有高低之分,只有适合不适合。

我自己的选择是技术专家加部分管理。我发现自己最大的乐趣还是解决技术难题,同时带几个年轻人一起做项目,看着他们成长。这种组合让我既有成就感,又不至于太累。

6. 常见问题与排查技巧实录

6.1 嵌入式学习中的典型困惑

问题一:要不要报培训班?

我的看法是:培训班可以帮你快速入门,但不要指望培训班能让你成为高手。培训班教的是“怎么做”,但“为什么这么做”和“出问题怎么办”需要在实际项目中积累。如果你是完全零基础,报一个靠谱的培训班入门是可以的,但之后一定要找实际项目练手,哪怕是自己买开发板做小项目。

问题二:学Linux驱动要不要先学内核源码?

不需要一上来就啃源码。正确的顺序是:先学会写一个最简单的字符设备驱动,跑通加载和卸载;然后学设备树和平台设备;然后学一个具体子系统(比如I2C或SPI);然后在调试中遇到问题再去查源码。源码是字典,不是教材。你不需要背字典,但你需要知道遇到问题时怎么查字典。

问题三:Qt还值得学吗?

取决于你的目标行业。工业控制、医疗设备、车载仪表这些领域,Qt仍然大量在用,而且短期内不会被替代。但如果你做的是消费电子,可能LVGL或其他轻量级GUI更常见。学Qt的重点不是学控件怎么用,而是学在资源受限环境下如何设计流畅的界面架构。这个能力比具体框架更重要。

问题四:嵌入式AI值不值得转?

如果你已经有嵌入式基础,想往AI方向靠,那值得。但不要丢掉嵌入式本身,而是做“嵌入式+AI”的复合型人才。纯AI算法岗竞争激烈,但懂嵌入式部署的人少得多。模型量化、算子优化、异构调度这些方向,既需要AI知识,也需要嵌入式功底,门槛高但回报也高。

6.2 实际项目中的排查思路

嵌入式调试最忌讳的就是“猜”。我见过太多人遇到问题就凭感觉改代码,改了半天问题还在。正确的做法是先观察,再假设,再验证。

观察就是收集信息:串口日志、内核打印、示波器波形、逻辑分析仪抓包、CPU占用率、内存使用情况。信息越全,假设越准。假设就是根据观察到的现象,列出可能的原因,并按概率排序。验证就是设计最小实验,逐个排除。

我举个实际例子。有一次一个设备偶尔启动失败,概率大概百分之一。观察到的现象是串口没有任何输出。假设可能是:电源时序问题、复位电路问题、晶振起振问题、Flash读取问题、DDR初始化问题。验证步骤:先测电源和复位引脚波形,正常;再测晶振,发现起振时间偶尔偏慢;换晶振负载电容,问题解决。整个过程不到半天。如果靠猜,可能一周都搞不定。

注意:调试工具要提前准备好。示波器、逻辑分析仪、万用表、串口工具、JTAG调试器,这些是嵌入式的吃饭家伙。不要等到出了问题才去找工具。

6.3 避坑清单

常见坑表现规避方法
电源域未使能外设寄存器读写异常检查时钟和电源门控寄存器
引脚复用冲突功能不正常或完全无响应核对设备树和引脚复用表
中断优先级配置错误系统卡死或响应异常理解中断控制器优先级分组
内存越界随机崩溃或数据异常使用内存检测工具,加保护字节
栈溢出任务切换时崩溃计算最坏栈深度,留足余量
缓存一致性问题DMA数据不一致理解cache维护操作,正确使用屏障
时钟频率超规格通信不稳定核对从设备时序要求,留余量
未处理并发访问偶发数据错误加锁或使用原子操作

这张表里的每一条,我都在实际项目中遇到过。有些坑踩一次就记住了,有些坑换个项目又会以另一种形式出现。关键是要养成系统性排查的习惯,而不是靠运气。

7. 我对嵌入式这条路的个人体会

写了这么多,最后说点个人感受。我入行的时候也听过“嵌入式吃青春饭”的说法,当时也焦虑过。但干了这么多年回头看,真正让我站稳脚跟的,不是某一项具体技术,而是持续学习和深入问题的习惯。

嵌入式这个领域有个好处:它足够大,大到可以容纳不同性格、不同特长的人。你喜欢跟硬件较劲,可以做驱动;你喜欢跟系统较劲,可以做内核;你喜欢跟业务较劲,可以做应用架构;你喜欢跟算法较劲,可以做边缘AI。每条路都有深度,每条路都需要时间积累。

年龄从来不是问题,问题是你有没有在正确的方向上积累。如果你每年都在重复第一年的工作,那确实危险。但如果你每年都在往更深、更系统、更跨界的方向走,那年龄就是你的资产。

我现在的状态是:遇到新问题仍然会兴奋,看到新硬件仍然想上手试试,带年轻人时仍然能从他们的问题里学到东西。这种状态跟年龄无关,跟心态和方法有关。嵌入式这条路,我愿意一直走下去。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/30 1:04:09

PV操作与信号量:解决进程同步互斥问题的经典详解

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/30 1:04:01

电力系统可靠性模型:从元件故障率到串并联风险量化实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/30 1:03:59

华为路由器配置实例:从视图体系到ACL落地的完整指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/30 1:03:29

SSM+MySQL农场信息管理系统:数据建模与避坑实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/30 1:03:22

Markdown内容复制实战:从mavonEditor到v-html的完整实现指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/30 1:02:17

C#上位机与西门子PLC通信全攻略:S7、Modbus、OPC UA实战

做C#上位机开发的,早晚会碰到一句话:“帮我把设备数据弄到电脑上来。”这句话落到西门子PLC的项目里,本质就是C#程序怎么和西门子PLC完成数据通信。我从第一个S7-200 SMART项目开始,到后来的1200、1500,把几种常见通信…

作者头像 李华