⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcd_test.c

📁 DSP2812实现12864LCD的驱动程序。12864自带字库。包括了对LCD的状态
💻 C
字号:
///2006-06-19 调LCM通过,顺便把蜂鸣器模块加进来,一起作为起动程序固化在DSP中
#include "DSP28_Device.h"

#define	  SetData	GpioDataRegs.GPFDAT.bit.GPIOF0 = 1
#define	  ClrData   GpioDataRegs.GPFDAT.bit.GPIOF0 = 0
#define	  SetClk	GpioDataRegs.GPFDAT.bit.GPIOF2 = 1
#define	  ClrClk	GpioDataRegs.GPFDAT.bit.GPIOF2 = 0

unsigned int * LcdComL  = (unsigned int *) 0x5100;
unsigned int * LcdComH  = (unsigned int *) 0x5200;
unsigned int * LcdDatL  = (unsigned int *) 0x5300;
unsigned int * LcdDatH  = (unsigned int *) 0x5400;

void WriteLcdCom(unsigned char c);
void WriteLcdDat(unsigned char d);
void delay(unsigned int t);


void main(void)
{

	/*初始化系统*/
	InitSysCtrl();

	/*关中断*/
	DINT;
	IER = 0x0000;
	IFR = 0x0000;

	/*初始化PIE*/
	InitPieCtrl();

	/*初始化PIE中断矢量表*/
	InitPieVectTable();	
	
	/*初始化外设*/
    InitPeripherals();
    
    * LcdComL = 0x00;
    * LcdDatL = 0x00;
    
    GpioDataRegs.GPDDAT.bit.GPIOD5 = 1;

   
    WriteLcdCom(0x01);
    
    WriteLcdCom(0x0e);
    
    WriteLcdCom(0x80);  
    WriteLcdDat(0xbf);
    WriteLcdDat(0xaa);
    WriteLcdDat(0xb7);
    WriteLcdDat(0xa2);
    WriteLcdDat(0xb0);
    WriteLcdDat(0xe5);
    WriteLcdDat(0xd6);
    WriteLcdDat(0xae);
    WriteLcdDat(0xbc);
    WriteLcdDat(0xd2);
    WriteLcdDat(0xbb);
    WriteLcdDat(0xb6);
    WriteLcdDat(0xd3);
    WriteLcdDat(0xad);
    WriteLcdDat(0xc4);
    WriteLcdDat(0xfa);
    
    WriteLcdCom(0x90);  
    WriteLcdDat(0xbf);
    WriteLcdDat(0xaa);
    WriteLcdDat(0xb7);
    WriteLcdDat(0xa2);
    WriteLcdDat(0xb0);
    WriteLcdDat(0xe5);
    WriteLcdDat(0xd6);
    WriteLcdDat(0xae);
    WriteLcdDat(0xbc);
    WriteLcdDat(0xd2);
    WriteLcdDat(0xbb);
    WriteLcdDat(0xb6);
    WriteLcdDat(0xd3);
    WriteLcdDat(0xad);
    WriteLcdDat(0xc4);
    WriteLcdDat(0xfa);
    
    WriteLcdCom(0x88);  
    WriteLcdDat(0xbf);
    WriteLcdDat(0xaa);
    WriteLcdDat(0xb7);
    WriteLcdDat(0xa2);
    WriteLcdDat(0xb0);
    WriteLcdDat(0xe5);
    WriteLcdDat(0xd6);
    WriteLcdDat(0xae);
    WriteLcdDat(0xbc);
    WriteLcdDat(0xd2);
    WriteLcdDat(0xbb);
    WriteLcdDat(0xb6);
    WriteLcdDat(0xd3);
    WriteLcdDat(0xad);
    WriteLcdDat(0xc4);
    WriteLcdDat(0xfa);
    
    WriteLcdCom(0x98);  
    WriteLcdDat(0xbf);
    WriteLcdDat(0xaa);
    WriteLcdDat(0xb7);
    WriteLcdDat(0xa2);
    WriteLcdDat(0xb0);
    WriteLcdDat(0xe5);
    WriteLcdDat(0xd6);
    WriteLcdDat(0xae);
    WriteLcdDat(0xbc);
    WriteLcdDat(0xd2);
    WriteLcdDat(0xbb);
    WriteLcdDat(0xb6);
    WriteLcdDat(0xd3);
    WriteLcdDat(0xad);
    WriteLcdDat(0xc4);
    WriteLcdDat(0xfa);
    
    
     GpioDataRegs.GPDDAT.bit.GPIOD5 = 0;
	for(;;);

} 	

void WriteLcdCom(unsigned char c)
{
  * LcdComH = c;
  * LcdComL = c;
  delay(5000);
}

void WriteLcdDat(unsigned char d)
{
  * LcdDatH = d;
  * LcdDatL = d;
  delay(5000);
}

void delay(unsigned int t)
{
  while(t>0)
    t--;
}
//===========================================================================
// No more.
//===========================================================================

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -