?? 賽特勒12232液晶驅(qū)動(dòng)程序.c
字號:
#include "at89x51.h"
#include "intrins.h"
#define uint unsigned int
#define uchar unsigned char
//自己用
#define sed1520_6800_moni_12232_di P2_4 //寄存器選擇1數(shù)據(jù) 0指令
#define sed1520_6800_moni_12232_rw P2_7 //讀寫操作選擇1讀 0寫
#define sed1520_6800_moni_12232_en1 P2_5 //使能信號
#define sed1520_6800_moni_12232_en2 P2_6 //使能信號
#define sed1520_6800_moni_12232_rst P2_3 //復(fù)位信號
//測試用
//#define sed1520_6800_moni_12232_di P2_4 //寄存器選擇1數(shù)據(jù) 0指令
//#define sed1520_6800_moni_12232_rw P2_7 //讀寫操作選擇1讀 0寫
//#define sed1520_6800_moni_12232_en1 P2_5 //使能信號
//#define sed1520_6800_moni_12232_en2 P2_6 //使能信號
//#define sed1520_6800_moni_12232_rst P2_3 //復(fù)位信號
//#define sed1520_6800_moni_12232_autokey P1_0 //自動(dòng)按鍵
//#define sed1520_6800_moni_12232_manukey P1_1 //手動(dòng)按鍵
uchar code sed1520_6800_moni_12232_sed1520_6800_moni_12232_kaishibiao[]=
{
//開始畫面,0地址
0x00,0x20,0x46,0x4C,0x08,0x8C,0xE8,0x38,0x88,0xE6,0xB4,0x28,0xE8,0x64,0x00,0x00,
0x00,0x00,0x7C,0x54,0x54,0x54,0x54,0x54,0x54,0x54,0x7C,0x00,0x00,0x00,0x00,0x10,
0xD0,0xFE,0x90,0x10,0xE8,0xE8,0xBE,0xA8,0xA8,0xBE,0xE8,0x04,0x00,0x00,0x20,0x20,
0xFE,0x20,0x20,0x08,0x08,0xFE,0x0A,0x08,0xF8,0xF8,0x00,0x00,0x00,0x60,0x44,0x48,
0xFC,0x04,0xF4,0x04,0xFC,0x00,0xF8,0x00,0xFE,0x02,0x00,0x00,0x40,0xCC,0xC8,0x00,
0x90,0x90,0x90,0x90,0x3E,0xF0,0x10,0x1C,0x10,0x00,0x00,0x24,0x24,0xFC,0x26,0x20,
0x00,0xBC,0xA4,0xA4,0xA4,0xA4,0xBC,0x00,0x00,0x00,0x00,0xF8,0x08,0x08,0x28,0x28,
0x68,0xAE,0xA8,0x68,0x28,0x28,0x08,0x00,0x00,0x00,0x00,0x20,0x3E,0x02,0x01,0x01,
0x3F,0x22,0x21,0x37,0x1D,0x1E,0x33,0x20,0x00,0x00,0x00,0x3F,0x15,0x15,0x15,0x3F,
0x00,0x3F,0x15,0x15,0x15,0x3F,0x00,0x00,0x00,0x07,0x01,0x3F,0x00,0x21,0x25,0x25,
0x15,0x0F,0x0D,0x15,0x25,0x24,0x00,0x00,0x08,0x08,0x0F,0x24,0x25,0x11,0x0D,0x07,
0x07,0x0D,0x11,0x31,0x21,0x00,0x00,0x20,0x1C,0x02,0x23,0x18,0x07,0x08,0x1B,0x10,
0x07,0x20,0x3F,0x00,0x00,0x00,0x00,0x1F,0x1F,0x0C,0x10,0x10,0x1F,0x08,0x00,0x07,
0x18,0x20,0x38,0x00,0x00,0x04,0x03,0x3F,0x01,0x03,0x20,0x24,0x24,0x3F,0x24,0x24,
0x24,0x20,0x00,0x00,0x30,0x1F,0x00,0x01,0x01,0x01,0x21,0x2F,0x3F,0x01,0x01,0x07,
0x03,0x00,0x00,0x00,0x00,0x92,0xD2,0x7E,0x12,0x12,0xFE,0x12,0x10,0x3E,0x00,0x80,
0xFF,0x00,0x00,0x00,0x40,0x40,0x5E,0xD2,0x52,0x52,0x52,0x52,0x52,0x52,0x5E,0x40,
0x40,0x00,0x00,0x00,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0xC0,0x38,0x04,0x38,0xC0,0x00,0x00,0x00,0xF0,0x08,0x04,0x84,0x84,0x98,
0x00,0x00,0xFC,0x70,0x80,0x00,0x80,0x70,0xFC,0x00,0x10,0x18,0xFC,0x00,0x00,0x00,
0x00,0x00,0x30,0x08,0x04,0x84,0x44,0x38,0x00,0x00,0x30,0x08,0x04,0x84,0x44,0x38,
0x00,0x00,0x18,0x04,0x04,0x44,0x44,0xB8,0x00,0x00,0x30,0x08,0x04,0x84,0x44,0x38,
0x00,0x00,0xF0,0x08,0x04,0x84,0x84,0x98,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,
0x10,0x12,0x12,0x12,0x12,0x1F,0x12,0x12,0x12,0x12,0x12,0x10,0x00,0x00,0x00,0x00,
0x00,0x03,0x02,0x02,0x02,0x12,0x12,0x1A,0x0E,0x00,0x00,0x00,0x00,0x00,0x0D,0x0D,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0C,0x03,0x01,0x01,0x01,
0x03,0x0C,0x00,0x00,0x03,0x04,0x08,0x08,0x04,0x0F,0x00,0x00,0x0F,0x00,0x03,0x0C,
0x03,0x00,0x0F,0x00,0x00,0x00,0x0F,0x00,0x00,0x00,0x00,0x00,0x0C,0x0A,0x09,0x08,
0x08,0x08,0x00,0x00,0x0C,0x0A,0x09,0x08,0x08,0x08,0x00,0x00,0x06,0x08,0x08,0x08,
0x08,0x07,0x00,0x00,0x0C,0x0A,0x09,0x08,0x08,0x08,0x00,0x00,0x03,0x04,0x08,0x08,
0x04,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,
};
uchar code sed1520_6800_moni_12232_sed1520_6800_moni_12232_fangkuaibiao[]=
{
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,
0xF0,0xF0,0xF0,0xF0,0x0F,0x0F,0x0F,0x0F,0xF0,0xF0
};
//**********************************************************************
//延時(shí)程序
//**********************************************************************
void sed1520_6800_moni_12232_delay(uchar k)
{
uchar i,j,l;
for(i=0;i<k;i++)
for(j=0;j<100;j++)
for(l=0;l<50;l++)
;
}
//*********************************************************************
//檢測忙碌標(biāo)志程序
//*********************************************************************
void sed1520_6800_moni_12232_busy1(void)
{
uchar dat=0xff;
sed1520_6800_moni_12232_di=0;
sed1520_6800_moni_12232_rw=1;
sed1520_6800_moni_12232_en1=1;
P0=0xff;
dat=P0;
while((dat&0x80)==0x80)
{
dat=P0;
}
sed1520_6800_moni_12232_en1=0;
}
void sed1520_6800_moni_12232_busy2(void)
{
uchar dat=0xff;
sed1520_6800_moni_12232_di=0;
sed1520_6800_moni_12232_rw=1;
sed1520_6800_moni_12232_en2=1;
P0=0xff;
dat=P0;
while((dat&0x80)==0x80)
{
dat=P0;
}
sed1520_6800_moni_12232_en2=0;
}
//**********************************************************************
//寫指令
//**********************************************************************
void sed1520_6800_moni_12232_writecommand1(uchar command)
{
sed1520_6800_moni_12232_busy1();
sed1520_6800_moni_12232_di=0;
sed1520_6800_moni_12232_rw=0;
sed1520_6800_moni_12232_en1=0;
P0=command;
sed1520_6800_moni_12232_en1=1;
sed1520_6800_moni_12232_en1=0;
}
void sed1520_6800_moni_12232_writecommand2(uchar command)
{
sed1520_6800_moni_12232_busy2();
sed1520_6800_moni_12232_di=0;
sed1520_6800_moni_12232_rw=0;
sed1520_6800_moni_12232_en2=0;
P0=command;
sed1520_6800_moni_12232_en2=1;
sed1520_6800_moni_12232_en2=0;
}
//**********************************************************************
//寫數(shù)據(jù)
//**********************************************************************
void sed1520_6800_moni_12232_writedata1(uchar dat)
{
sed1520_6800_moni_12232_busy1();
sed1520_6800_moni_12232_di=1;
sed1520_6800_moni_12232_rw=0;
sed1520_6800_moni_12232_en1=0;
P0=dat;
sed1520_6800_moni_12232_en1=1;
sed1520_6800_moni_12232_en1=0;
}
void sed1520_6800_moni_12232_writedata2(uchar dat)
{
sed1520_6800_moni_12232_busy2();
sed1520_6800_moni_12232_di=1;
sed1520_6800_moni_12232_rw=0;
sed1520_6800_moni_12232_en2=0;
P0=dat;
sed1520_6800_moni_12232_en2=1;
sed1520_6800_moni_12232_en2=0;
}
//**************************************************************************
//初始化程序
//**************************************************************************
void sed1520_6800_moni_12232_inilcd(void)
{
sed1520_6800_moni_12232_rst=0;
sed1520_6800_moni_12232_delay(10);
sed1520_6800_moni_12232_rst=1;
sed1520_6800_moni_12232_writecommand1(0xe2);//復(fù)位
sed1520_6800_moni_12232_writecommand2(0xe2);//復(fù)位
sed1520_6800_moni_12232_writecommand1(0xa9);//占空比為32
sed1520_6800_moni_12232_writecommand2(0xa9);//占空比為32
sed1520_6800_moni_12232_writecommand1(0xc0);//起始行設(shè)置
sed1520_6800_moni_12232_writecommand2(0xc0);//起始行設(shè)置
sed1520_6800_moni_12232_writecommand1(0xa4);//正常工作狀態(tài)
sed1520_6800_moni_12232_writecommand2(0xa4);//正常工作狀態(tài)
sed1520_6800_moni_12232_writecommand1(0xa0);//ADC=0
sed1520_6800_moni_12232_writecommand2(0xa0);//ADC=0
sed1520_6800_moni_12232_writecommand1(0xaf);//開顯示
sed1520_6800_moni_12232_writecommand2(0xaf);//開顯示
}
//****************************************************************************
//開始函數(shù)
//****************************************************************************
void sed1520_6800_moni_12232_kaishi(void)
{
uchar x,y;
uint z=0;
for(x=0;x<4;x++)
{
for(y=0;y<61;y++)
{
sed1520_6800_moni_12232_writecommand1(0xb8+x);
sed1520_6800_moni_12232_writecommand1(y);
sed1520_6800_moni_12232_writedata1(sed1520_6800_moni_12232_sed1520_6800_moni_12232_kaishibiao[z]);
z++;
}
for(y=0;y<61;y++)
{
sed1520_6800_moni_12232_writecommand2(0xb8+x);
sed1520_6800_moni_12232_writecommand2(y);
sed1520_6800_moni_12232_writedata2(sed1520_6800_moni_12232_sed1520_6800_moni_12232_kaishibiao[z]);
z++;
}
}
}
//****************************************************************************
//橫線函數(shù)
//****************************************************************************
void sed1520_6800_moni_12232_hengxian(uchar dat)
{
uchar x,y;
for(x=0;x<4;x++)
{
for(y=0;y<61;y++)
{
sed1520_6800_moni_12232_writecommand1(0xb8+x);
sed1520_6800_moni_12232_writecommand1(y);
sed1520_6800_moni_12232_writedata1(dat);
}
for(y=0;y<61;y++)
{
sed1520_6800_moni_12232_writecommand2(0xb8+x);
sed1520_6800_moni_12232_writecommand2(y);
sed1520_6800_moni_12232_writedata2(dat);
}
}
}
//****************************************************************************
//方塊表函數(shù)
//****************************************************************************
void sed1520_6800_moni_12232_fangkuai1(void)
{
uchar x,y;
uint z=0;
for(x=0;x<4;x++)
{
for(y=0;y<61;y++)
{
sed1520_6800_moni_12232_writecommand1(0xb8+x);
sed1520_6800_moni_12232_writecommand1(y);
sed1520_6800_moni_12232_writedata1(sed1520_6800_moni_12232_sed1520_6800_moni_12232_fangkuaibiao[z]);
z++;
}
for(y=0;y<61;y++)
{
sed1520_6800_moni_12232_writecommand2(0xb8+x);
sed1520_6800_moni_12232_writecommand2(y);
sed1520_6800_moni_12232_writedata2(sed1520_6800_moni_12232_sed1520_6800_moni_12232_fangkuaibiao[z]);
z++;
}
}
}
void sed1520_6800_moni_12232_fangkuai2(void)
{
uchar x,y;
uint z=0;
for(x=0;x<4;x++)
{
for(y=0;y<61;y++)
{
sed1520_6800_moni_12232_writecommand1(0xb8+x);
sed1520_6800_moni_12232_writecommand1(y);
sed1520_6800_moni_12232_writedata1(~sed1520_6800_moni_12232_sed1520_6800_moni_12232_fangkuaibiao[z]);
z++;
}
for(y=0;y<61;y++)
{
sed1520_6800_moni_12232_writecommand2(0xb8+x);
sed1520_6800_moni_12232_writecommand2(y);
sed1520_6800_moni_12232_writedata2(~sed1520_6800_moni_12232_sed1520_6800_moni_12232_fangkuaibiao[z]);
z++;
}
}
}
void sed1520_6800_moni_12232_autokeyhanshu(void)
{
while(1)
{
sed1520_6800_moni_12232_hengxian(0xff);
sed1520_6800_moni_12232_delay(40);
sed1520_6800_moni_12232_hengxian(0x00);
sed1520_6800_moni_12232_fangkuai1();
sed1520_6800_moni_12232_delay(40);
sed1520_6800_moni_12232_hengxian(0x00);
sed1520_6800_moni_12232_fangkuai2();
sed1520_6800_moni_12232_delay(40);
sed1520_6800_moni_12232_hengxian(0x00);
sed1520_6800_moni_12232_kaishi();
sed1520_6800_moni_12232_delay(40);
}
}
//****************************************************************************
//主程序
//****************************************************************************
main()
{
uchar i;
sed1520_6800_moni_12232_inilcd();
sed1520_6800_moni_12232_hengxian(0x00);
sed1520_6800_moni_12232_autokeyhanshu();
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -