📄 uc1697.c
字号:
//LCM resolution:128x128,
//driver IC:UC1697,
//#include <REG54.H>
#include <reg51.h>
//sbit CS0 = P3^5;
//sbit RST = P3^4;
//sbit DC0 = P3^2;
//sbit WR0 = P3^1;
//sbit RD0 = P3^0;
sbit CS0 = P3^5;
sbit RST = P3^4;
sbit DC0 = P3^2;
sbit WR0 = P3^1;
sbit RD0 = P3^0;
sbit DEO = P2^7;
unsigned char code pic1[];
unsigned char Graphic16[]={0x00,0XFF,0x00,0Xff,0x00,0Xff,0x00,0Xff,0x00,0Xff,0x00,0xff,0x00,0Xff,0x00,0Xff,0XFF,0x00,0XFf,0x00,0XFf,0x00,0XFf,0x00,0Xff,0x00,0Xff,0x00,0Xff,0x00,0Xff,0x00};
void delay(long tt);
void display_red(void);
void display_green(void);
void display_blue(void);
void display_black(void);
void display_white(void);
void display_colorbar(void);
void display_image1(void);
void display_image2(void);
void data_out(unsigned char i,unsigned char j)
{
//8080 interface
CS0 = 0;
DC0 = 1;
RD0 = 1;
//WR0 = 0;
P0 = i;
P1 = j;
WR0 = 0;
WR0 = 1;
CS0 = 1;
}
void data_in()
{
//8080 interface
RD0 = 0;
P1 = 0XFF;
P0 = 0XFF;
CS0 = 0;
DC0 = 1;
RD0 = 1;
RD0 = 0;
CS0 = 1;
}
void comm_out(unsigned char i,unsigned char j)
{
//8080 interface
CS0 = 0;
RD0 = 1;
DC0 = 0;
//WR0 = 0;
P0 = i;
P1 = j;
WR0 = 0;
WR0 = 1;
CS0 = 1;
}
void dispSingleColorLine(unsigned char col,unsigned char *Graphic)
{
unsigned char i;
//comm_out(0x21);
//data_out(0x00);
//data_out(0x00);
for(i=0;i<col;i++)
{
comm_out(0x00,0x22);
data_out(*(Graphic++),*(Graphic++));
}
}
void fillGraphic_16(unsigned char row,unsigned char col,
unsigned char *Graphic,
unsigned char F_RGB1,unsigned char F_RGB2,
unsigned char B_RGB1,unsigned char B_RGB2,
unsigned char S_RGB1,unsigned char S_RGB2
)
{
unsigned char n, i,j,k;
unsigned char tempGraphic;
//comm_out(0x21);
//data_out(0x00);
//data_out(0x00);
for(n=0;n<row/16;n++)
{
for(i=0;i<16;i++)
{
for(j=0;j<col/16;j++)
{
tempGraphic = Graphic[i*2];
for(k=0;k<8;k++)
{
if(((tempGraphic)&(0x80))!= 0)
{
data_out(F_RGB1,F_RGB2);
}else
{
data_out(B_RGB1,B_RGB2);
}
tempGraphic = tempGraphic << 1;
}
tempGraphic = Graphic[i*2+1];
for(k=0;k<8;k++)
{
if(((tempGraphic)&(0x80))!= 0)
{
data_out(F_RGB1,F_RGB2);
}else
{
data_out(B_RGB1,B_RGB2);
}
tempGraphic = tempGraphic << 1;
}
}
}
}
for(i=0;i<row%16;i++)
{
for(j=0;j<col;j++)
{
comm_out(0x00,0x22);
data_out(S_RGB1,S_RGB2);
}
}
}
void dispColorX(unsigned char row, unsigned char col,
unsigned char rgbA1,unsigned char rgbA2,
unsigned char rgbB1,unsigned char rgbB2,
unsigned char rgbC1,unsigned char rgbC2,
unsigned char rgbD1,unsigned char rgbD2,
unsigned char rgbE1,unsigned char rgbE2,
unsigned char rgbF1,unsigned char rgbF2,
unsigned char rgbG1,unsigned char rgbG2,
unsigned char rgbH1,unsigned char rgbH2
)
{
unsigned char i,j,k;
k = row /8;
//comm_out(0x21);
//data_out(0x9f);
//data_out(0x7f);
comm_out(0x00,0x22);
for(i=0;i<k;i++)
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -