μC/GUI在MSGl9264液晶上的移植
[09-12 17:52:10] 来源:http://www.88dzw.com 单片机学习 阅读:8526次
文章摘要:在LCDConf.h文件中定义了与硬件有关的各种属性,如液晶的大小、颜色以及与液晶的接口函数。而LCD驱动文件则负责把μC/GUI的各种函数解释成LCDConf.h文件中定义的液晶接口函数,这个文件与具体的硬件连接无关。μC/GUI与LCD的硬件接口通过驱动文件把硬件接口函数转化为LCDConf.h中定义的LCD读写函数。2.3 移植过程2.3.1 修改LCDConf.hLCDConf.h定义了LCD的大小、颜色,对应的LCD控制器以及与硬件连接有关的LCD读写函数。按照μC/GUI的规定,底层的读写LCD函数包括LCD_WRITE_A1()(即写LCD命令)、LCD_WRITE_A0()(写
μC/GUI在MSGl9264液晶上的移植,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com在LCDConf.h文件中定义了与硬件有关的各种属性,如液晶的大小、颜色以及与液晶的接口函数。而LCD驱动文件则负责把μC/GUI的各种函数解释成LCDConf.h文件中定义的液晶接口函数,这个文件与具体的硬件连接无关。
μC/GUI与LCD的硬件接口通过驱动文件把硬件接口函数转化为LCDConf.h中定义的LCD读写函数。
2.3 移植过程
2.3.1 修改LCDConf.h
LCDConf.h定义了LCD的大小、颜色,对应的LCD控制器以及与硬件连接有关的LCD读写函数。按照μC/GUI的规定,底层的读写LCD函数包括LCD_WRITE_A1()(即写LCD命令)、LCD_WRITE_A0()(写LCD数据)、LCD_READ_A0()(读LCD状态)、LCD_READ_A1()(读LCD数据)。这些函数的实现与底层硬件有关,必须根据硬件连接的具体情况编写这些函数。
MSP430F149是一款低功耗单片机,其供电电压为1.8~3.6V,而MSGl9264液晶为5V供电液晶,输入高电平为3.3V。为确保与液晶的输入电平兼容,MSP430F149的供电电压可设置为3.6V,这样就可以把MSP430F149与液晶直接连接而无需额外的驱动芯片。MSP430F149与LCD的接口电路如图4所示。
LCD_WRITE A1()函数的具体实现如下:
#define LCD_WRITE_A1(Byte) //定义写LCD控制命令函数
{ //参数Byte为要写入液晶的数据。
P40UT:Byte; //把数据放到LCD的数据线上
_NOP(); //空指令,确保能可靠地写入
P1OUT&=0xef; //LCDRS=0,表示写命令
P10UTI=Ox20; //LCDEN=1
_NOP(); //空指令
P1OUT&=0xcf; //LCDEN=0,把数据写入LCD
显示RAM
_NOP();
}
2.3.2 编写LCD驱动文件
图3中的μC/GUI硬件接口函数主要由表2所示函数构成。
μC/GUI提供的函数库和各种显示效果都是通过表2所示接口函数在LCD上实现,所以LCD驱动文件的实现也就是把这些硬件接口函数的实现。 由于MSGl9264液晶与μC/GUI提供的LCDSLin较相似,所以笔者以μC/GUI提供的LCDSLin.C文件为基础,编写针对MSGl9264液晶的驱动程序。
通过分析LCDSLin文件可以发现,液晶驱动程序的核心是画点函数,大部分硬件接口函数都可由画点函数实现。因此,改造画点函数及其调用函数成为移植的重点问题。
画点函数的要求是改变液晶上任意点的颜色而不影响其他点的颜色。考虑到单片机MSP430F149的输入电压不能超过3.6V,笔者没有采取读液晶显示器内部显示RAM的方法,而是在MSP430F149的RAM中定义一个数组存储LCD显示的数据。此数组可定义为unsigned char Cache[((LCD_YSIZE+7)>>3)xLCD_XSIZE]。LCD_XSIZE、LCD_YSIZE表示液晶的大小,在LCDConf.h文件中定义。考虑到液晶的长度可能不是8的整倍数,可定义数组大小为(LCD_YSIZE+7)>>3)xLCD_XSIZE。
在定义了Cache的基础上,画点函数可如下实现:
《μC/GUI在MSGl9264液晶上的移植》相关文章
- › 芯片引脚及主要特性COP888CGP/884CGP,8位微控制器
- › 芯片引脚及主要特性COP888CGMH,8位微控制器
- › 晶体二极管STPS10170CT、STPS10170CR、STPS10170CB、STPS10170CG内...
- › NXP新款CGV高速转换器演示板采用LatticeECP3 FPGA器件
- › CGI脚本工作原理
- 在百度中搜索相关文章:μC/GUI在MSGl9264液晶上的移植
- 在谷歌中搜索相关文章:μC/GUI在MSGl9264液晶上的移植
- 在soso中搜索相关文章:μC/GUI在MSGl9264液晶上的移植
- 在搜狗中搜索相关文章:μC/GUI在MSGl9264液晶上的移植