单片机(限指不运行OS的)的开发也属于交叉编译吧。不明白为什么基本上几乎所有的单片机开发此类书籍在都不提及这个概念,却在ARM-OS开发类书籍中这个概念遍地开花,难道仅仅为了凸显ARM稍复杂点的开发技术?何必呢。。。不一视同仁吗
主要是今天给人刚从单片机转ARM9开发的人讲课,还要我解释一下交叉编译,我觉得这个问题那些出版单片机开发书籍的作者或者曾经上课的老师,都应该稍微解释一下这个概念。
单片机的开发也属于交叉编译吧
交叉编译 由于计算机的指令集与ARM上的指令集不一样。所以当程序能正常在PC上执行时,不一定能正常地在ARM上执行。一般交叉编译的过程是这样的:PC调试的程序 ===> 调试可用,通过交叉编译器将代码指令转换成对应的ARM平台代码指令 ===> 移植到ARM平台上使用。而单片机的过程也有些像。你像这类高深...
交叉编译器的举例
交叉编译1、在Windows PC上,利用ADS(ARM开发环境),使用armcc编译器,则可编译出针对ARM CPU的可执行代码。2、在Linux PC上,利用arm-linux-gcc编译器,可编译出针对Linux ARM平台的可执行代码。3、在Windows PC上,利用cygwin环境,运行arm-elf-gcc编译器,可编译出针对ARM CPU的可执行代码。4、...
gcc编译器可以用于单片机的开发吗
可以的,需要交叉编译。我们公司就在做这个。原来使用sdcc做的编译器,现在改为gcc了。
如何在mac上进行单片机开发
在非Windows上开发嵌入式,需要考虑的是交叉编译器buildtools和工具链toolschain,至于代码编辑理论上任意文本编辑器都行。具体方便使用的当然是eclipse,需要cdt版,再去下载gcc等,调试使用的是openocd。本人最近因项目版权问题的需要转为使用开源开发软件,编写和调试stm32都是用的eclipse。具体的可以百度关...
如何在单片机装Linux系统
2.开发系统逐步使用Ubuntu或者其他linux发行版,熟悉linux的基本操作,脚本,交叉编译 3.看深入理解linux内核,lld第三版,熟悉驱动和内核的基本知识,可以重点看自己熟悉外设的驱动,如spi。4.可以在熟悉的单片机上移植一个os,不一定是linux,如果是stm32可以移植freertos,这个网上很多资料,然后结合资源...
学c语言需要用什么配置的电脑
还有一个是做单片机开发,这个要看单片机的开发环境,像51这类windows环境的,对电脑要求很低。还有一类是要在Linux下交叉编译的像MIPS,就需要跑虚拟机,配制要高一点。作为开发,时间就是金钱,欲工其事必先利其器,配一台配置高的肯定是没错的,还有一个,c开发可能要用到各种硬件,比如USB转串口...
如何学习嵌入式
除此以外,网络上还提供了很多专用的写Flash的工具,开发者可以根据自己的需要选用。(现在明白了我在学的那个BF533为什么先下个flashProgramer.dxe先了)什么是arm-elf-gcc?arm-elf-gcc是一个交叉C语言编译器。我们在PC平台下编译程序,编译器运行的处理器同生成的代码将要运行的处理器相同。但是,在PC 机上编译ARM...
嵌入式c语言和c语言的异同
的,而是目标板。所以嵌入式开发就一定会有交叉编译这个环节(简单一点理解就是,在PC下编程,然后交叉编译一下,让程序能运行在PC外的其他平台上,比 如ARM开发板什么的)稍微做一下类比:普通编程开发===CPU(比如奔腾)===windows操作系统 嵌入式开发===嵌入式处理器(比如ARM)===嵌入式操作系统...
我在学习单片机,但遇到很多芯片资料看不懂,有哪位高手可以教教我如何...
以上只不过是大概的框架,在实际的开发中还会涉及很多东西,比如:交叉编译、makefile、shell脚本等等,所以说学习嵌入式的周期较长,门槛较高,自学的话更是需要较强的学习能力和专业功底。只要能坚持下来一定会取得成功!华清远见的嵌入式专业教材比较专业,也很出名,高校图书馆以及外面书店都有卖,你可以...
谁能教教我怎么学单片机,先学什么,怎么入门?
裸机驱动,就理解为单片机就好了,性质是一样的,只不过这里不像51和STM32使用IDE进行编译和链接,而是自己使用交叉编译工具配合Makefile手动的编译链接。uboot入门,学习通用的引导流程,熟悉ubootcmd,bootcmd,环境变量,flash烧写等。 kernel驱动,这里的kernel驱动和裸机驱动还是很大区别的,单片机驱动相对来说说仅仅只是看懂SO...