北航ARM9嵌入式实验报告2.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
北航ARM9嵌入式实验报告2

实验二 LCD 和电机综合实验 实验目的 1.了解LCD的基本概念与原理。 2.理解LCD的驱动控制。 3.熟悉用ARM内置的LCD控制器驱动LCD。 4. 熟悉ARM本身自带的6路即三对PWM,掌握相应寄存器的配置。 5. 了解直流电机的工作原理。 6. 掌握带有PWM和I/O的CPU编程实现其相应功能的主要方法。 实验内容 本实验包括直流电机控制实验与LCD驱动显示实验,编程实现用ARM内置的LCD控制器来驱动LCD,编程实现ARM芯片的一对PWM输出用于控制直流电机的转动,并通过电位器控制其转速,且根据电位器值的不同使屏幕显示不同颜色。 预备知识 1. 了解LCD显示器的基本原理。 2. 了解直流电机的基本原理。 3. 掌握通过ARM自带的A/D转换器的使用。 实验设备 硬件:模拟电压信号源、2410s教学实验箱、PC机Pentium100以上、ARM920T的JTAG仿真器、串口连接线。 软件:PC机操作系统WinXP 、ARM ADS1.2集成开发环境、超级终端通讯程序、仿真器驱动程序。 实验步骤 1以实验四模板,将实验六 inc目录下的LCD320.H 和src目录下的LCD640.C拷到 模板下的相应目录。 2 包含以下头文件 #include inc/lcd320.h“ 3 声明引用的变量 extern U32 LCDBufferII2[480][640]; 4 删除模板内Main函数中和步进电机相关的内容,简化Main函数 5 在Main函数里 LCD_Init ; 6.将AD采样的结果在驱动电机的同时,和jcolor建立起联系。 7 显示缓冲区填充LCDBufferII2[k][j] jcolor; 8 调用LCDFresh()函数。 9. 实验代码: #define ADCCON_ENABLE_START_BYREAD 0x0 1 // 修改AD工作模式,设置为手动启动AD转换 int GetADresult int channel rADCCON ADCCON_ENABLE_START_BYREAD| channel 3 |PRSCEN|PRSCVL; rADCCON | 0x1; //启动AD转换 hudelay 10 ; while ! rADCCONADCCON_FLAG ;//转换结束 return 0x3ffrADCDAT0 ;//返回采样值 typedef union U32 RGB; U8 color[4]; Color; int main void char Revdata[10]; volatile int r, tr; volatile int g, tg; volatile int b, tb; volatile Color c; int i, j; ARMTargetInit ; //开发版初始化 init_ADdevice ; LCD_Init ; while 1 r GetADresult 0 ; g GetADresult 1 ; b GetADresult 2 ; //读取三个通道AD值 tr r 2; tg g 2; tb b 2; //截取高八位数据 if rUTRSTAT0 0x1 //有输入,则进入 *Revdata RdURXH0 ; if Revdata[0] 1 //当用户按下1时刷屏 c.color[0] tr; c.color[1] tg; c.color[2] tb; c.color[3] 0x00; Uart_Printf 0,RGB is: %x\n, c.RGB ; for i 0; i LCDHEIGHT; i++ for j 0; j LCDWIDTH; j++ LCDBufferII2[i][j] c.RGB; //复制数据 Uart_Printf 0,\nCopy data done!\n ; LCD_Refresh ; //刷屏 Uart_Printf 0,\nRefresh data done!\n ; return 0; 实验思考 1. 液晶显示的基本原理是什么? 答:液晶显示的基本原理就是通过给不同的液晶单元供电,控制其光线的通过与否,从而达到显示的目的。LCD 的驱动控制归于对每个液晶单元的通断电的控制,每个液晶单元都对应着一个电极,对其通电,便可使用光线通过。一般带有驱动模块的显示使用这驱动,由于LCD已经带有驱动硬件电路,因此模块给出的是总线接口,便于与的总线进行接口而且还自带显示缓存,只需要将要显示的内容送到显示缓存中就可以实

文档评论(0)

zilaiye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档