嵌入式正文Word文件下载.docx

上传人:b****5 文档编号:15956268 上传时间:2022-11-17 格式:DOCX 页数:15 大小:555.31KB
下载 相关 举报
嵌入式正文Word文件下载.docx_第1页
第1页 / 共15页
嵌入式正文Word文件下载.docx_第2页
第2页 / 共15页
嵌入式正文Word文件下载.docx_第3页
第3页 / 共15页
嵌入式正文Word文件下载.docx_第4页
第4页 / 共15页
嵌入式正文Word文件下载.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

嵌入式正文Word文件下载.docx

《嵌入式正文Word文件下载.docx》由会员分享,可在线阅读,更多相关《嵌入式正文Word文件下载.docx(15页珍藏版)》请在冰豆网上搜索。

嵌入式正文Word文件下载.docx

•支持8个MEMORYBANK,最大外部存储空间达256MB,并支持SDRAM;

•内置彩色LCD控制器;

•2路异步串口(UART);

•71个通用I/O口,包括8个外部中断源;

•8路10位A/D转换器;

•实时时钟(RTC)和看门狗电路(WATCHDOG);

1.1课程设计目的

1.学习LCD与ARM的LCD的控制器的接口原理;

2.掌握内置LCD控制器驱动编写方法;

3.学习调用简单的GUI绘图。

1.2程序开发环境

1.EL-ARM-820教学实验箱,PentiumII以上的PC机,仿真器电缆。

2.PC操作系统WIN98或WIN2000或WINXP,ARMADS1.2集成开发环境,H-JTAG调试代理软件。

2ADS集成开发环境介绍

ADS全称为ARMDeveloperSuite,是ARM公司推出的新一代ARM集成开发工具。

现在ADS的最新版本是1.2,它取代了早期的ADS1.1和ADS1.0。

在ADS工具诞生之前,一直使用的是ARMSDT工具,目前ARMSDT工具已经慢慢被淘汰。

ADS除了可以安装在WindowsNT4、Windows2000、Windows98和Windows95操作系统下,还支持WindowsXP和WindowsMe操作系统。

2.1 

ADS软件组成

ADS由命令行开发工具、GUI(GraphicsUserInterface,图形用户界面)开发环境(CodeWarrior和AXD)、实用程序和支持软件组成。

有了这些部件,用户就可以为ARM系列的RISC处理器编写和调试自己的开发应用程序了。

下面将分别介绍这4个组成部分。

1.命令行开发工具

命令行开发工具在实际应用中相对比较广泛,用它最大的好处就是可以将许多编译命令写在一个脚本文件中,然后只执行该脚本文件就可以让工具自动完成所有编译的工作。

2.GUI开发环境

ADSGUI开发环境包含CodeWarrior和AXD两种,其中CodeWarrior是集成开发工具,而AXD是调试工具。

3.实用程序

ADS除了提供上述工具外,它还提供以下的实用工具来配合前面介绍的命令行开发工具的 

 

使用。

(1)Flashdownloader是用于把二进制映像文件下载到ARM开发板上的Flash存储器的工具。

(2)fromELF是ARM映像文件转换工具。

该命令将ELF格式的文件作为输入文件,将该格式转换为各种输出格式的文件,包括plainbinary(BIN格式映像文件)、Motorola32-bitS-recordformat(Motorola32位S格式映像文件)、IntelHex32format(Intel32位格式映像文件)和Verilog-likehexformat(Verilog十六进制文件)。

fromELF命令也能够为输入映像文件产生文本信息,例如代码和数据长度。

(3)armar,ARM库函数生成器将一系列ELF格式的目标文件以库函数的形式集合在一起,用户可以把一个库传递给一个连接器以代替几个ELF文件。

4.支持的软件

ADS为用户提供ARMulator软件,使用户可以在软件仿真的环境下或者在基于ARM的硬件环境调试用户应用程序。

ARMulator是一个ARM指令集仿真器,集成在ARM的调试器AXD中,它提供对ARM处理器的指令集的仿真,为ARM和Thumb提供精确的模拟。

用户可以在硬件尚未做好的情况下,开发程序代码。

2.2 

ADS调试器

调试器本身是一个软件,用户通过这个软件使用debugagent可以对包含有调试信息的,正在运行的可执行代码进行比如变量的查看,断点的控制等调试操作。

ADS中包含有3个调试器:

AXD(ARMeXtendedDebugger):

ARM扩展调试器;

armsd(ARMSymbolicDebugger):

ARM符号调试器;

与老版本兼容的Windows或Unix下的ARM调试工具,ADW/ADU(ApplicationDebuggerWindows/Unix)。

下面对在调试映像文件中所涉及到的一些术语做一个简单的介绍。

Debugtarget

在软件开发的最初阶段,可能还没有具体的硬件设备。

如果要测试所开发的软件是否达到了预期的效果,这可以由软件仿真来完成。

即使调试器和要测试的软件运行在同一台PC上,也可以把目标当作一个独立的硬件来看待。

当然,也可以搭建一个PCB板,这个板上可以包含一个或多个处理器,在这个板上可以运行和调试应用软件。

只有当通过硬件或者是软件仿真所得到的结果达到了预期的效果,才算是完成了应用程序的编写工作。

调试器能够发送以下指令:

1. 

装载映像文件到目标内存;

2. 

启动或停止程序的执行;

3. 

显示内存,寄存器或变量的值;

4.允许用户改变存储的变量值。

3内置LCD控制器介绍

3.1概述

S3C44B0X内置的LCD控制器的作用是将显示缓存(在系统存储器中)的LCD数据传输到外部LCD驱动器,并产生必须的LCD控制信号。

它支持灰度LCD和彩色LCD。

在灰度LCD上,使用基于时间抖动算法(time-basedditheringalgorithm)和FRC(FrameRateControl)方法,可以支持单色、4级灰度和16级灰度模式的灰度LCD。

在彩色LCD上,可以支持256种色彩。

不同尺寸的LCD具有不同数量的垂直和水平象素、数据接口、数据宽度、接口时间和刷新率。

LCD控制器可以进行编程控制相应的寄存器值,以适应不同的LCD显示板。

3.2LCD控制器逻辑框图

图3.1为LCD控制器的逻辑框图。

从框图可以看出LCD控制器是用来实现传输显示数据及产生必要的控制信号,如VFRAME、VLINE、VCLK和VM。

除了控制信号,还有显示数据的数据端口VD[7:

0]。

图3.1为LCD控制器的逻辑框图

LCD控制器包括REGBANK、LCDDMA、VIDPRCS和TIMEGEN。

REGBANK有18个可编程寄存器,用于配置LCD控制器。

LCDDMA为专用DMA,可以自动地将显示数据从帧内存传送到LCD驱动器中。

通过专用DMA,可以实现在不需要CPU介入的情况下显示数据。

VIDPRCS从LCDDMA接收数据,将相应格式的数据通过TIMEGEN(包含可编程逻辑),以支持常见的LCD驱动器所需要的不同接口时间和速率的要求。

TIMEGEN部分产生VFRAME,VLINE,VCLK和VM等信号。

3.3LCD控制器提供的外部接口信号

VFRAME:

LCD控制器和驱动器之间的帧同步信号。

通知LCD屏新的一帧显示,LCD控制器在一个完整帧显示后发出VFRAME信号。

VLINE:

LCD控制器和驱动器间同步脉冲信号。

LCD驱动器通过它将水平移位寄存器的内容显示到LCD屏上。

LCD控制器在一整行数据全部传输到LCD驱动器后发出VLINE信号。

VCLK:

LCD控制器和驱动器之间的象素时钟信号。

VM:

LCD驱动器所使用的交流信号。

驱动器用VM打开或关闭象素的行和列电压极性。

VD[3:

0]:

LCD象素数据输出端口。

VD[7:

4]:

4LCD控制器的寄存器

LCD控制器通过18个可编程寄存器来配置LCD显示模块的尺寸、显示模式、接口数据宽度等。

4.1LCD控制寄存器一(LCDCON1)

LCDCON1所在地址:

0x01F00000;

属性:

R/W;

复位值:

0x00000000。

LCDCON1中各个位的意义见表4.1:

表4.1LCDCON1中各个位的意义

4.2LCD控制寄存器二(LCDCON2)

LCDCON2的地址:

0x01F00004;

LCDCON2中各个位的意义见表4.2:

表4.2LCDCON2中各个位的意义

4.3LCD控制寄存器三(LCDCON3)

LCDCON3的地址:

0x01F00040;

0x00。

LCDCON3中各个位的意义见表4.3:

表4.3LCDCON3中各个位的意义

4.4帧缓冲区开始地址一(LCDSADDR1)

LCDSADDR1的地址:

0x01F00008;

0x000000。

LCDSADDR1中各个位的意义见表4.4:

表4.4LCDSADDR1中各个位的意义

4.5帧缓冲区开始地址二(LCDSADDR2)

LCDSADDR2的地址:

0x01F0000C;

LCDSADDR2中各个位的意义见表4.5:

表4.5LCDSADDR2中各个位的意义

用户通过改变LCDBASEU和LCDBASEL的值来滚动屏幕,但在帧结束时,不能改变LCDBASEU和LCDBASEL的值,因为预取下一帧的数据优先于改变帧,如果这时改变帧,预取的数据将无效而且显示不正确。

为了检查LINECNT,应当屏蔽中断,否则如果在读LINECNT后,任意中断刚好执行,因为ISR的执行,LINECNT的值可能无效。

缓冲区开始地址三(LCDSADDR3)

LCDSADDR3的地址:

0x01F00010;

LCDSADDR3中各个位的意义见表6:

注:

PAGEWIDTH和OFFSIZE必须在ENVID=0时变化。

5内置LCD控制器的应用

LCD控制器能与大多数LCD显示模块接口,例如DMF50081,KCS057QV1AJ等。

KCS057QV1AJ是由KYOCERA公司生产,具有320240个象素点、带CFL背光的STN(超扭曲向列)256色LCD显示模块。

它不带LCD控制器,很容易与S3C44B0X内置的LCD控制器接口。

本节将详述它与LCD控制器的硬件接口连线以及它的驱动程序。

LCD控制器与KCS057QV1AJ接口设计

KCS057QV1AJ提供的外部接口信号线如下:

FRM:

驱动器扫描的同步信号线;

LOAD:

数据锁存信号线;

CP:

数据移位时钟信号线;

DISP:

显示控制信号线;

D[7:

8根显示数据输入线。

在KCS057QV1AJ与LCD控制器之间接线时,KCS057QV1AJ的FRM、LOAD、CP、D[7:

0]分别和L

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 少儿英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1