基于Mac上做嵌入式开发简析

嵌入式技术

1372人已加入

描述

前言

目前嵌入式开发平台按照性能可以分为两类,一种是CPU只有数十兆的单片机,一种是比较高级的可以跑Linux甚至Android的嵌入式平台(其实iPhone、Android手机都属于嵌入式产品)。

后者一般基于Linux/unix操作系统做交叉编译,但是前者往往更多的是在Keil上做开发,但由于本人个人关系,比较不喜欢Keil界面,所以一般在做嵌入式开发的时候,都会优先考虑是否有Linux/unix类的SDK(指包含编译工具)。但似乎Mac OSX上做嵌入式开发的人员较稀少,hum.。.因此资料也会相对较少。

本文所举例子,是千千万万种嵌入式芯片的一种,并不具备普遍性,但读完本文应该也会让你略有收获。

系统环境

操作系统: OS X EI Capitan (10.11.5)

硬件平台: nRF51822 (Nordic BLE 芯片)开发板

什么是嵌入式开发 ?

基于嵌入式平台所进行的底层开发,我们称之为“嵌入式开发”。

那么现在传说中的程序猿,哪些猿类是属于嵌入式开发的呢?

举个列子:虽然手机属于嵌入式设备,但目前人数众多的APP开发者不属于嵌入式开发,而是属于应用开发人员(因为他们都是基于手机操作系统进行编程的)。但手机厂家中那些开发手机底层驱动和底层应用的人员则属于嵌入式开发。

目前,因近几年移动互联网的大力发展,使得 Web猿 和 APP猿 族群最为庞大。

什么是交叉编译?

简单来说,在C语言(包括但不限于)编译过程中会分为四个阶段: 预处理 -》 编译 -》 汇编 -》 链接

嵌入式开发

但是在以上过程中,需要占用“大量资源”,在嵌入式设备(嵌入式设备的设计要诀之一就是能省则省)中并不具备该资源(如编译器、足够快的CPU、内存等),所以需要借助我们的PC平台进行编译。这种在一种平台编译,另一种平台运行的编译,我们称之为交叉编译。

嵌入式开发


 

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

全部0条评论

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

×
20
完善资料,
赚取积分