arm课程设计报告_第1页
arm课程设计报告_第2页
arm课程设计报告_第3页
arm课程设计报告_第4页
arm课程设计报告_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上精选优质文档-倾情为你奉上专心-专注-专业专心-专注-专业精选优质文档-倾情为你奉上专心-专注-专业信息技术工程学院课程设计课程:ARM嵌入式处理系统结构与编程题目:AD转换与LCD控制综合应用专业:计算机科学与技术班级:姓名:学号: 2013年1月6日至2013年1月13日一、实验目的和意义1、促进学生对ARM处理器系统的进一步理解。2、熟悉基于硬件平台的软件开发过程。该软件的开发涉及S3C2410处理器硬件初始化以及LCD控制器、AD转换器等外围设备的控制。3、通过该软件的开发,既能使学生掌握相关硬件的控制知识和编程技巧,更能培养学生的实践能力和独立进行系统开发的

2、能力。二、设备及工具PC机一台 WINDOWS XP 系统 ADS1.2集成开发环境 ARM的D/A接口实验、LCD的驱动控制实验. 基本要求1、程序首先通过AD转换输入实验箱上三个电位器的值。2、将三个值分别规范化为0255范围的数值。3、程序根据这三个值来控制LCD显示不同的颜色,即三个电位器的值代表显示像素R、G、B的值,全屏幕显示该R、G、B值确定的颜色。4、调整电位器时屏幕颜色实时进行相应变化。四、功能划分本课题有两部分组成,转换器部分负责采集三个电位器值的功能,并将值规范为0255内的数值。这三个值分别代表R、G、B,三个颜色叠加,便是最终显示的颜失。显示器部分负责的功能是将值转换

3、为相应的颜色并显示。1、ARMS3C2410X芯片自带一个路10位A/D转换器,最大转换率为500K,非线性度为正负.5位,其转换时间可以通过下式计算:如果A/D使用的时钟为50MHz,预定标器的值为49,那么:A/D转换频率=50MHz(49+1)=1MHz转换时间=1/(1MHz/5时钟周期)=1/200kHz=5us注意:因为A/D转换器的最高时钟频率是2.5MHz,所以转换速率可达500kSPS. 2、LCD 的功能是通过控制加电与否来使光线通过或挡住,从而显示图形。液晶得名于其物理特性:它的分子晶体,以液态存在而非固态。LCD 显示屏,没有驱动电路,需要与驱动电路配合使用。特点是体积

4、小,但却需要另外的驱动芯片。将A/D转换器与LCD相结合,便能实现转动电位器便能控制不同颜色的显示。五、设计原理LCD 显示器的基本原理就是通过给不同的液晶单元供电,控制其光线的通过与否,从而达到显示的目的。因此,LCD 的驱动控制归于对每个液晶单元的通断电的控制,每个液晶单元都对应着一个电极,对其通电,便可使光线通过(也有刚好相反的,即不通电时光线通过,通电时光线不通过。A/D 转换器是模拟信号源和CPU 之间联系的接口,它的任务是将连续变化的模拟信号转换为数字信号,以便计算机和数字系统进行处理、存储、控制和显示。在工业控制和数据采集及许多其他领域中,A/D 转换是不可缺少的。A/D转换的数

5、据可以通过中断或查询的方式来访问,如果是用中断方式,全部的转换时间(从A/D转换的开始到数据读出)要更长,因为中断服务程序返回和数据的访问的原因。如果是查询方式则要检测ADCCON15(转换结束标志位)来确定从ADCDAT寄存器读取的数据是否是最新的转换数据。六、详细设计及程序分析开发板初始化及初始化A/D转换器 extern U32 LCDBufferII2480640; /LCD输出显示声明,屏幕480*640void ARMTargetInit(void); void init_ADdevice()/AD开发板初始化rADCCON=(PRSCVL|ADCCON_ENABLE_START|

6、STDBM|PRSCEN);/获取三个电位器的值(函数实现)intGetADresult(int channel) rADCCON=ADCCON_ENABLE_START_BYREAD|(channel3)|PRSCEN|PRSCVL;hudelay(10);while(!(rADCCON&ADCCON_FLAG);/转换结束 return (0 x3ff&rADCDAT0);/返回采样值 主程序int main(void) int i,j,k,ADData3;/数组中分别存放电位器的处理值 U32 jcolor;ARMTargetInit();/开发版初始化LCD_Init();/LCD初始

7、化init_ADdevice();/初始化AD转换器Uart_Printf(0,n); while(1)for(i=0;i3;i+)/循环3次采集数据 ADDatai=GetADresult(i)/4;/数据采集,处理,将采集的数据规范为0255范围内 /ADDatai=GetADresult(i)/4; Uart_Printf(0,ADData%d=%dt,i,ADDatai); hudelay(5);/延迟 for (k=0;k240;k+)/宽240(屏幕的一半),第一个通道 for (j=0;j210;j+) /长为640的三分之一,第一块分屏 LCDBufferII2kj=0 xf8

8、;/R hudelay(5); LCDBufferII2kj=ADData0;/0 x00f80000 B,蓝色 for (k=0;k240;k+)/第二个通道 for (j=213;j422;j+) LCDBufferII2kj=0 x0000fc00;/G hudelay(5); LCDBufferII2kj=ADData1; for (k=0;k240;k+)/第三个通道 for (j=424;j222); jcolor=(ADData2&0 xff)16)|(ADData1&0 xff)8)|(ADData0&0 xff);/三个值分别为R、G、B的值,共24位,用十六进制表示为0 x

9、,后六位表示R、G、B,所以要将三个数转换为十六进制,然后拼接,分别左移16位,左移8位,不移位,实现拼接。 for (k=240;k480;k+) for (j=0;j640;j+) LCDBufferII2kj=jcolor;/像素位共480*640,为每一个像素点收集颜色 Uart_Printf(0,jcolor is: %xn, jcolor); LCD_Refresh();/整个显示屏的颜色收集满后,刷新 七、流程图初始化开发版ARMTargetInit()初始化LCDLCD_Init()初始化AD转换器init_ADdevice()用AD转换器采样三位电位器的值并将其规范化将采样的值转化为十六进制,并拼接转换给每一个像素点收集颜色LCD显示颜色刷新八、总结在这次一周的嵌入式课程设计中,经过我组成员的共同努力,并在老师的细心指导下,成功实现了A/D转换器和LCD显示的综合控制,在完成课设基本要求的基础上,加以分屏创新。在这过程中,我们都收获颇丰,从这学期学习ARM嵌入式系统结构与编程这课程开始,到学期末进行嵌入式课程设计结束,将书本上抽象的知识成功运用到实践中,并对ADS等相关软件

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论