大佬教程收集整理的这篇文章主要介绍了摊牌了我后悔入行了,浅谈为何不该入行嵌入式,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
摊牌了我后悔入行了c;浅谈为何不该入行嵌入式
\插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程c;想要的同学找我拿就行了免費的(禾厶-亻言-手戈)。最近比较闲c;带做毕设c;带学生参加省级以上比赛///绿色图标【‟で】liutianwang123
我本来是读研期间一个从事嵌入式学习、研究的研究生(现在已毕业)c;原本在学校里面一直自以为熟练使用STM32单片机为傲c;曾多次参加过电子设计比赛、飞思卡尔智能车比赛(本科)c;多次参与嵌入式项目(读研)c;毕业时也曾梦想从事嵌入式行业(无奈专业限制无法从事该方面工作)c;写这篇文章之前也曾想过靠嵌入式的项目挣点外快c;但现在我(含泪)要劝大家不要入行该行业。
这篇文章分为两个方面c;一是从事嵌入式工作的基本操作套路;二是为什么不要从事嵌入式工作。
嵌入式项目的基本套路
这里以我在某乎的一个提问为例如图1所示c;可能有人会以为以一个知乎的问答为例不足以说明问题c;一个知乎的问答太过于简单无法透露出单片机的威力?
实际上事实绝非如此c;单片机或者说嵌入式仅应用于某一个单一的小项目或者大项目的一小部分功能c;原因在于单片机的处理能力过低不足以处理复杂的信息c;但足以作为信息的初步采集、汇总以及工作装置的驱动c;现实中生活中某米的智能台灯使用的WIFI芯片就是ESP8266EX【1】、小米九号平衡车使用控制器是STM32F103【2】、多款智能手环同样适用STM32作为主处理器【3】等等产品均是嵌入式产品。
某乎的问题本就是这些应用的缩小版或者同类问题c;以此为例可以说清楚嵌入式项目开发的基本套路c;
图1某乎51单片机课程设计
以下为我的回答:
首先c;我们看一下你们课程设计的几点要求:
(1)用51单片机开发一个系统;
(2)使用AD转换器PCF8591完成数据采集与转换;
(3)使用时钟芯片DS1302记录时间;
(4)使用存储器AT24C02对数据进行监测和记录;
(5)使用LCD1602进行显示;
(6)使用按键对数据进行查询。
分析一下你们的课程设计要求以及具备的基础知识:
51单片机开发板中具备AD转换器、时钟芯片以及存储器c;因此你不需要对这些部分的硬件基础进行设计c;也就是本次课程设计仅仅只是完成一些软件上面的操作c;不涉及硬件。(至于1602部分、按键部分是大多数开发板具备的基础配置c;因此不需要着重强调。)
你需要具备的基础知识:
(1)单独使用PCF8591芯片进行AD转换c;该部分使用的传输方式是IIC通讯c;对这部分有一定的了解才可以做到;
(2)时钟芯片DS1302进行时间记录c;该模块可以记录年、月、日、周、时、分、秒进行计时c;使用时钟线、数据线用来读取信号;
(3)储存器的AT24C02的存储信息以及读取信息的使用c;该模块也使用IIC通讯。
这三个方面的基础使用是基本的基础c;单独使用它们在单片机开发板提供的历程中会有相应的例程c;甚至会有你这个课程设计的雏形版本c;你需要做的是找到这个例程。在这些例程上修改这些功能c;有机的让他们结合在一起然后完成设计c;完成这些基本这个项目已经完成。
可能从事多年的老手和新手对于该部分完成时间略有差异c;但是功能方面在底层的需求差异不大c;而恰恰哪些新手和老手的不同才是老手的护城河c;也就是软件里面所说的算法c;但在这些项目很少使用算法c;基础功能完成即可宣布完成课题。
嵌入式项目
嵌入式课程存在的意义在于哪儿c;电子专业的课程安排上学完嵌入式课程紧接着学习Linux系统内容c;而机电类学生学完51单片机后不在开设相关内容进行学习。(我本人学习机械专业c;同参加智能车比赛的小伙伴是电子类专业)
电子类学生(以智能车小伙伴为例)学完嵌入式后为Linux系统的学习提供基本的编程基础c;Linux的开发及应用才是它们专业基本的素养c;该同学大学毕业考研进入北京一所院校从事Linux的工作c;后续留在北京从事Linux系统的开发。
机械类学生学完嵌入式后(以我为例)c;学完嵌入式系统(飞思卡尔芯片K60)后考研进入兰州某院校继续学习机械专业c;读研期间参与设计嵌入式系统的工作c;但是毕业以后再没有机会从事该方面的工作c;进入某国企工作。
嵌入式的两方面发展也限制了从事该方面公司的发展c;从一开始入行嵌入式系统就知晓两家比较大的硬件公司c;一家是某点原子c;另一家是某火电子;从企业信息显示c;某点原子团队缴纳社保人数为38人c;而某火找不到具体人数但是找到招聘信息:从事嵌入式/Linux开发3-5年c;工资15K-20K。
想象一下如果你和同事在同样一家互联网企业工作(同时入职)人家工资20K+c;你的工资是10K+c;别人的工作就是在电脑面前敲代码、调试程序c;你不仅要焊接硬件c;还要在办公室敲代码、调试程序。心里不平衡必然存在c;当然从事硬件开发工作大多数是体力劳动加少量脑力劳动c;而软件纯是脑力劳动c;这种心理的不平衡可不是一般人能承受的c;所以不要入行嵌入式。在某准网显示绿厂硬件工程师平均工资12Kc;而软件工程师23K+c;居然连机械工程师都是17K+【4】c;现在异常感谢研究生导师对我的培养还好没有坚持梦想c;走了一条平稳的路线。总之c;这个行业的天花板太低c;导致没有什么奋斗的价值。
不入行的主要原因可能在于嵌入式行业(硬件工程师)不是这个时代的风口c;永远不可能是c;硬件永远为软件服务c;借用罗永浩老师的一句话“手机不赚钱c;交个朋友”。因此c;现在入行嵌入式类似于现在致力于开发DOS系统的组件。
以上是大佬教程为你收集整理的摊牌了我后悔入行了,浅谈为何不该入行嵌入式全部内容,希望文章能够帮你解决摊牌了我后悔入行了,浅谈为何不该入行嵌入式所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。