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

资源简介

ARM7芯片LPC2138驱动中文无字库液晶12864的驱动程序,此程序为我一个项目的显示部分,和大家分享一下!

资源截图

代码片段和文件信息

#define IN_DISPLAY
//#include “config.h“
#include 
#include “display.h“

#define LCDSTARTROW 0xC0   //设置起始行指令。
#define LCDPAGE 0xB8   //设置页指令。
#define LCDLINE 0x40   //设置列指令。
//*************************************************************************************************
//*   *
//*  ********************************读忙标志位*********************************   *
//*   *
//*************************************************************************************************

#define LCD_CS1   18
#define LCD_CS2   19
#define LCD_RS 16
//#define LCD_RW 11
#define LCD_E 17
#define LCD_DB0 (1<<8)
#define LCD_DB1 (1<<9)
#define LCD_DB2 (1<<10)
#define LCD_DB3 (1<<19)
#define LCD_DB4 (1<<28)
#define LCD_DB5 (1<<29)
#define LCD_DB6 (1<<30)
#define LCD_DB7 (1<<2)
//#define LCD_RST 5
void SET_LCD(unsigned char IO_temp)
{
if((IO_temp&0x80)==0x80)
IOSET0=LCD_DB7; 
else
IOCLR0=LCD_DB7;
if((IO_temp&0x40)==0x40)
IOSET0=LCD_DB6; 
else
IOCLR0=LCD_DB6;
if((IO_temp&0x20)==0x20)
IOSET0=LCD_DB5; 
else
IOCLR0=LCD_DB5;
if((IO_temp&0x10)==0x10)
IOSET0=LCD_DB4; 
else
IOCLR0=LCD_DB4;
if((IO_temp&0x08)==0x08)
IOSET0=LCD_DB3; 
else
IOCLR0=LCD_DB3;
if((IO_temp&0x04)==0x04)
IOSET0=LCD_DB2; 
else
IOCLR0=LCD_DB2;
if((IO_temp&0x02)==0x02)
IOSET0=LCD_DB1; 
else
IOCLR0=LCD_DB1;
if((IO_temp&0x01)==0x01)
IOSET0=LCD_DB0; 
else
IOCLR0=LCD_DB0;
 
}



void delay (unsigned int us)   //delay time
{
 // while(us--);
 unsigned int i=0j=0;
    for (i=us;i>0;i--)
     for (j=0;j<10;j++);
 
}

void OUT_DATA(unsigned char Ddata)
{
    IO0CLR|=1<<8|1<<9|1<<10|1<<19|1<<28|1<<29|1<<30|1<<2;
    SET_LCD(Ddata);
}
//*************************************************************************************************
//*   *
//*  ********************************写数据*********************************   *
//*   *
//*************************************************************************************************
void vWriteData(unsigned char ucData)
{

  IO1SET |=1<  delay(1);
//  IO1CLR |=1<  delay(1);
  OUT_DATA(ucData);
  delay(1);
  IO1SET |=1<  delay(3);
  IO1CLR |=1<  delay(3);
 
}

//*************************************************************************************************
//*   *
//*  ********************************写指令*********************************   *
//*   *
//*************************************************************************************************
void vWriteCMD(unsigned char ucCMD)
{
  IO1CLR |=1<  delay(1);
//  IO1CLR |=1<  delay(1);
   OUT_DATA(ucCMD);
  delay(1);
  IO1SET |=1<  delay(3);
  IO1CLR |=1<  delay(3);
}

//****

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      12467  2011-11-06 11:42  lpc-12864\display.c

     文件      20884  2011-11-06 10:39  lpc-12864\display.h

     目录          0  2012-12-07 23:33  lpc-12864

----------- ---------  ---------- -----  ----

                33351                    3


评论

共有 条评论