这是我明天一个朋友问我的
我再零散的说一些观点,如果你们有这方面的经历免费linux主机,也帮忙在文章下留言,感谢你们。
///插播一条:我自己在明年年初录制了一套还比较系统的入门单片机教程,想要的朋友找我拿就行了免費的,私信我就可以哦~点我头像红色字体加我月球呺也能领到哦。近来比较闲,带做毕设,带中学生出席市级或以上赛事///
正文开始:
先说共有点
单片机和嵌入式她们最终都是要跑硬件的,所以你也会碰到像GPIO口、I2C、串口、SPI、定时器、看门狗那些问题。
所以如果你学了单片机,这么你在这种东西上肯定是有积攒的。这么这种就是你的优势,如果你让一个学java的去做嵌入式开发,我认为并不适合,因为他可能对电子的好多东西不懂,他可能看不懂原理图,也不会用示波器万用表,也不晓得哪些是中断,中断向量之类的。
并且你如果是单片机开发,这种你都了如指掌,那,这就是优势。
并且从单片机开发到嵌入式Linux,我认为要先瞧瞧多任务。
如果有了多任务的概念,这么不管你是做RTOS还是Linux都是适合的。
那差别点在那儿呢?
嵌入式的特征是软硬件可剪裁,所以从单片机到嵌入式Linux,你作为软件开发,最大的问题就是剪裁,根据不同的硬件配置做不同的剪裁软件。
但是,从单片机到Linux,它的难度才能说是指数级降低。
你还能用单片机来做一个U盘,嗯,你做下来了。
之后你到Linux下去瞧瞧USB的构架,嗯,你绝对是懵逼的,因为峭壁是太复杂了,所以你想在没有完全了解的情况下就给那些代码动刀子,你做不到。
我明天和我一个朋友聊天,他跟我说,先前他做手机开发的,做这些驱动,也就是供给商给给代码,之后推动下进度就好了。
他说的没有错,好多小厂商就是如此做的,可是难就难在,可能某个更改就一行代码,而且你就是不晓得在那里,要是你没有经历,对构架不熟悉,你峭壁要熟悉上一个礼拜~,我之前在中兴调一个电机驱动,找驱动文件都找了许久,还要了解电机的马达驱动原理,最后去验证测光那才是一个让我崩溃的事情。
所以,从单片机到嵌入式Linux,你对构架的掌控是一个很大的挑战。
其次是调试
大的系统,要给它开刀做放疗,可不是一刀子下去一刀子下来就完事,还是需要针对性的去做调试,对不同的问题先有理论根底再动刀子。
哦,你以为嵌入式Linux不写代码
你需要写C,有时侯因为个别问题,你需要写C++,python,shell~
就此时的行业举办来看只会单片机早已不吃香了而且在工资待遇方面来看的话单片机的收入限制性太强可能工作好多年以后发觉没有了成长空间,因而逐渐转入嵌入式Linux这个方向是越来越多的人的一个选择,这么接触了这么长时长单片机以后又要如何从单片机领域转入嵌入式Linux呢?下边我们就来了解一下要怎样从单片机到嵌入式linux我们需要做哪些呢!
提及单片机好多人都很认为不生疏,东路小巷里面电子产品都用到。近几年随着嵌入式的举办,做单片机的一帮家伙突然感觉大祸临头通常发觉自己熟悉把握的单片机渐渐被嵌入式赶超了,这么嵌入式究竟是啥玩意儿,和单片机有啥区别,如何完成顺利的转化。
从严格意义上来说,单片机是嵌入式的一个子集,嵌入式虽然就是对单片机系统的升级,附加了更多的功能,最普通的单片机只需要一个while循环在上面操作施行就才能了,在嵌入式层次早已升级到操作系统级别,在这儿面好多人有个疑问,为什么一提及嵌入式总是和linux挂上钩,虽然嵌入式上面用的系统根本上都是基于linux的,虽然还有少量别的操作系统的嵌入式,如果初期的wince系统(谷歌的嵌入式框架),系统的升级了构建嵌入式linux系统,此时嵌入式设备都还能玩多进程框架了,于之前相比还是不可想像的。
小个头的单片机和嵌入式究竟有啥区别?
1.嵌入式在硬件配置上有了全方面的升级。此时你们用的手机都是嵌入式范畴的,根本山属于微型笔记本的级别了,这是单片机不能比拟的,虽然硬件的配置的大幅度提高也给修理工带来很大的难度,前几天家里刚买的变频冰柜出问题了,上门的师父见到样式直摇头,又是变频的啊,之后问了一堆故障以后,首先给售后打了一通电话寻问构建嵌入式linux系统,之后我说你不是带了一堆用具嘛,师父说了句,此时的冰柜上面都是一堆堆的板子,搞哪些智能节电,坏了不是重新刷设备就是换板子,我们这种修理工用具越来越没有用武之地了。
科技的进步,嵌入式的竭力举办给人们的生活就会带来不一样的觉得,虽然对于搞单片机的硬件的升级还是之前的驱动的开发,以及寄存器的设置承德小异。
2.嵌入式在软件系统层次,比单片机丰盛了许多,典型的单片机程序MP3,也在风行了几年迅速被手机产品替代。这也不是简短几个按键或则一个小显示屏的单片机所能比拟的,非常是安卓系统的出现,实实在在的带动嵌入式的举办,搞得大道小巷做芯片的公司,如果里面不能跑安卓其实都无法和顾客谈生意。
想要从单片机转入嵌入式Linux的搭档才能参照这个资料才能有效的攻破单片机过渡到嵌入式Linux的理论上的问题,理论想明白了实际的东西也就好进行了,就怕你想不明白其中的道理
从单片机到嵌入式linux我们需要做哪些
因为安卓系统的时兴虽然给开发人员带来一点很大的不同,原先的嵌入式的应用根本不是c/c++方面的linux查看磁盘空间,此时java也上来了,因为嵌入式的设备运行个java的虚拟机根本都不是问题。所以此时c/c++就业不如java火爆一个很重要的理由。
玩过单片机的需要在这个层次深层的加深,从软件的层次上来说不仅仅是简短的寄存器的配置,还殃及到操作系统上面的多进程,多线程的,以及显存和c盘的管理这种都需要提高。
嵌入式主要分为三个方向,一是系统开发:注重开发环境搭建、内核原理、交叉编译等;二是嵌入式Linux应用开发:注重Linux应用编程、内核编译、系统调用;三是底层驱动开发:注重嵌入式Linux系统下的驱动开发、内核的深层剖析。