📄 6056.c
字号:
/* ZCM6056_TEST.C */
#include<reg51.h> /*载入 MC51头文件*/
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
sbit di =P3^4; /*定义P1.3口为Data输入口*/
sbit wr =P3^5; /*定义P1.4口为WR输入口*/
sbit cs =P1^0;
void delay(ulong v);
void wcode(uchar c);
/* 延时子程序 */
void delay(ulong v)
{
while(v--);
}
/* 写命令子程序 */
void wcode(uchar c)
{
uchar a;
di=1; /*先写入命令代码100*/
wr=0;
delay(3);
wr=1;
di=0;
wr=0;
delay(3);
wr=1;
di=0;
wr=0;
delay(3);
wr=1;
for(a=0;a<8;a++) /*写入8位命令*/
{
if((c&0x80)!=0)di=1;/*若最高位为1,则输入数据为1*/
else di=0;
c=c<<1; /*左移一位*/
wr=0;
delay(3);
wr=1;
}
di=0;
wr=0;
delay(3);
wr=1;
}
/* 写数据子程序 */
void wdata(uchar ads,uchar da)
{
uchar a;
di=1; /*送入101为写数据模式*/
wr=0;
delay(3);
wr=1;
di=0;
wr=0;
delay(3);
wr=1;
di=1;
wr=0;
delay(3);
wr=1;
for(a=0;a<6;a++) /*先写入6位地址*/
{
if((ads&0x20)!=0)di=1;
else di=0;
ads=ads<<1;
wr=0;
delay(3);
wr=1;
}
for(a=0;a<4;a++) /*写入4位数据*/
{
if((da&0x08)!=0)di=1;
else di=0;
da=da<<1;
wr=0;
delay(3);
wr=1;
}
}
/* 测试主程序 */
main()
{
uchar o;
cs=0;
wcode(0x01);/*sys en*/
wcode(0x05);/*WDT DISABLE*/
wcode(0x04);/*TIMER DISABLE*/
wcode(0x29);/*1/4 DUTY*/
delay(100);
while(1)
{
delay(10);
wcode(0x03); /*LCD ON*/
delay(100);
for(o=0;o<32;o++)
{
wdata(o,0x0);
}
delay(1000);
for(o=0;o<32;o++)
{
wdata(o,0x0f);
}
delay(2000);
for(o=0;o<32;o++)/*0*/
{
wdata(o,0x0b);
o++;
wdata(o,0x0f);
}
delay(1000000);
for(o=0;o<32;o++)/*米*/
{
wdata(o,0x0b);
o++;
wdata(o,0x00);
}
delay(1000000);
for(o=0;o<32;o++)
{
wdata(o,0x0c);
o++;
wdata(o,0x0b);
}
delay(1000000);
for(o=0;o<32;o++)/**/
{
wdata(o,0x0f);
o++;
wdata(o,0x09);
}
for(o=0;o<32;o++)/*1*/
{
wdata(o,0x0e);
o++;
wdata(o,0x08);
}
delay(10000000);
for(o=0;o<32;o++)/**/
{
wdata(o,0x06);
o++;
wdata(o,0x0d);
cs=1;
delay(1000);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -