单片机和嵌入式的关系一文读懂

描述

  搞不懂单片机为什么那么热,嵌入式跟单片机是不一样的吗?单片机和嵌入式的关系了?

  其实,嵌入式跟单片机真的没有多大的联系,想搞嵌入式的,就认真学好大学课程。

  (1)单片机

  单片机基本结构单片机由运算器、控制器、存储器、输入输出设备构成。

  (2)嵌入式

  嵌入式系统成部分:嵌入式系统一般由以下几组嵌入式微处理器、外围硬件设备、嵌入式操作系统、特定的应用程序。嵌入式系统设计的第一步是结合具体的应用,综合考虑系统对成本、性能、可扩展性、开发周期等各个方面的要求,确定系统的主控器件,并以之为核心搭建系统硬件平台。

  单片机要求首先要学习C语言基础,就相当于80%会单片机了,因为现在所有8/16/32位(51系列,MSP430系列,ARM系列)都是使用C语言。如果只有C语言基础,确实不好找工作,方向也很难确定,但是从目前发展方向看,嵌入式是个不错的选择。嵌入式,其实就是ARM+Linux,重点其实是嵌入式操作系统,建议先从单片机做起,了解GPIO、定时器啥的,理解怎么用C语言操作硬件。

  据说,以前单片机之所以热,是因为当时珠三角很多玩具厂,很多玩具厂都是用单片机来触动的(比如小时候盼望玩的遥控车),现在这些厂都倒闭一大堆了,单片机出来就业的,难找工不说,待遇还超级不好。

  嵌入式跟单片机是不一样的,嵌入式硬件方面很多都是做维护和烧焊板子。一般说做嵌入式是指做嵌入式软件,嵌入式软件有那么难入门吗?

  我一直很奇怪为什么做嵌入式一定要买个arm,一定要板子,真的需要吗?我相信很多人买了板子,也不知道怎么搞,最后就放在角落里面了吧。

  以工作几年的经验来说,想搞嵌入式的同学,首先要掌握的是C,然后是数据结构、算法(绝对重要,架构师的基础),然后是计算机组成原理、微机原理、操作系统(进程、虚拟内存、中断),如果掌握了这些,别说驱动了,也别天天提驱动,这里都包含了,最后就是计算机网络和汇编了。我也是后来才知道汇编的重要性,现在出现问题不是看C代码,而是直接看汇编代码了。

  看到很多童鞋都在买板子,买单片机。(单片机真的和嵌入式没有多大的联系,别搞完单片机了,最后发现嵌入式还是不会,哈哈),认真学习好C,然后转移到linux系统,习惯使用linux系统的命令行界面,用gcc 、makefile编译文件、工程。到你真正投入到嵌入式行业去,就会发现,然后跟x86的环境差不多啊,真的没有啥区别。

  也看到很多童鞋一说做嵌入式一定要做驱动,搞得驱动很了不起一样,现在做驱动很少是开发的,一般是维护的多,为什么?因为芯片都是使用***或者国外的,国内的芯片没几个能用的,所以驱动什么的,国外的公司都提供好了,我们驱动的童鞋很多都是维护和修改。

  其实现在搞嵌入式的,很多都是做应用层,做数据面(即网络)。

单片机不带操作系统,所以你写单片机程序,本身就意味着你在开发操作系统。嵌入式带操作系统,所以你写嵌入式程序,本身意味着你不用开发操作系统,只是在别人的系统上做一些应用开发。真正接触底层的,是搞单片机的人。不要以为你花一个月的时间就能精通单片机。

  其实,现在做安卓、ios底层的话,也是基于C和linux的,如果做应用的话就用java或object-c了,目前做手机应用的就业很不错。

  学习单片机赚钱还是学习嵌入式赚钱?

  学习单片机,只要你技术过硬,一个笔记本电脑,再加一个农民房就可以在深圳单干,我就是这样过来的。学习嵌入式系统的,可能要依附大公司,如果你也出来单干,估计半年没接到一个单,即使接到单,如果开发周期三个月或者半年的,你要有充足的粮草储备。我觉得单片机开发是艺术,我做的每一个作品都让我充满成就感。最后奉劝所有搞技术的年轻人,做一行爱一行,不要急功近利,做好每一天的的工作,沉下心来,时间越久,经验越丰富,你就越牛。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分