- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六章 基于UP-NETARM2410-S的各子模块原理及编程 东软人才实训中心 第六章:基于UP-NETARM2410-S的各子模块原理及编程 6.1LCD工作原理及编程 1LCD(Liquid Crystal Display)原理 三个特性: 如果让电流通过液晶层,这些分子将会以电流的流向方向进行排列,如果没有电流,它们将会彼此平行排列。 如果提供了带有细小沟槽的外层,将液晶倒入后,液晶分子会顺着槽排列,并且内层与外层以同样的方式进行排列。 液晶层能使光线发生扭转。液晶层表现的有些类似偏光器,这就意 味着它能够过滤除了那些从特殊方向射入之外的所有光线。此外,如 果液晶层发生了扭转,光线将会随之扭转,以不同的方向从另外一个 面中射出。 总结:液晶的这些特点使得它可以被用来当作一种开关——即可以阻 碍光线,也可以允许光线通过。 2 LCD接口设计 LCD显示模块 液晶显示是一种被动的显示,它不能发光,只能使用周围 环境的光。它显示图案或字符只需很小能量。液晶显示所 用的液晶材料是一种兼有液态和固体双重性质的有机物, 它的棒状结构在液晶盒内一般平行排列,但在电场作用下 能改变其排列方向。 3 LCD的显示方式 反射型LCD:底偏光片后面加了一块反射板,它一般在户外和光线良好的办公室使用。(笔记本电脑) 透射型LCD:底偏光片是透射偏光片,它需要连续使用背光源,一般在光线差的环境使用。(一般微控制器使用LCD) 透反射型LCD:是处于以上两者之间,底偏光片能部分反光,一般也带背光源,光线好的时候,可关掉背光源;光线差时,可点亮背光源使用LCD。 4 LCD的驱动方式 带有驱动电路的LCD 显示模块,这种LCD 可以方便地与各种低档单片机进行接口,使用总线方式驱动,基本上属于半成品。 LCD 显示屏,没有驱动电路,需要与驱动电路配合使用。特点是体积小,但却需要另外的驱动芯片。 一些新型的嵌入式处理器也可以直接使用芯片上的内置LCD控制器来构 造显示模块,比如:S3C2410X可以支持灰度LCD和彩色LCD,灰度模式 下可支持单色,4级灰度和16级灰度,彩色模式下可支持256色,LCD的 实际尺寸支持到640X480。 (1)总线驱动方式 驱动模块具有八位数据总线,外加一些电源接口和控制信 号。而且自带显示缓存,只需要将要显示的内容送到显示 缓存中就可以实现内容的显示下图为一个典型的显示模块 (HY-12864B)提供的总线接口。 (2)控制器扫描方式 S3C2410X 中具有内置的LCD 控制器,它具有将显示缓存(在系统存储器中)中的LCD图象数据传输到外部LCD 驱动电路的逻辑功能。 S3C2410X 中内置的LCD 控制器可支持灰度LCD 和彩色LCD。 5 嵌入式处理器与LCD的连接 6 LCD模块的显示控制 从系统结构上来讲,由于显示器模块中已经有显示存储器。显存中的 每一个单元对应LCD上的一个点,只要显存中的内容改变,显示结果便 进行刷新。于是便存在两种刷新: 直接根据系统要求对显存进行修改,一种是只需修改相应的局部就可以,不需要判断覆盖等;另一种就是有覆盖问题,计算起来比较复杂,而且每做一点小的屏幕改变就进行刷新,将增加系统负担。 专门开辟显示内存,在需要刷新时候由程序进行显示更新。这样,不但可以减轻总线负荷,而且也比较合理,在有需要的时候进行统一的显示更新,界面也可以比较美观,不致由于无法预料的刷新动作导致显示界面闪烁。 S3C2410扫描方式 显示滚动 LCD控制器 LCDCON1 LCDCON2 LCDCON3 LCDCON4 LCDCON5 LCDSADDR1 LCDSADDR2 LCDSADDR3 DITHMODE REDLUT GREENLUT BLUELUT LPCSEL TPAL 具体内容可参见UP-NET2410X实验手册的LCD驱动试验部分。 嵌入式C语言程序编写的构架模型 #include预编译指令 每个C语言代码,一般要用#include编译指令将所需要的头文件加到该程序中,这是很有必要的,尤其是对编写较大的程序代码时。随后是定义一些外部变量,并对程序中的函数进行声明。 主函数main()的编写; 在每一个C语言代码中,一定要有一个main()函数,在该函数中完成该程序文件所要完成的各个功能,一般是通过调用各个子函数来完成。当然,它也可以调用其他文件中的函数。 完成相应功能的各个功能函数的编写。 各个函数之间可以相互调用。 7 LCD编程步骤 int main(void) { int i,j,k; U32 jcolor; ARMTargetInit(); //开发版初始化 LCD_Init(); //LC
文档评论(0)