资源简介
本位对mp3/mp4或是手机的lcd的代码发表.希望对那些没有写过驱动的有一点帮助
代码片段和文件信息
#include “Sg851_register.h“
#include “SPFD54124A_Init.h“
#include “SPFD54124A_reg.h“
#define LCD_WIDTH 128
#define LCD_HIGHTH 160
void kgmSetPar(UINT8 val)
{
SPFD54124A_SetData();
wrData8(val);
__asm{nop}
__asm{nop}
__asm{nop}
}
static void wrData16(UINT16 dat)
{
wrData8 (dat >> 8);
wrData8(dat & 0xFF);
__asm{nop}
__asm{nop}
__asm{nop}
}
void kgmSetReg(UINT8 val)
{
SPFD54124A_SetCmd();
wrData8(val);
}
void Lcd_DelayMs(int delay)
{
int i;
while(delay --)
{
i = 0x1000;
while(i --);
}
}
void LCDModule_Init(void)
{
P_PMC_CTRL |= (PMC_LCM|PMC_SRAM|PMC_GPIO);
P_LCM_CYCLE = ((2< P_PORTA_CFG |= (PAD_LCMCE | PAD_LCMRE | PAD_A0 | PAD_LCMWR | PAD_LCMRST | PAD_DATAL|0xff);
P_LCM_CFG = LCM_EN|LCM_EXT_RESET; /*|LCM_WIDTH16|LCM_BUS16; */
Lcd_DelayMs(100);
P_LCM_CFG = LCM_EN;
//{
//
//// P_PMC_CTRL |= (PMC_LCM|PMC_SRAM|PMC_GPIO);
// P_PMC_CTRL |= PMC_LCM;
// P_LCM_CYCLE = ((2< //// P_PORTA_CFG |= (PAD_LCMCE | PAD_LCMRE | PAD_A0 | PAD_LCMWR | PAD_LCMRST | PAD_DATAL|0xff);
// P_PORTA_CFG |= (PAD_LCMCE | PAD_LCMRE | PAD_A0 | PAD_LCMWR | PAD_LCMRST | PAD_DATAL);
// P_LCM_CFG = LCM_EN|LCM_EXT_RESET; /*|LCM_WIDTH16|LCM_BUS16; */
// Lcd_DelayMs(100);
// P_LCM_CFG = LCM_EN| LCM_BUS16;//|LCM_WIDTH16;
#if 0
P_PMC_CTRL |= PMC_LCM;
P_LCM_CYCLE = ( (3<
P_PORTA_CFG |= (PAD_LCMCE | PAD_LCMRE | PAD_A0 | PAD_LCMWR | PAD_LCMRST | PAD_DATAL);
P_LCM_CFG = LCM_EN|LCM_EXT_RESET;
Lcd_DelayMs(100);
P_LCM_CFG = LCM_EN | LCM_BUS16;
#endif
}
void SPFD54124A_init(void)
{
P_LCM_CFG |= LCM_EXT_RESET;
Lcd_DelayMs(1000);
P_LCM_CFG &= ~LCM_EXT_RESET;
Lcd_DelayMs(1000);
kgmSetReg(0x11); /*SLEEP OUT*/
kgmSetReg(0x20); /*DISPLAY INVERSION OFF*/
kgmSetReg(0x38); /*Idle Mode Off*/
kgmSetReg(0x13); /*Normal Display Mode On*/
kgmSetReg(0x3A); /*Interface Pixel Format*/
kgmSetPar(0x05);
kgmSetReg(0x36); /*Memory Data Access Control*/
kgmSetPar(0x14); /*positive*/
/*SetPar(0xD4);*/ /*in reverse*/
kgmSetReg(0xC0); /*Power Control1*/
kgmSetPar(0x03);
kgmSetReg(0xC5); /*VCOM Control1*/
kgmSetPar(0xC8);
kgmSetReg(0xC6); /*VCOM Control2*/
kgmSetPar(0x1F);
kgmSetReg(0xFE); /*VCOM Control2*/
kgmSetPar(0x00);
kgmSetPar(0x00);
kgmSetReg(0xE0); /*Gamma Set*/
kgmSetPar(0x00);
kgmSetPar(0x10);
kgmSetPar(0x52);
kgmSetPar(0x53);
kgmSetPar(0x55);
kgmSetPar(0x55);
kgmSetPar(0x37);
kgmSetReg(0x29); /*Display On */
Lcd_DelayMs(0x5);
}
#define LCD_WIDTH0 43
#define LCD_WIDTH1 43
#define LCD_WIDTH2 42
#define LCD_POSX0 0
#define LCD_POSX1 (LCD_WIDTH0)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3478 2007-09-20 11:28 LCD的初始化.c
----------- --------- ---------- ----- ----
3478 1
- 上一篇:XKT-510规格书中文
- 下一篇:基于Labview的状态机模型研究
相关资源
- 51单片机pwm波,lcd1602,l298n带prtues仿真
- TFTLCD 数据手册
- 万年历+温度+12864LCD时钟
- STM32L152 段式液晶驱动4*8,可阅读扩展
- LCD的滚动显示
- 可LCD显示计算价格的电子秤proteus仿真
- 89c51电子数字钟 源码和电路图
- 1602LCD显示仿手机键盘按键字符
- adc实验,用于在LCD模块上面显示ADC转
- LCD12864显示屏使用手册串行方式,12
- 8086仿真-LCD12864
- 单片机温湿度检测源代码 dht11 lcd160
- mini2440实现采集摄像头数据在开发板的
- Qt5.5 代码实现记事本程序 MiniText
- 12864液晶屏.zip
- 51单片机Protues仿真舵机,可以通过按
- LCD1206及汉字显示
- Img2Lcd V4.0绿色版本,带注册码
- LCD12864串行显示DS18B20温度和超声波测
- 单片机C51-电子钟1 LCD1602显示 上电正常
- LCD液晶点阵显示中英文例程
- 基于51单片机和lcd1602的adc0804测电压电
- Proteus的LCD19264A仿真模型和源码
- 基于DS18B20的水温控制系统 仿真+程序
- 用FPGA控制LCD显示字符,汉字
- Image2Lcd v3.2 注册机
- 开关控制12864LCD串行模式显示
- MSP430控制LCD1602显示
- 电子钟DS1302+LCD1602+89C52+proteus仿真图
- LCD12864读取DS1302模块,显示实时时间
评论
共有 条评论