ARM应用相关论文的13篇参考文献摘录与分析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ARM应用相关论文的13篇参考文献摘录与分析

1.ARM 嵌入式系统C 语言编程

在无操作系统支持的嵌入式系统软件中,系统引导(BOOT) 、驱动程序、动态内存管理、I/O、通信以及应用软件等的编写,需要结合采用汇编语言(约占10 %) 和C 语言(约占90 %)系统引导(BOOT) :

本部分完成系统初始化工作,用汇编语言实现,包括硬件初始化、栈寄存器的设置、全局变量的初始化或清0、RAM中运行的模块的加载、堆参数的初始化。系统引导模块完成各种初始化工作后,用一条跳转指令进入C 的主入口Main ,控制权从此移交给了C 应用程序

内存管理:

C 语言中动态内存分配与释放主要由malloc 和mfree 两个标准库函数实现。malloc 从系统空闲内存中分配合适的内存块,mfree 函数完成内存块的回收。这两个函数一般需要操作系统内核的支持,但在ARM 裸平台上,不能直接调用。为此编写了malloc 和mfree 两个函数,实现动态存储管理的功能。嵌入式系统里,代码区位于只读存储器(如Flash) 中,数据区和栈区则位于RAM中,因此代码区和数据区一般并不相连。数据区和栈区是分开的,内存动态管理,需要维护两张全局表,一张是可利用空间表(avail list) ,管理空闲内存块的信息,另一张是已分配空间表(used list) ,管理占用内存块,用双向循环链表实现,三种不同的分配策略,即首次拟合法、最佳拟合法和最差拟合法

系统I/ O:

把LCD 作为字符型终端时,一个关键点是定义好光标

驱动程序:

外围硬件设备一般通过中断与CPU 进行通信中断处理程序的速度对整个系统的性能影响是很大的。这些模块应该直接用汇编语言编写,并尽可能优化算法

应用程序:

凡是由需操作系统支持的标准库函数均不能使用,除非自己编写(如malloc 和mfree)

例如:int 3 buf ;

if ( (buf = malloc (2048 3 sizeof (int) ) ) = = NULL)

return ERROR;

P3 other processing 3P

mfree (buf) ;

坚决避免使用递归函数!使用malloc 函数时要注意两点:一是要检查返回值是否为0 ;二是要适时调用mfree 函数释放内存

2.基于ARM9嵌入式的多功能无损检测仪

硬件以ARM920T核的S3C2410X嵌入式CPU作为核心器件,主要包括存储器扩展电路、传感器检测及信号转换电路、LCD显示电路、键盘接口电路、通信接口电路、PLL精确测时电路及声光报警电路

LCD显示电路:

S3C2410X中内置了LCD 控制器,它具有将显示缓存(在系统存储器中)中的LCD图像数据传输到外部LCD驱动电路的逻辑功能,支持灰度LCD和彩色LCD。检测仪中所使用的LCD显示屏是8寸16 bit真彩屏,在S3C2410X中内置的LCD控制器驱动经4块 74HC245 驱动芯片就可实现

S3C2410X与LCD显示屏的接口

检测系统的模块化设计:

软件设计采用了当前嵌入式开发流行的三层架构体系:

(1)面向硬件的驱动层:主要提供硬件的启动、关闭及调节参数,如LCD驱动程序、A /D驱动程序、串行口驱动程序、CAN总线驱动程序、A /D转换器驱动程序等;

(2)面向控制的系统层:主要提供对驱动层的功能调用并向用户层提供接口调用;

(3)用户层:用户可通过一系列的函数接口,包括对不同传感器的信号采集模块、数字信号处理模块、各种检测的算法及解决方案模块等,以达到对零件或材料的无损检测。另外,检测仪系统采用了基于模块化的设计思想以利于必要时的升级与替代。基于ARM9的多功能无损检测仪采用了嵌入式Linux平台开发,在对Linux的移植时定制内核、定制用户程序、编译Linux(把应用程序和Linux内核一起编译) 、烧写映象文件及运行。由于整个过程比较复杂,涉及到汇编程序、C语言程序、驱动程序、程序调试等

3.基于ARM 的温度控制系统的设计

系统的显示采用LCD,设计液晶显示器和控制电路时,必须提供电源驱动、偏压驱动以及LCD 显示控制器。由于S3C44B0X 本身自带LCD 控制器,所以控制电路的设计可以省去显示控制电路,只需进行电源驱动和偏压驱动的电路设计。本系统选用的液晶屏为GPG1624UWE1 单色16 级灰度的2.7 寸液晶屏,与S3C44B0X 采用4 位单扫描方式连接。此液晶屏的驱动电源是22.6V,这里采用MC34063A 电源管理模块,通过R8调节将5V的电压升至22.6V 以提供液晶显示屏的驱动电源,如图3 所示;偏压电源由系统升压后的电源分压得到,LM324 用来稳定电压、增强带载能力,如图4 所示。

4.基于嵌人式ARM的LCD显示接口的设计

在Linux操作系统下, 基于帧缓冲的LCD驱动程序的实现方法

S3c2410内置的LCD控制器支持单色,,彩色STNLCD屏和彩色TFTLCD屏,本设计是夏普公司的TFT-LCD模块LQ080V3DG01作为显示器, 该模块具有640*480的分辨率、18位的颜色深度, 与S3c2410的LCD接口直接相连。

控制器用来传输视频数据和必要的控制信号。控制器的功能是产生显示驱动信号, 驱动显示器。通过读写一系列的寄存器完成对它的配置。S3c2410中的LCD控制器可支持单色、彩色显示器。图2所示为S3c2410控制器内部的逻辑结构, REGBANK是LCD控制器的寄存器组,用来对LCD的各项参数进行设置,LCDCDMA是控制器专用的DMA信道,负责将视频资料从系统总线上取出来,VIDPRCS接受从LCDCDMA来的视频数据并在将其改变到合适数据格式后经VD[23:0]将之送到LCD驱动器,TIMEGEN由可编程逻辑组成,以支持不同LCD驱动器的接口时序和速率的不同要求。TIMEGEN产生VSYNC、HSYNC、VCLK、VDEN信号等。

控制寄存器内有寄存器LCDCON1-5。它与模块LQ080V3DG01的接口设置如下:

5.ARM嵌入式系统的LCD驱动设计

6.基于单片机的监测数据无线传输装置设计与实现

无线收发采用PTR2000模块,经过单片机采集、处理并传送到串行口,经PTR2000调制成无线信号发送出去;在监测站端, PTR2000接收监测点PTR2000发射的无线信号,经过解调、CRC 校验等处理,再经过MAX232电平转换,传输给监测站端的监测计算机,经计算机处理后显示、存储并作为控制动作的依据。

PTR2000无线数据传输模块采用nRF401芯片,FSK调制/解调技术,最高通信速率可达19200b/s,TTL电平可直接与单片机连接,具有较强的抗干扰能力,其引脚说明如下: 1、VCC,正电源, 2. 7~5. 25V; 2、CS,频道选择, CS=0选择工作频道1(433.92MHz),CS=1选择频道2(434. 33MHz); 3、DO,数据输出; 4、DI,数据输入; 5、GND,地; 6、PWR,节能控制, PWR=0低功耗待机, PWR=1正常工作; 7、TXEN,发射接收控制,TXEN=1发射状态,TXEN=0接收状态。系统中监测点无线传输模块设置为频道1工作,正常工作于发射状态。监测点硬件电路部分原理图如图2所示。

监测站端硬件电路设计比较简单,主要涉及到TTL电平串口数据到RS232电平串口数据的转换。其简要原理图如图4所示。

相关文档
最新文档