|
源码
#include <reg51.h>
sbit rs=P2^0;
sbit rw=P2^1;
sbit en=P2^2;
void delay(int n) //延时函数
{
int x,y;
for(x=n;x>0;x--)
for(y=999;y>0;y--);
}
void lcd_wcom(char com) //指令写入函数
{
rs=0; //输入指令
rw=0;
P0=com;
delay(15);
en=1;
en=0;
}
void lcd_wdat(char dat) //数据写入函数
{
rs=1; //输入数据
rw=0;
P0=dat;
delay(15);
en=1;
delay(15);
en=0;
}
void lcd_init() //1602lcd初始化函数
{
P0=0X00;
lcd_wcom(0x38); //功能设定指令:1.数据总线8位 2.显示两行 3. 5*8总线字符
lcd_wcom(0x0c); //控制整体显示并且关闭光标
lcd_wcom(0x06); //屏幕上的文字左移或者右移无效
lcd_wcom(0x01); //清显示,光标复位到地址00H位置
}
void main()
{
lcd_init(); //初始化lcd
while(1){
lcd_wcom(0x86);//指定显示位置
lcd_wdat(0x33);//3
}
}
有没有大佬帮忙看一下问题出在哪里
|
-
1.png
(10.02 KB, 下载次数: 110)
原理图
-
2.png
(11.84 KB, 下载次数: 108)
然后他运行起来是这样的,P2口是灰色的,我百度了一下说是电压不稳?
|