想学习单片机的同学可以关注、私信我或者在评论区回复我要入门。嵌入式有不少组合名词,例如嵌入式系统,嵌入式软件,Linux嵌入式,Android嵌入式,嵌入式Web,等等。
通常对嵌入式的定义其实是对“嵌入式系统”的定义。
网上对嵌入式系统比较官方的中文定义是:嵌入式系统是:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。
在IT领域中嵌入式系统非常的多,Android嵌入式开发。Linux嵌入式开发。智能手机,平板,智能手表.可穿戴设备,例如Google眼镜,小米手环.无线路由器等等。
嵌入式正在渗透到我们生活的每个角落,而且使用得只会越来越多。
但是,例如Android,iOS纯app开发的话一般就不能算是嵌入式了吧,只能算软件开发。
嵌入式编程,一直都是单片机中比较火的,虽然入门门槛比较高,但是学好了薪资是属于中上的水平。例如Linux嵌入式的高级工程师。而且如果你能啃下嵌入式这个“硬柿子”,学了很多方面的知识,那么其他一些编程领域,也许地掌握起来比较轻松。就好比你如果熟练掌握了C++语言和C++,那么其他一些编程语言一般都可以轻松的学会了。
在嵌入式编程中还有一个交叉编译的概念:什么是交叉编译呢?简单来说,就是“在一个平台上生成另一个平台上的可执行代码”。
普通的软件开发过程中,如果是编译型的编程语言,例如C语言, C++,Java,等等,你想要运行你写的程序,需要用编译器将代码编译成可执行程序。
嵌入式系统的能力是有限,内存有限,储存空间有限,因此无法完成比较需要资源和速度的编译过程。
比如在Android嵌入式开发中,你不可能在Android手机里直接让它编译自己的系统或软件吧。
因此,我们会先在普通电脑(比Android手机的计算能力更强,内存更大,储存空间更大)里将程序编译(需要不同于我们编译普通软件的编译器,称为“交叉编译器/软件”,比较常见的有arm-linux-gcc一族)成适配Android手机的特定可执行文件(一般会打包成镜像文件),然后通过专门的工具“烧录”到Android手机里。
入门和提高嵌入式
1、刚开始入门嵌入式的时候,暂时不需要学很多硬件知识的(如果你想要学那肯定是非常好的)。会用一些烧写工具,编译,调试工具(比如JTAG)就可以了,用到的时候再去补一下。开发工具也没什么固定的,一般也不一定要IDE,用文本编辑器就可以写代码(比如Vim,Emacs, nano, Sublime)了。编译一般用GCC的变种。
2、要入门嵌入式,C语言是肯定要学的,单片机很多方向都需要懂C语言,C语言可以拓宽自己的发展道路。
3、C++不一定会用到,但也可以学一下。
4、Linux是要学习的。因为交叉编译经常要用到Linux系统,即使在Windows下也要用到Cygwin这类的。
5、可以花点时间了解一下汇编,对理解计算机的原理,特别是内存,指针,二进制,十六进制都有很好帮助,不需要深入的学习。
6、嵌入式的处理器架构基本都是是ARM(。手机,平板,大部分开发板都是ARM的天下。所以需要学一下ARM架构,有个了解。一开始对ARM不需要太深入,根据以后发展情况而定。ARM的集成开发环境有ADS(ARM Developer Suite),是ARM处理器下主要的开发工具。
本期先分享到这里,想要进群学习单片机编程的同学可以私信我,回复“我要入门”,与我们一起成长,喜欢的可以点个赞关注我们!



