说到嵌入式开发,大多数人会想到arm、linux、c、android等等。
看了很多相关的入门学习文章,不知所措。要学的东西太多了吧?门槛太高了吗?
我在这个行业10年了,现在看网上那些入门文章,觉得很难学。多少新手就是这样入门又放弃的。
但事实是,这个行业的进入门槛低到让你义愤填膺。只要能坚持,初中毕业证还是能发挥的很好的。
如果你真的喜欢研究技术,喜欢做创客,通过你掌握的技术把你的想象变成真实的产品,那么嵌入式开发绝对是你必须要学的技术。
1。嵌入式软件开发是做什么的?
很多人可能不知道嵌入式软件开发是做什么的。
简单来说,你编写一个程序,控制硬件电路,实现电子产品的智能控制、友好、优秀的资源 *** 系统功能。
与纯软件相比,嵌入式开发更有趣。纯软件学习过程大多是在屏幕上打印一些冷冰冰的字符。
嵌入式开发大多在开发板上,很快就可以写个程序控制一个led灯。那不是更有趣吗?
而嵌入式开发是基于芯片开发的,比如一些arm芯片,就像电脑cpu一样,只是在性能、成本、尺寸上比电脑cpu更简单。
这类电子产品比较适合定制,比如蜂巢盒快递柜,平板电脑等等。
2。嵌入式开发应该上哪些课程?
很多新手从一开始就走错了方向,嵌入式系统涉及的技术太多了。
就像公司的组织结构一样,公司分为很多岗位,比如从事技术、业务、人力等等。
同样,嵌入式开发也分很多方向,主流方向是:
单片机开发arm linux开发还有其他的fpga/dsp/dsp之类的,就不说了。
如果你前期没有明确的定位,你学嵌入式开发基本上是不可能的,因为有太多的东西你根本学不会,学了很久也没有结果,肯定会放弃。
但是如果我们有了明确的定位,那么学习的速度就像打开了门。
我经常跟我们无边单片机编程的学生说,我们要像激光一样生活,专注于一个点,做出快速有效的成绩。
mcu开发和arm linux开发有什么区别?
mcu的发展主要集中在低端产品,如ofo自行车共享,智能家居传感器和网关,无人机,扫地机器人等等,每个人都必须接触到。
arm linux做的是高端产品,比如平板电脑,智能机器人等等。
这两个方向没有谁比谁强的说法,各自的应用场景和产品都不一样。
很多人说学习arm和linux做嵌入式开发,但是做单片机开发没有前途,纯粹是技术人员和外行人的思维。
我以前也这么想。这几年一直在做单片机开发。mcu开发的工资总是比arm linux开发低,我对优优资源网很不爽。
自从在后面看到一些51单片机,每年进百万老板的时候,彻底颠覆了我的三观。
技术再牛逼,高端产品呢?
如果你不提高自己的认知和思维,你的收入将永远停留在工作水平。
所以技术水平和收入水平不是因果联系。技术再好,工作层面也会有瓶颈。关键是如何通过技术这个工具产生价值。
好吧,有点远。我们回到正题。友友资源网嵌入式开发要上哪些课程?
我们前面说了方向,就拿我最熟悉的单片机开发来说吧。
一个电子产品的实际开发会由两个人共同开发:硬件工程师和软件工程师。
我们的职位是软件工程师,因为待遇会比硬件工程师好。现在很多硬件都是集成的,所以硬件成长的过程会比较坎坷,核心技术我们接触不到。
如果接触不到核心技术,硬件还不如软件贵。
一步一步缩小我们的定位,然后根据我们的定位收集学习内容,你最终会发现,你想学的东西并不多。
收集学习内容更好的方法是在 *** 平台上搜索相关职位。
比如我们可以搜索:单片机工程师/嵌入式工程师。
这是某鹏汽车单片机开发的定位。结合我在这个行业10年的经验,我得出的结论是,我必须学习以下课程:
c语言而嵌入式mcu的开发主要是用c语言编写程序来控制硬件完成相应的产品功能。
其实汇编也可以,但是汇编写的代码维护起来很麻烦,现在也很少用,所以我主要学习c。
我们录制了一套单片机c语言入门教程,非常适合初学者。
这套本来是零基础学生录的。后来觉得这个教程已经泛滥了,就干脆分享了。
2。电路基础
嵌入式单片机的开发主要是写程序控制硬件,所以需要有一定的电路基础,学会了解电路。
3。单片机
目前市面上的单片机型号很多,基本都差不多。初学者可以先从51单片机开始学,比较好用,后面再进阶到stm32。
最后,祝大家成功!
推荐阅读: