📄 yijing.c
字号:
/*------------------------------------------
lcd12864液晶显示驱动实
----------------------------------------------
/CS1----选择IC1,低有效 即 (左)64列
/CS2----选择IC2,低有效 即 (右)64列
-----------------------------------------------
RS: D/I=H,表示DB7~DB0为显示数据
D/I=L,表示DB7~DB0为显示指令数据
-----------------------------------------------
R/W: R/W=H,E=H数据被读到DB7~DB0
R/W=L,E信号下降沿,DDRAM数据被写到IR或DR
----------------------------------------------------
E: R/W=L,E信号下降沿锁存DB7~DB0
R/W=H,E=H DDRAM数据读到DB7~DB0
----------------------------------------------------
|DB0-----P1.0 | DB4-----P1.4 | CS1-------P3.2 |
|DB1-----P1.1 | DB5-----P1.5 | CS2-------P3.3 |
|DB2-----P1.2 | DB6-----P1.6 | RS-------P3.4 |
|DB3-----P1.3 | DB7-----P1.7 | RW-------P3.5 |
|17脚---A正电源 18脚----K地 | E-------P3.6 |
|VO-------0V |
---------------------------------------------------*/
#include<regx51.h>
#include<stdio.h>
#include<intrins.h>
#include"zimo.h"
#define CS1 P3_2
#define CS2 P3_3
#define RS P3_4
#define RW P3_5
#define E P3_6
#define Data P1
void OutFI(uchar i)
{
unsigned char data_sta;
EA=0;
do{
E=0;RW=1;RS=0;CS1=0;_nop_();
E=1;_nop_();_nop_();_nop_();
data_sta=DATA;
_nop_();_nop_();
E=0;RW=0;CS1=1;
}while(data_sta&0x80);
E=0;RW=0;RS=0;CS1=0;_nop_();
DATA=i;
E=1;_nop_();_nop_();_nop_();
E=0;RW=1;CS1=1;
EA=1;
}
void OutSI(uchar i)
{
unsigned char data_sta;
EA=0;
do{
E=0;RW=1;RS=0;CS2=0;_nop_();
E=1;_nop_();_nop_();_nop_();
data_sta=DATA;
_nop_();_nop_();
E=0;RW=0;CS2=1;
}while(data_sta&0x80);
E=0;RW=0;RS=0;CS2=0;_nop_();
DATA=i;
E=1;_nop_();_nop_();_nop_();
E=0;RW=1;CS2=1;
EA=1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -