欢迎来到天天文库
浏览记录
ID:12184878
大小:2.32 MB
页数:15页
时间:2018-07-16
《嵌入式系统课程设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、嵌入式系统课程设计报告目录1、设计任务及要求12、总体设计思路及功能描述13、LCD、DMA工作原理13.1LCD实验原理13.2DMA原理43.3设计内容53.3.1DMA绘图53.3.2虚拟界面84、对比两种方法的时间95、调试的步骤及调试过程中出现的问题以及解决方法106、设计心得107、致谢11参考文献11附录121、设计任务及要求本实验主要是用S3C2410的DMA功能设计绘制直线,填充矩形,填充bmp图片。对比非DMA方式在时间上的改进。对比两种方法的实现一张图片的时间。2、总体设计思路及功能描述本实验主要使用s3C2410的DMA控制器,lcd控制器,来实现基本的功能,需
2、要熟悉以上两个模块的基本工作原理,通过DMA方式,把存储器的bmp图直接传送到lcd缓冲区,实现图片在lcd上的显示。DMADma描述符列表中断描述符缓冲区cpu外设(LCD)3、LCD、DMA工作原理3.1LCD实验原理S3C2410中具有内置的LCD控制器,它能将显示缓存(在SDRAM存储器中)中的LCD图像数据传输到外部的LCD驱动电路上的逻辑功能。它支持单色、4级、16级灰度LCD显示,以及8位彩色、12位彩色LCD显示。在显示灰度时,它采用时间抖动算法(time-basedditheringalgorithm)和帧率控制(FrameRateControl)方法,在显示彩色时,
3、它采用RGB的格式,即RED、GREEN、BLUE,三色混合调色。通过软件编程,可以实现332的RGB调色的格式,565全彩输出,5551全彩输出等。对于不同尺寸的LCD显示器,它们会有不同的垂直和水平象素点、不同的数据宽度、不同的接口时间及刷新率,通过对LCD控制器中的相应寄存器写入不同的值,来配置不同的LCD显示板。另外,还可以设置虚拟屏幕,增加显示的面积。LCD模块内部电路结构13常用的控制寄存器有:LCDCON1:LCD显示器类型控制寄存器CLKVAL决定LCD的刷新率,一般刷新率应大于50Hz13LCDCON2:LCD垂直尺寸控制寄存器LCDCON3:LCD水平尺寸控制寄存器
4、LCD缓冲区设置:LCDSADDR1LCDSADDR213LCDSADDR3:用于设置虚拟屏幕行宽设置offsize+pagewidth=虚拟屏幕大小内存中的数据与显示像素的对应关系,低16位在低地址。3.2DMA原理1).DMA的工作过程1.当外设准备就绪,希望进行DMA传送时,向DMA控制器(DMAC)发出DMA请求信号(DREQ)。DMAC收到此信号后,向CPU发出总线请求信号(HOLD)。 2.CPU在完成当前总线操作后立即对DMA请求信号做出响应:先放弃对总线的控制(包括控制总线、数据总线、地址总线),然后将有效的HLDA信号加到DMAC上。此时,CPU便放弃对总线的控制,D
5、MAC获得总线的控制权。 3.DMAC获得总线的控制权后,向地址总线发出地址信号,指出传送过程需使用的内存地址(DMAC内部设有“地址寄存器”,在DMA操作过程中,每传送一字节数据,DMAC自动修改地址寄存器的值,以指向下一个内存地址)。同时,向外设发出DMA应答信号(DACK),实现该外设与内存之间进行DMA传送。 4.在DMA传送期间,DMAC发出内存和外设的读/写信号。 5.为了决定数据块传输的字节数,在DMAC内部必须有一个“字节计数器”。在开始时,由软件设置数据块的长度,在DMA传送过程中,每传送一字节,字节计数器减1,减为0时,该次DMA传输结束。 6.DMA过程结束时,D
6、MAC向CPU发出结束信号(撤消HOLD请求),将总线控制权交还CPU。2)、DMA控制寄存器器13S3C2410每个DMA通道有9个控制寄存器,4个通道,共有36个寄存器。每个DMA通道有6个用于控制DMA传输,3个用于监控DMA控制器的状态。要进行DMA操作,首先需要对这些寄存器进行正确配置。下面介绍相关寄存器。(由于图太多,这里没有贴出来,大家可以在三星的S3C2401DataSheet里面找到对应的表)1、DMA初始化数据源(DISRC)寄存器组:分别对应着4个相关寄存器,主要用于初始化传输的数据源的基地址。2、DMA初始化数据源控制(DISRCC)寄存器:主要用于选择数据源的
7、位置(在APB还是在AHB上)以及决定地址递增还是固定。3、DMA初始化目标(DIDST)寄存器:主要用于初始化传输目标开始地址。4、DMA初始化目标控制(DIDSTC)寄存器:主要用于选择目标的位置(在APB还是在AHB上)以及决定地址递增还是固定。5、DMA控制(DCON)寄存器:主要功能选择请求模式或者握手模式、选择DREQ/DACK同步、使能/禁止CURR_TC中断设置、选择DataSize、选择单一服务或整体服务模式、选择DMA请求源
此文档下载收益归作者所有