• 大小: 1KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-09
  • 语言: 其他
  • 标签: Init  LCD  

资源简介

本位对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


评论

共有 条评论