嵌入式linux驱动开发(嵌入式linux软件)-编程之家

目前常用的ARM平台下的嵌入式开发软件有哪些。谢谢?

LINUX下一般编辑用VIM,编译用ARM-LINUX-GCC,DEBUG用GDB或者在代码中加入PRINTF或者PRINTK

嵌入式linux怎么样?是青春饭吗?

嵌入式很广,如果做嵌入式的上层应用,有点青春饭的味道,如果做底层还好。

我们公司做医疗器械的上市公司,做嵌入式的分软件和硬件,软件主要搞linux那套东西,我做硬件的,说说我的工作:

1.原理图PCB设计,高速电路设计,2-8层PCB layout。现在IC一体化,集成度越来越高,基本上硬件设计没有以前那么吃经验。

2.驱动程序编写及测试。

3.EMC问题整改,三大类问题解决(专标合格,通标合格,安规合格),三大方法:接地,屏蔽,滤波。比较吃经验。

4.解决试生产,转产中出现的问题,方案评估等等。

5.带新人,带徒弟。

以上1 2 3 4 5条都比较吃经验。

嵌入式用linux还是安卓?

用linux。因为嵌入式首先要保证稳定性,而安卓的碎片化和兼容性一直是弊病。linux有稳定的开源社区,有众多爱好者的无偿支持,以及极佳的稳定性,是嵌入式的首选。而安卓应用的娱乐功能较强悍,电视的嵌入系统既有安卓,也有linux,对电视来说,安卓更佳。

嵌入式系统的操作系统(如linux)主要作用是什么?

Linux作为开源免费操作系统,以其作为系统的应用可以较方便的进行系统功能的裁剪和跨体系结构移植。

在不同的目标体系结构下(x86,ARM,PowerPC etc.),由于汇编指令集的不同,同一段代码利用不同的编译器和库文件生成的可执行代码是不同的。不同体系的Linux其开发工具是不同的。

嵌入式linux属于高度裁剪过的Linux,他将桌面Linux所具有的大部分应用功能(如GUI 工具,计算器,电子邮件 etc.)和部分系统功能省略,但集成了开发者希望嵌入式产品所具有的特殊应用功能(比如 一款以Linux为系统的触摸式海事导航仪可以根据功能需要去除不需要的功能块,但加入GPS定位,航速航向计算,航线规划,触摸检测和对应功能实现等功能)。

嵌入式系统往往是指系统的资源(如DRAM/FLASH ROM,功耗,工作频率 etc.)有较大限制且系统的工作环境相对多变和恶劣(如温湿度变化大,酸碱度腐蚀,外部撞击和振动,外部电磁干扰,静电导致的高压损坏电路 etc.)。这也就需要开发人员更多的发现和假想可能的突发情况并采取相应预防措施。大部分嵌入式系统对响应的时间限制和正确性也有极高的要求。

嵌入式linux?

BSP(Board Support Package),板级支持包,也称为硬件抽象层HAL或者中间层。

它将系统上层软件和底层硬件分离开来,使系统上层软件开发人员无需关系底层硬件的具体情况,根据BSP层提供的接口开发即可。

BSP是相对于操作系统而言的,不同的操作系统有不同定义形式的BSP,要求BSP所实现的功能也有所不同。

在嵌入式Linux系统中,主要是初始化底层硬件并引导操作系统;同时,BSP又是和硬件相关的,还要考虑对硬件的初始化操作。这些初始化操作主要是对CPU、内存、中断等相关的寄存器及协处理器进行正确的配置。

在不同的开发阶段,因为核心和文件系统所处的位置不同,BSP所要完成的工 作也有所不同;在开发调试阶段,BSP要能够与主机通信并从主机下载核心;在目标产品中,BSP要能够从非易失存储设备中加载核心。

扩展资料

BSP有两个特点:硬件相关性和操作系统相关性。

设计一个完整的BSP需要完成两部分工作:

A、 嵌入式系统的硬件初始化和BSP功能。

片级初始化:纯硬件的初始化过程,把嵌入式微处理器从上电的默认状态逐步设置成系统所要求的工作状态。

板级初始化:包含软硬件两部分在内的初始化过程,为随后的系统初始化和应用程序建立硬件和软件的运行环境。

系统级初始化:以软件为主的初始化过程,进行操作系统的初始化。

B、 设计硬件相关的设备驱动。