STM32学习之路-LCD(2)<LCD初始化>
来源:互联网 发布:java代码生成文件夹 编辑:程序博客网 时间:2024/06/06 04:03
这些天一直在研究LCD的初始化函数,因为不过是用IO口模拟时序还是用FSMC来驱动LCD,都必须要弄好LCD的初始化
其实LCD的初始化就是跟着LCD IC的datasheet来写寄存器,大部分都使用上面的默认值,网上有很多修改的例子,这里就不
放出来了.但是我想写下一些比较重要的东西。
这是从网上下载来的一个文件的前半部分:
当然,别的型号的IC也是有这些东西的,不过可能有些地址不同而已.
R0,这个命令有两个功能,如果对它写,则最低位为OSC,用于开启和关闭振荡器。而如果对它读操作,
则返回的是控制器的型号。这个命令最大的功能是通过读它可以得到控制器的型号,而我们的代码知道了控制器的型号之后,
可以针对不同型号的控制器,进行不同的初始化。因为93xx系列的初始化,其实都比较类似,我们完全可以用一个代码兼容好几个控制器。
R3,入口模式命令。我们重点关注的是I/D0、I/D1、AM这三个位,因为这三个位控制了屏幕的显示方向。
AM:控制GRAM更新方向。当AM=0的时候,地址以行方向更新。当AM=1的时候,地址以列方向更新。
I/D[1:0]:当更新一个数据之后,根据这两个位的设置来控制地址计数器自动增加/减少1,其关系如下:
通过这几个位置的设置,我们就可以控制屏幕的显示方向了。
还有一点就是关于是否要硬件复位这里, 这里要看芯片的datasheet,看Bus Interface这里是否要求硬件复位R61509就明确要求了这一点:
所以在初始化函数开头是要加上复位的代码的
GPIO_ResetBits(GPIOE, GPIO_Pin_1); //硬件复位
Delay(0x1AFFf);
GPIO_SetBits(GPIOE, GPIO_Pin_1 );
Delay(0x1AFFf);
还有一点就是关于伽马校准寄存器的配置,实在是看不懂为要这样设置这些参数
LCD_WR_CMD(0x0300, 0x00C00);//gammaLCD_WR_CMD(0x0301, 0x05A0B);LCD_WR_CMD(0x0302, 0x00906);LCD_WR_CMD(0x0303, 0x01017);LCD_WR_CMD(0x0304, 0x02300);LCD_WR_CMD(0x0305, 0x01700);LCD_WR_CMD(0x0306, 0x06309);LCD_WR_CMD(0x0307, 0x00C09);LCD_WR_CMD(0x0308, 0x0100C);LCD_WR_CMD(0x0309, 0x02232);而且不同的IC芯片的伽马校正设置参数也不一样.. 或许看到这篇文章的大虾又刚好知道这里是怎么回事的话,那就请拉小弟一把,解释下什么原因
剩下的还有就是其他一下显示图片,字符的函数什么的了, 下次再写下来,因为还没研究多少呢.
- STM32学习之路-LCD(2)<LCD初始化>
- STM32学习之路-FSMC与LCD
- STM32学习之路-LCD驱动(1)<基础知识>
- STM32学习之路-LCD(3)<显示图片>
- STM32学习之路-LCD(4)<显示字符>
- STM32学习--FMSC 和 LCD(2)
- stm32学习笔记(十一)LCD显示
- 寒假学习之stm32(10)----显存,fsmc, LCD的驱动(待解决。。)
- STM32 FSMC学习笔记+补充(LCD的FSMC配置)
- STM32学习笔记(6.1):LCD的显示
- STM32学习笔记(6.2):LCD的显示
- STM32学习笔记(6):LCD的显示
- STM32学习笔记(6):LCD的显示
- STM32 FSMC学习笔记+补充(LCD的FSMC配置)
- STM32学习笔记(6.1):LCD的显示
- STM32学习笔记(6.2):LCD的显示
- STM32学习--FMSC 和 LCD(1)
- STM32学习--FMSC 和 LCD(3)
- qiaoranliqu
- Scala学习1——搭建环境
- thinkpad X240 安装Ubuntu14.04 系统并搭建android开发环境
- [转]逆向思维 向您洞开一个新世界 - 此文价值千万以上
- 为什么我们喜欢用 sigmoid 这类 S 型非线性变换?
- STM32学习之路-LCD(2)<LCD初始化>
- 最近从网上看了篇单例的文章,拿来记录一下
- 主题模型及其在文本情感分析中的应用
- 安卓实训第十天:利用SharedPreferences来实现数据的保存和读取,以及实现手机电话备份,XMLserializer
- .net调用java 的webService WSDL 接口地址
- UESTC1712 线段树+质因子分解+乘法逆元+快速幂
- C# Tabcontrol组件怎么(切换)显示Form窗体
- 递归之整数划分
- java日志信息 log4j 使用方法