-
1、随着以计算机技术和通信技术为主要焦点的信息技术的快速发展和互联网的广泛应用,3C(计算机、通信、消费电子)的融合将成为必然趋势。 信息家电、手持设备、移动设备等嵌入式产品的快速发展,使嵌入式软件开发再次成为研究热点。
2、由于嵌入式磨削设备的性能限制,盲标往往无法通过本地编译获得所需软件的可执行程序。 因此,为以 Linux 为主机操作系统和交叉编译系统的嵌入式设备生成可执行文件已成为编译嵌入式软件的越来越流行的解决方案。 开源编译器GCC经过多年的发展,已经能够支持几乎所有知名厂商的处理器,是嵌入式软件开发的理想交叉编译器。
-
由于主机和目标机的架构不同,可以在主机x86平台上运行的程序无法在目标ARM平台上运行,因此嵌入式软件组件的开发采用交叉编译的方法,生成可以在另一个平台上执行的**。 编译的主要任务是将程序转换为运行程序的CPU可以识别的机器**。
进行交叉编译的主机称为主机,即普通的通用计算机,主机系统资源丰富,易于集成开发环境和调试工具。
程序实际运行的环境称为目标计算机,即嵌入式系统环境。
-
基于Linux操作系统的应用开发环境一般由目标系统硬件(开发板)和上位机组成。 目标硬件开发板用于运行操作系统和系统应用软件。
在这种情况下,无法在 ARM 平台上进行本机编译,因为典型的编译工具链需要大量存储空间,并且需要大量 CPU 能力。 为了解决这个问题,带凳子的交叉编译工具应运而生。
例如,在Windows平台上,我们可以使用Visual C++开发环境来编写程序并将其编译为可执行程序。 这样,我们在PC平台上使用Windows工具为Windows本身开发可执行程序,这个编译过程称为原生编译,中文可以理解为原生编译。
但是,在开发嵌入式系统时,无法直接编译。 运行程序的目标平台通常存储空间和计算能力有限,例如常见的ARM平台,一般具有约16至32 MB的静态存储空间,CPU频率约为100MHz至500MHz。
-
如果要做一个嵌入式操作系统,不同的嵌入式操作系统有不同的交叉开发环境,有些是商用的,有些是免费的。 你首先必须决定你想去哪个方向。 即使在一个方向上,也有很多方法可以构建跨开发环境。
例如,嵌入式 Linux,有几种方法:
1. Windowscygwingccgdb调试界面;
2. WindowsEclipsegcc调试接口;
3、Windows专业商业Linux开发环境调试界面;
4、Windows专用嵌入式Linux开发环境(如Android SDK)调试界面;
5. LinuxgccgdbLinux图形界面开发环境NFS;
其基本结构如下:主机跨编码器调试环境,设备驱动调试接口。 没有举手:
嵌入式 Linux 开发环境。
-
你需要先建立一个跨工具链,最好是镇上有一个现成的工具链。 如果没有,则需要先编译袜子。 然后使用此工具链编译指向 Hunger Dryer 的链接。
至于托管环境,这取决于您的需求。 如果您不熟悉 Linux,我们建议您使用 Mingw。 最好使用linux,因为开始学习有点累。
-
这不是一两句话就能说清楚的,你最好读一读这本书。
《构建嵌入式Linux系统》是一本主要讲蚂蚁冲问题的游记。
-
交叉编译意味着在一个机器结构下编译的软件将在完全不同的机器上运行。 交叉编译的一个典型例子是,嵌入式系统工程师在他或她自己的个人计算机上编译一个程序,并在嵌入式平台(如ARM、MIPS等)上运行它。 因此,嵌入式交叉开发环境一般会由个人电脑、PC嵌入式开发软件(如ARM支持的MDK、ADS、RVDS等)、支持硬件调试的硬件调试器及其配套的驱动软件(如J-link)组成,当然最重要的是嵌入式硬件系统,也就是俗称的开发板。
嵌入式系统之所以需要在通用计算机上开发,我认为主要问题在于资源分配,根据嵌入式系统的定义,嵌入式系统的软硬件将是可以定制的,以适应各种不同的需求。 在这种情况下,由于硬件平台种类繁多,其编译器将变得无法开发,即使开发,也可能需要极其繁琐的配置,这大大降低了软件的可用性。 另外,使用起来不方便,大多数嵌入式系统不会像PC那样配备键盘和适合输入的大屏幕,所以如果你在嵌入式系统上输入**,那将是一件非常烦人的事情。
了解如何嵌入:
1.C语言是所有编程语言中最强的,单片机、DSP和类似ARM的各种芯片的编程都可以用C语言完成),所以一定非常熟练。 >>>More