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

📄 320240_c.c.txt

📁 320240LCM-sed1335C源程序
💻 TXT
字号:
/*************************************************************
FUNCTION:              LCD driver 8080
AUTHOR:                耀宇科技
DESCRIPTION:           SED1335
E-mail:                szyaoyujs@126.com
CREAT DATE:            2006-3-6
MODIFICATION DATE: 
***************************************************************/

#include <AT89X52.H>
#include <intrins.h>
#define A0            P3_1
#define WR_RW         P3_4
#define RD_E          P3_3
#define CS            P3_2
#define RST           P1_5
#define DATA_BUS      P1
#define CR            0x27//一行占的字节宽度
#define TCR           0x42//时间常数
#define LF            0xef//占空比
#define AP            0x28//显示存储器一行的字节数

unsigned char code font[]=
{

0x40,0x00,0x00,0x00,0x13,0xDC,0x01,0x00,0x06,0x08,0x10,0x20,0x01,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x13,0xDC,0x01,0x00,0x06,0x08,0x10,0x20,
0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x27,0xFE,0x12,0x04,0x12,0x44,0x00,0x80,
0x78,0x88,0x10,0x20,0x01,0x00,0xFB,0xF8,0x04,0x40,0x3F,0xFC,0x27,0xFE,0x12,0x04,
0x12,0x44,0x00,0x80,0x78,0x88,0x10,0x20,0x01,0x00,0xFB,0xF8,0x04,0x40,0x3F,0xFC,
0x24,0x04,0x12,0x44,0x95,0x54,0x3F,0xFE,0x08,0x48,0x10,0x20,0x7F,0xFE,0x92,0x08,
0x06,0x40,0x00,0x04,0x24,0x04,0x12,0x44,0x95,0x54,0x3F,0xFE,0x08,0x48,0x10,0x20,
0x7F,0xFE,0x92,0x08,0x06,0x40,0x00,0x04,0x01,0x20,0x12,0x44,0x54,0xCC,0x20,0x04,
0x08,0x48,0xFD,0xFE,0x02,0x00,0x93,0xF8,0x04,0x40,0x00,0x04,0x01,0x20,0x12,0x44,
0x54,0xCC,0x20,0x04,0x08,0x48,0xFD,0xFE,0x02,0x00,0x93,0xF8,0x04,0x40,0x00,0x04,
0x81,0x18,0xFE,0x44,0x11,0x54,0x40,0x08,0xFE,0x08,0x10,0x20,0x04,0x00,0xA2,0x08,
0x08,0x20,0x7F,0xE4,0x81,0x18,0xFE,0x44,0x11,0x54,0x40,0x08,0xFE,0x08,0x10,0x20,
0x04,0x00,0xA2,0x08,0x08,0x20,0x7F,0xE4,0x56,0x08,0x12,0x44,0xFE,0xC4,0x1F,0xF0,
0x18,0x88,0x14,0x20,0x0F,0xF0,0xA2,0x08,0x08,0x10,0x00,0x04,0x56,0x08,0x12,0x44,
0xFE,0xC4,0x1F,0xF0,0x18,0x88,0x14,0x20,0x0F,0xF0,0xA2,0x08,0x08,0x10,0x00,0x04,
0x50,0x40,0x12,0x44,0x29,0x20,0x00,0x80,0x1C,0x48,0x19,0xFC,0x18,0x10,0x93,0xF8,
0x10,0x18,0x00,0x04,0x50,0x40,0x12,0x44,0x29,0x20,0x00,0x80,0x1C,0x48,0x19,0xFC,
0x18,0x10,0x93,0xF8,0x10,0x18,0x00,0x04,0x10,0x40,0x12,0x44,0x29,0xFC,0x00,0x80,
0x2A,0x48,0x31,0x08,0x28,0x10,0x8A,0x80,0x22,0x0E,0x3F,0xC4,0x10,0x40,0x12,0x44,
0x29,0xFC,0x00,0x80,0x2A,0x48,0x31,0x08,0x28,0x10,0x8A,0x80,0x22,0x0E,0x3F,0xC4,
0x27,0xFC,0x12,0x44,0x2B,0x20,0x7F,0xFC,0x28,0x0E,0xD0,0x88,0x4F,0xF0,0x8A,0x48,
0x43,0x04,0x20,0x44,0x27,0xFC,0x12,0x44,0x2B,0x20,0x7F,0xFC,0x28,0x0E,0xD0,0x88,
0x4F,0xF0,0x8A,0x48,0x43,0x04,0x20,0x44,0x20,0x40,0x12,0x44,0x2D,0xFC,0x00,0x80,
0x48,0x78,0x10,0x90,0x88,0x10,0xAA,0x50,0x02,0x00,0x20,0x44,0x20,0x40,0x12,0x44,
0x2D,0xFC,0x00,0x80,0x48,0x78,0x10,0x90,0x88,0x10,0xAA,0x50,0x02,0x00,0x20,0x44,
0xC0,0xE0,0x3A,0x44,0x29,0x20,0x00,0x80,0x8B,0x88,0x10,0x60,0x08,0x10,0x92,0x20,
0x04,0x20,0x3F,0xC4,0xC0,0xE0,0x3A,0x44,0x29,0x20,0x00,0x80,0x8B,0x88,0x10,0x60,
0x08,0x10,0x92,0x20,0x04,0x20,0x3F,0xC4,0x41,0x58,0xC4,0x44,0x2B,0xFC,0x00,0x80,
0x08,0x08,0x10,0x60,0x0F,0xF0,0x82,0x20,0x08,0x10,0x20,0x44,0x41,0x58,0xC4,0x44,
0x2B,0xFC,0x00,0x80,0x08,0x08,0x10,0x60,0x0F,0xF0,0x82,0x20,0x08,0x10,0x20,0x44,
0x46,0x4E,0x04,0x44,0x5D,0x20,0x00,0x80,0x08,0x08,0x10,0x90,0x08,0x10,0x82,0x10,
0x11,0xF8,0x20,0x04,0x46,0x4E,0x04,0x44,0x5D,0x20,0x00,0x80,0x08,0x08,0x10,0x90,
0x08,0x10,0x82,0x10,0x11,0xF8,0x20,0x04,0x58,0x44,0x08,0x04,0x49,0x20,0x00,0x80,
0x08,0x08,0x11,0x0E,0x08,0x90,0x82,0x8E,0x3F,0x18,0x00,0x14,0x58,0x44,0x08,0x04,
0x49,0x20,0x00,0x80,0x08,0x08,0x11,0x0E,0x08,0x90,0x82,0x8E,0x3F,0x18,0x00,0x14,
0x40,0x40,0x10,0x04,0x81,0xFE,0x02,0x80,0x08,0x08,0x56,0x04,0x08,0x70,0x83,0x04,
0x10,0x10,0x00,0x08,0x40,0x40,0x10,0x04,0x81,0xFE,0x02,0x80,0x08,0x08,0x56,0x04,
0x08,0x70,0x83,0x04,0x10,0x10,0x00,0x08,0x40,0x40,0x00,0x00,0x01,0x00,0x01,0x00,
0x08,0x08,0x20,0x00,0x08,0x20,0x82,0x00,0x00,0x00,0x00,0x00,0x40,0x40,0x00,0x00,
0x01,0x00,0x01,0x00,0x08,0x08,0x20,0x00,0x08,0x20,0x82,0x00,0x00,0x00,0x00,0x00

};

unsigned char code ft[]={
0x08,0x08,0x6B,0x1C,0x1C,0x6B,0x08,0x08
};

/***********************************
** 函数名称: Delay
** 功能描述: 延时时间=(n*9+17)*12/F
** 输 入: n
** 输 出 : 无
** 全局变量:无
** 调用模块: 无
** 
** 作 者: 耀宇科技
** 日 期: 2006-2-17
******************************************/
void Delay(unsigned int n)
{
    while(n--);
	return;
}

/***********************************
** 函数名称: Busy
** 功能描述: 从液晶显示控制器中读忙标志,并作为返回值返回
**           busy flag
** 输 入: 无
** 输 出 : 忙标志
** 全局变量:无
** 调用模块: 无
** 
** 作 者: 耀宇科技
** 日 期: 2006-1-10
******************************************/
/*
#pragma disable
void Busy(void) 
{ 
    unsigned char datum;
	datum=0xff;
	while((datum&0x40)==0x40)
	{
    	CS=0;
    	A0=0;
    	RD_E=0;
    	Delay(2);
    	datum=DATA_BUS;
	    RD_E=1;
	    CS=1;
    }
	return;
}
*/

/***********************************
** 函数名称: Write_Data
** 功能描述: 传送数据
** 输 入: dat
** 输 出 : 无
** 全局变量:无
** 调用模块:Delay
** 
** 作 者: 耀宇科技
** 日 期: 2006-2-16
******************************************/
#pragma disable
void Write_Data(unsigned char dat)
{
 //   Busy();
    CS=0;
    A0=0;
    DATA_BUS=dat;
    WR_RW=0;
	_nop_();
    WR_RW=1;
	CS=1;
	_nop_();
	return;
}

/***********************************
** 函数名称: Write_Instruction
** 功能描述: 传送命令
** 输 入: cmd
** 输 出 : 无
** 全局变量:无
** 调用模块:Delay
** 
** 作 者: 耀宇科技
** 日 期: 2006-2-16
******************************************/
#pragma disable
void Write_Instruction(unsigned char idata cmd)
{
//    Busy();
    CS=0;
    A0=1;
    DATA_BUS=cmd;
    WR_RW=0;
	_nop_();
    WR_RW=1;
   	CS=1;
	_nop_();
	return;
}

void System_Set(void)
{
    Write_Instruction(0x40);
    Write_Data(0x30);
    Write_Data(0x87);
    Write_Data(0x07);
    Write_Data(CR);
    Write_Data(TCR);
    Write_Data(LF);
    Write_Data(AP);
    Write_Data(0x00);
    return;
}

void Scroll(void)
{
    Write_Instruction(0x44);
    Write_Data(0x00);
    Write_Data(0x00);
    Write_Data(LF);    //一区
    Write_Data(0x00);
    Write_Data(0x40);//1c
    Write_Data(LF);    //二区
    Write_Data(0x00);
    Write_Data(0x80);  //三区6c
    Write_Data(0x00);
    Write_Data(0x00);  //四区
    return;
}

void Disp_ON(unsigned char idata par)
{
    Write_Instruction(0x59);
    Write_Data(par);
    return;
}
/*
void Ovlay_or(void)
{
    Write_Instruction(0x5b);
    Write_Data(0x0c);
    return;
}
*/

void Ovlay_Xor(void)
{
    Write_Instruction(0x5b);
    Write_Data(0x0d);
    return;
}

void Cursor_Direction(void)
{
    Write_Instruction(0x4c);
    return;
}

void Cursor_Address(unsigned char idata csrl,unsigned char idata csrh)
{
    Write_Instruction(0x46);
    Write_Data(csrl);
    Write_Data(csrh);
    return;
}

void Hdot_Scr(void)
{
    Write_Instruction(0x5a);
    Write_Data(0x00);
    return;    
} 

void Multiple_Write(void)
{
    Write_Instruction(0x42);
}

void Initial(void)
{
    register unsigned char i,j;
    Delay(2000);
	RST=0;
    Delay(10);
	RST=1;
    Delay(2000);
    System_Set();
    Scroll();
    Ovlay_Xor();
    Cursor_Direction();
    Cursor_Address(0x00,0x00);
	Hdot_Scr();
    Disp_ON(0x04);
    Multiple_Write();
    for(i=0;i<0x80;i++)
        for(j=0;j<0xff;j++) 
            Write_Data(0xff);
	return;
}

/***********************************
** 函数名称: Display_Chess
** 功能描述: Display_Chess
** 输 入:  value
** 输 出 : 无
** 全局变量:无
** 调用模块:
** 
** 作 者: 耀宇科技
** 日 期: 2006-2-10
******************************************/
void Display_Chess(unsigned char idata value)
{
    register unsigned char i,j;
    Cursor_Address(0x00,0x00);
    Multiple_Write();
    for(i=0;i<0x1e;i++)
	{
		value=~value;
		for(j=0;j<0xa0;j++)
		{
		    Write_Data(value);
		    Write_Data(~value);
		}
	}
    return;
}

/***********************************
** 函数名称: Display_Chinese
** 功能描述: Display_Chinese
** 输 入:  value
** 输 出 : 无
** 全局变量:无
** 调用模块:
** 
** 作 者: 耀宇科技
** 日 期: 2006-2-10
******************************************/
void Display_Chinese(unsigned char fnt[])
{
    unsigned char i;
    unsigned int j;
    Cursor_Address(0x00,0x00);
    Multiple_Write();
    for(i=0;i<0x0f;i++)
	{
		for(j=0;j<640;j++)
		{
		    Write_Data(fnt[j]);
		}
	}
    return;
}

main()
{
    Initial();
	while(1)
	{
        Display_Chess(0xff);
        Delay(60000);
        Delay(60000);
    	Disp_ON(0x14);
        Delay(60000);
        Delay(60000);
	    Disp_ON(0x04);
	    Display_Chinese(font);
	    Delay(60000);
        Delay(60000);
	    Disp_ON(0x14);
	    Delay(60000);
        Delay(60000);
	    Disp_ON(0x04);
	}
}

⌨️ 快捷键说明

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