欢迎光临散文网 会员登陆 & 注册

嵌入式那些不为人知的事!(建议不要再入坑了~)

2022-06-17 16:11 作者:补给站Linux内核  | 我要投稿

一、前言

  • 首先嵌入式概念很大,就业要细分到做什么才行,然后就是入门难,学习时间长,学习成本高,上升空间有限,继续学习花费更高,工资低。

  • 前段时间买了一个虚拟示波器,20M频率,100M采样率,别问为什么不买更好的,问就是没钱。

  • 现在做嵌入式怎么说不接触物联网?下位机AT串口固件+免费的网络服务?这TM不知道阉割了多少功能,也不知道商用到底花多少钱,还有,串口发一个文件猫年驴月能不能接收完。协议要不要自己做,服务器要不要买一个,都是钱,而且不一定能成功。

  • 偏硬件这么坑,做嵌入式软件呢,首先系统要人少,应用要人多一些,但是也不多,干的比正常软件难,工资比正常软件少。然后,开发环境,正常软件都是运维来做,嵌入式软件开发,你以为运维好找吗,还有,学习的时候让运维搭环境,怕是石乐志。好一些的arm,开发板价格是最好的劝退党,便宜的arm,开发环境是最好的劝退党,为了搭一个环境,我来回装了5遍操作系统,放弃了2次,为了装另一个环境,我来回装了7遍系统,因为这次开发板将近200块,没放弃,这个是MT7688,可以同时开发MT7621。

  • 那个,编译时间也是一剂劝退良药。为了提高编译速度,我在不停地找二手服务器,问我买了没有,别问,问就是没钱买。

  • 最后看一下学习资料,如果不能劝退的话,就陷入了恋NAS情节,凭借我装arm开发环境打下的底子,我非常顺利地做好了社团资源共享服务器,而且有些功能做的非常炫。现在毕业了,别问我nas,问就是没钱。(现在我一打一个问,输入法就给我提示问就是没钱,这句输入可快了)

  • 总之就是学习成本高,学习压力大,学习特别难;开发周期长,开发投入大,开发易失败;工作很缺人,工作不好找,工作工资低。缺人因为学习方面,不好找因为工资方面,工资低是因为开发方面,环环相扣,僵局一时半会还打不破。

  • 嵌入式就个万金油!干得活可以涉及硬件和软件!永远学不完的知识。

  • 嵌入式工程师简直就是硬件工程师与软件工程师的合体!别问我是哪一类软件工程师,反正不是前端、后端、APP、测试、运维。也别问我是什么硬件工程师,电源、单片机、高频、通信……你会做你就上!给你个嵌入式工程师的头衔你就是软件硬件小能手,堪比全栈工程师。

  • 从硬件说:

  • 硬件要做一款产品很不容易,要考虑各种方案的选型,而硬件方案的选型可不像移动开发一样是选Android呢还是iOS,是用Java还是Delphi那么简单,哦,你问我用什么框架?我还想问框架是什么意思呢!硬件工程师眼中只有电路图!原理图!(OS:电路图和原理图就是同一种东西好么...)以及这电路图是否有人实现过。

  • 好了,会看电路图了,总要做出来给老板看的吧?于是必须会焊接。做嵌入式硬件的绝对离不开主控芯片,不然还叫什么嵌入式工程师啊?所以该芯片的最小系统是要会焊接出来的。

  • 最小系统实现了,那么就可以搭接各种传感器,往智能硬件方向走;或者移植一个操作系统,往人机界面(UI)方向走。

  • 当然,你也可以到此为止,不去做产品,而是做各种硬件模块或开发板,再拿出去卖。如果我没有理解错,这个叫方案提供商

  • 当然,也有的硬件公司是出售自家生产芯片及模块,附送自家的SDK(软件开发包)。我们这些客户(用户、工程师、二次开发者)称这硬件公司为原厂(官方),代码称为原厂的代码(或者官方的代码)。卖芯片的公司,叫芯片供应商。

  • 我想说的是,还有公司是拿原厂的芯片做最小系统模块,再卖给我们这些二次开发者(三次开发者)用……像这些卖方案卖芯片的公司,嵌入式硬件工程师最多了!

  • 我喜欢把嵌入式分为四个层次,硬件层、驱动层、系统层和应用层,前面说完了硬件,下面说软件。

  • 如果某个人在单片机上写过定时器、数码管、温度传感器的程序,用过UART、SPI、IIC、CAN等通信方式、更厉害的话接触过蓝牙协议栈或者TCP/IP协议栈,称其为驱动工程师应该没什么不妥吧?都是底层代码,虽然有难有易。

  • 系统层。一般个人或小公司是写不了的,听说Windows某版本用了300人写了2年。只有大公司才会想着自己写系统,而我们个人所能做的是把操作系统移植到芯片上去。

  • 另外补充一个知识点:一个操作系统,一般来说有五样东西:内存管理、进程管理、文件系统、设备硬件接口和网络通信。在嵌入式领域里,可能会针对不同的应用情况而对系统层进行裁减,比如裁减掉文件系统和网络通信,只留下内存、进程和硬件接口就可以了。

文末有学习路线

【文章福利】小编推荐自己的Linux内核技术交流群:【891587639】整理了一些个人觉得比较好的学习书籍、视频资料共享在群文件里面,有需要的可以自行添加哦!!!(含视频教程、电子书、实战项目及代码)       


怎么避免这些坑?唯有转型!

  • 这里给大家分享的是零声教育的Linux内核源码课程,对标腾讯T9级别。

主要从

  • 进程管理专题

  • 内存管理专题

  • 网络协议栈专题

  • 设备驱动管理专题

  • 文件系统及内核组件专题

全方面系统全面的讲解底层原理开发技术:

最新Linux内核大纲

进程管理专题


内存管理专题



网络协议栈专题




设备驱动管理专题




文件系统及内核组件专题







适合于

  • 1. 从事业务开发多年,对底层原理理解不够深入的在职工程师

  • 2. 从事嵌入式方向开发,想转入互联网开发的在职工程师

  • 3. 从事Qt/MFC等桌面开发,薪资多年涨幅不大的在职工程师

  • 4. 从事非开发岗位(算法岗,运维岗,测试岗),想转后台开发岗位的在职工程师

  • 5. 工作中技术没有挑战,工作中接触不到新技术的在职工程师

  • 6. 自己研究学习速度较慢,不能系统构建知识体系的开发人员

  • 7. 了解很多技术名词,但是深入细问又不理解的工程师

  • 8. 计算机相关专业想进入大厂的在校生(本科及以上学历,有c/c++基础)









学习模式:

  • 128小时录播课,持续9个月,每周晚上腾讯课堂8点到10点直播公开课

  • 课前预习资料课后思考实践作业

  • 班主任督学作业统计博客统计

  • 老师答疑工作问题课程问题

  • 奖学金机制最高1000元公开透明






嵌入式那些不为人知的事!(建议不要再入坑了~)的评论 (共 条)

分享到微博请遵守国家法律