1、问:为何要使用嵌入式Linux? TOP
答inux的能力、稳定性、弹性及scalability,再结合它所支援许多微处理机的架构、硬件设备、图形支持和通信协议,建立了Linux逐渐成为受欢迎的软件平台,并被广泛的应用在各种产品中。Linux的使用可以延伸到计算机应用的一系列产品,从IBM微小的Linux腕表到手持式装置(包括PDA和手机)和消费性娱乐系统到资讯家电产品、电话网络设备等.因为Linux以开放的和自由的原始码的形式存在,它的许多差异性和结构及支持的软件,都使Linux逐步发展,以满足市场和各种应用所需的多变化需求。有小的程序核心版本和加强即时处理的版本,而尽管最初的Linux是PC架构的作业系统,现在的Linux已经可以架构在各种非x86的CPU上,而且在不论是否具有存储器管理单元的CPU,其中包括PowerPC, ARM, MIPS, 68K 和甚至微控制器上。
2、问inux和uClinux的比较?它们都支持何种文件系统? TOP
答:1)、因为uClinux是支持没有存储管理单元的微处理器,因此多任务处理的能力变得很微妙。绝大部分在uClinux上执行的应用程序,并不需要多任务处理的能力。除此之外,大部分的二进制执行码和原始码都会被重新写过以便更紧缩和减少程序码,这意味着uClinux和Linux2.0的核心比起来将是非常非常的小. 2)、NFS、ext2、ext3、MS-DOS和FAT16/32是Linux能支持的几种文件系统,他与uClinux最大的不同点就在于uClinux没有MMU管理单元。
8、问:用ARM仿真器连接目标板时提示目标板没有找到,怎么办? TOP
答:请按照下列提示进行检查:1)、仿真器、计算机以及目标板之间连接是否正确;2)、 目标板是否上电;3)、 如果上述设置都正确并且计算机并口是好的,请检查调试设备是否正确,方法是在工程设置对话框的General页中检查Debugger device是否选择正确,该选择必须与目标板对应。
9、问:ARM开发的调试方法? TOP
答:用户选用ARM处理器开发嵌入式系统时,选择合适的开发工具可以加快开发进度,节省开发成本。因此集成开发环境(IDE)一般来说是必不可少的,至于嵌入式实时操作系统、评估板等其他开发工具则可以根据应用软件规模和开发计划选用。使用集成开发环境开发基于ARM的应用软件,包括编辑、编译、汇编、链接等工作全部在PC机上即可完成,调试工作则需要配合其他的模块或产品方可完成,目前常见的调试方法有以下几种1)部分集成开发环境提供了指令集模拟器,可方便模拟调试工作,但是由于指令集模拟器与真实硬件环境相差很大,因此用户最终必须在硬件平台上完成整个应用的开发。 (2)驻留监控软件:驻留监控软件是一段运行在目标板上的程序,集成开发环境中的调试软件通过以太网口、并行端口、串行端口等通讯端口与驻留监控软件进行交互来调试。 驻留监控软件对硬件设备的要求比较高,一般在硬件稳定之后才能进行应用软件的开发,同时它占用目标板上的一部分资源,而且不能对程序的全速运行进行完全仿真,所以对一些要求严格的情况不是很适合 (3)JTAG仿真器:JTAG仿真器也称为JTAG调试器,是通过ARM芯片的JTAG边界扫描口进行调试的设备。JTAG仿真器比较便宜,连接比较方便,通过现有的JTAG边界扫描口与ARM CPU核通信,它无需目标存储器,不占用目标系统的任何端口,而这些是驻留监控软件所必需的。另外,由于JTAG调试的目标程序是在目标板上执行,仿真更接近于目标硬件,因此,许多接口问题被最小化了。使用集成开发环境配合JTAG仿真器进行开发是目前采用最多的一种调试方式 (4)在线仿真器:在线仿真器使用仿真头完全取代目标板上的CPU,可以完全仿真ARM芯片的行为,提供更加深入的调试功能。但其价格高昂使其难以普及。
10、问:ARM芯片选择的一般原则是什么? TOP
答:1)ARM芯片内核: 如果希望使用WinCE或Linux等操作系统以减少软件开发时间,就需要选择ARM720T以上带MMU功能的ARM芯片,但目前有uCLinux等少数几种Linux不需要MMU的支持;2)系统时钟控制器;3)内部存储器容量;4)USB接口;5)GPIO数量;6)中断控制器;7)IIS接口:即集成音频接口;8)nWAIT信号:外部总线速度控制信号;9)RTC;10)LCD控制器: 有些ARM芯片内置LCD控制器,有的甚至内置64K彩色TFT LCD控制器。在设计PDA和手持式显示记录设备时,选用内置LCD控制器的ARM芯片如S3C2410较为适宜;11)PWM输出;12)ADC和DAC: 有些ARM芯片内置2~8通道8~12位通用ADC,可以用于电池检测、触摸屏和温度监测等;13)扩展总线;14)UART和IrDA:几乎所有的ARM芯片都具有1~2个UART接口,可以用于和PC机通讯或用Angel 进行调试;15)DSP协处理器: ARM DSP结构的ARM芯片;16)内置FPGA:有些ARM芯片内置有FPGA,适合于通讯等领域;17)计数器和看门狗;18)电源管理功能;19)DMA控制器。最后需要注意的是封装问题。