#include <reg52.H>
sbit lcdrs=P2^5//命令/数据
sbit lcdrw=P2^6//读/写
sbit lcden=P2^7 //使能端
static void delay(uchar zz)
{
uchar a,b
for(a=zza>0a--)
for(b=35b>0b--)
}
void WriteData(uchar x) //写数据
{
lcden=0
lcdrs=1
lcdrw=0
P0=x
delay(10)
lcden=1
delay(10)
lcden=0
lcdrw=1
}
void WriteCommand(uchar y) //写命令
{
lcden=0// 写指令 输入:RS=0,RW=0,E=下降沿脉冲,DB0~DB7=指令码 输出:无
lcdrs=0// 写数据 输入:RS=1,RW=0,E=下降沿脉冲,DB0~DB7=数据 输枝早出:无
lcdrw=0// 读数据 输入:RS=1,RW=1,E=1 输出:DB0~DB7=数据
P0=y // 读状态 输入此孙:RS=0,RW=1,E=1 输出:DB0~森搭链DB7=状态字
delay(10)
lcden=1
delay(10)
lcden=0
lcdrw=1
}
void Init_LCD1602()
{
WriteCommand(0x01)//清屏
WriteCommand(0x38)//1602显示,5*7点阵设置
WriteCommand(0x38)
WriteCommand(0x0c)//开显示,不显示光标
}
首先确保硬件没问题,如果是自己卜扒画的PCB,天手返线布线有要求。如果是淘宝的买的板子也要注意,以前我就是买过几块板子做测试,结果死活不行,再重型薯昌新购买,程序就调通了(用调通的程序测试之前买的板子也不行)。还有个奇葩的事情,当时调程序时,spi死活调不通,调了快一个星期,后来把spi速率将低就可以了,再后来调到原来的速率也可以了。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)