找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6421|回复: 9
收起左侧

单片机+lcd1602只亮不显示 求大佬帮帮忙 附程序

[复制链接]
ID:1007718 发表于 2022-4-24 21:05 | 显示全部楼层 |阅读模式
IMG20220424192923.jpg TTFN3U`9[CQN0%8}28KZN1D.png
单片机源程序如下:
#include <STC12C5A60S2.H>

sbit EN=P2^0;    //定义LCD使能信号端
sbit RW=P2^1;    //定义LCD读/写选择端
sbit RS=P2^2;    //定义LCD数据/命令选择端

#define uchar unsigned char

void delay_ms(unsigned int z);//声明延时毫秒函数
void LCD1602_Init();                                       //声明LCD初始化函数
void check();                                              //声明测忙函数
void LCD1602_Write_com(uchar com);                         //声明LCD确定显示位置函数
void LCD1602_Write_dat(uchar dat);                         //声明LCD确定显示内容函数

void main()
{
        LCD1602_Init();
         while(1)
        {
                LCD1602_Write_com(0x80);
                LCD1602_Write_dat(0x34);
                }
}
/**********LCD1602初始化函数**********/
void LCD1602_Init()
{
        LCD1602_Write_com(0x38); //设置显示模式:两行字符,5*7点阵字符体,8位数据接口
        LCD1602_Write_com(0x08); //画面开
        LCD1602_Write_com(0x01); //显示清屏
        LCD1602_Write_com(0x0c); //显示开,光标关
        LCD1602_Write_com(0x06); //操作数据后地址+1,禁止光标移动
}

/**********测忙函数**********/
void check()
{
        uchar busy;        
        P0=0xff;
        RS=0;
        RW=1;
        do
        {
                EN=1;
                busy=P0;
                EN=0;
        }while(busy&0x80);
}

/**********LCD1602确定显示位置函数**********/
void LCD1602_Write_com(uchar com)
{
        check();  //检测LCD是否为忙碌状态,1为繁忙,0为空闲
        RS=0;
        RW=0;
        P0=com;
        delay_ms(10);
        EN=1;
        delay_ms(1);
        EN=0;
}

/**********LCD1602确定显示内容函数**********/
void LCD1602_Write_dat(uchar dat)
{
        check();  //检测LCD是否为忙碌状态
        RS=1;
        RW=0;
        P0=dat;
        delay_ms(10);
        EN=1;
        delay_ms(1);
        EN=0;
}
/**********延时毫秒函数**********/
void delay_ms(unsigned int z)
{
        unsigned int x,y;
        for(x=0;x<z;x++)
                for(y=0;y<200;y++);
}

回复

使用道具 举报

ID:390416 发表于 2022-4-24 22:58 | 显示全部楼层
LCD1602液晶最新资料 说明了具体的时间要求 http://www.51hei.com/bbs/dpj-205768-1.html
回复

使用道具 举报

ID:96682 发表于 2022-4-25 06:39 来自触屏版 | 显示全部楼层
仿真图中的对比库电位器接法并不对,实物中需调节到合适才能清晰显示。89C 和 12C 还是有些许区别
回复

使用道具 举报

ID:584814 发表于 2022-4-25 08:16 | 显示全部楼层
可能是线接错,时序(延时)不当。
本坛内有现成的DEMO随便找个MPU相当的下载试用就好。
回复

使用道具 举报

ID:1007718 发表于 2022-4-25 09:00 来自触屏版 | 显示全部楼层
man1234567 发表于 2022-4-25 08:16
可能是线接错,时序(延时)不当。
本坛内有现成的DEMO随便找个MPU相当的下载试用就好。

延时我调了的,1-1000ms快试完了都不行。
回复

使用道具 举报

ID:16255 发表于 2022-4-25 10:02 | 显示全部楼层
对比度调好了没有?图中的对比度电位器接错了。
应该是这么接↓↓↓↓↓↓↓↓↓
210124ya0zxsp3w07scf2h.png

回复

使用道具 举报

ID:1007718 发表于 2022-4-25 10:24 来自触屏版 | 显示全部楼层
man1234567 发表于 2022-4-25 08:16
可能是线接错,时序(延时)不当。
本坛内有现成的DEMO随便找个MPU相当的下载试用就好。

延时从1-1000ms快试完了都不行
回复

使用道具 举报

ID:1007718 发表于 2022-4-25 10:24 来自触屏版 | 显示全部楼层
mengsiu 发表于 2022-4-25 10:02
对比度调好了没有?图中的对比度电位器接错了。
应该是这么接↓↓↓↓↓↓↓↓↓

我感觉也是电位器接错了
回复

使用道具 举报

ID:1021813 发表于 2022-4-26 16:02 | 显示全部楼层
如图可以参考一下,还有一个文件里面有程序

1

1

温度传感器 光敏.zip

57.36 KB, 下载次数: 9

2

回复

使用道具 举报

ID:1007718 发表于 2022-4-26 20:45 | 显示全部楼层
pdxwu 发表于 2022-4-26 16:02
如图可以参考一下,还有一个文件里面有程序

找到问题了,VO接错了,那个接地把电位器拔了就好了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表