找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2982|回复: 5
收起左侧

LCD1602显示问题

[复制链接]
ID:120602 发表于 2016-5-13 19:41 | 显示全部楼层 |阅读模式
自己焊接的板子可以显示开发板自带的程序,但自己写的程序可以在开发板上运行,却不能在自己焊接的板子上运行。这是怎么回事?原理图和程序如下/*LCD1602驱动程序*/

#include<reg51.h>
#include<string.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char

sbit RS=P2^6;
sbit RW=P2^5;
sbit EN=P2^7;


//延时
void Delay( uint time)
{
       
        while(time--) ;//当晶振为11.0592MHZ,num=10时,延时时间约为70us
       
}


//通过控制LCD1602的RS、RW、EN三个管脚来获取LCD1602的忙状态
void Busy_Status_LCD1602()
{
       
        while(1)
        {
                P0=0xFF;
            RS=0;
        RW=1;
            EN=1;
            Delay(120);
                if((P0&0x80)!=0x80)
                {
                        EN=0;
                        break;
                }
                EN=0;
                Delay(120);
               
        }
       
}


//通过控制LCD1602的RS、RW、EN三个管脚向LCD1602传输命令
void Write_Command_LCD1602( uchar command)
{
        Busy_Status_LCD1602();
        RS=0;
        RW=0;
        EN=0;
        //P2=command;
        P0=command;
        EN=1;
        Delay(120);
        EN=0;
}


//通过控制LCD1602的RS、RW、EN三个管脚向LCD1602传输数据
void Write_Data_LCD1602(uchar data_LCD)
{
        Busy_Status_LCD1602();
        RS=1;
        RW=0;
        EN=0;
        //P2=data_LCD;
        P0=data_LCD;
        EN=1;
        Delay(120);
        EN=0;
}


//设置LCD1602的显示模式、数据传输模式等
void Initialize_LCD1602()
{
        Write_Command_LCD1602(0x38);//双行显示、显示5x7的点阵字符、8线传输
        Delay(120);
        Write_Command_LCD1602(0x0C);//显示开、光标关、光标闪烁关
        Delay(120);
        Write_Command_LCD1602(0x06);//光标移动方向右移、屏幕上所有文字不移动
        Delay(120);
        Write_Command_LCD1602(0x01); //清屏
        Delay(120);
}



void main()
{
       
    uchar i,addr;
        Initialize_LCD1602();
        Delay(50000);
        Delay(50000);
        while(1)
        {
                addr=0x80;
                Write_Command_LCD1602(addr);
                Write_Data_LCD1602('R');
        }
       
}


LCD1602硬件原理图

LCD1602硬件原理图


回复

使用道具 举报

ID:96682 发表于 2016-5-13 21:15 | 显示全部楼层
LZ,应该是你自己焊的板子与开发板不一样吧?
回复

使用道具 举报

ID:97007 发表于 2016-5-14 11:27 | 显示全部楼层
首先看看io口有没有搞错,不然就是你开发上有其他外设需要选择
回复

使用道具 举报

ID:120850 发表于 2016-5-15 11:19 | 显示全部楼层
看一下你的板子有没有虚焊什么的,用万用表检查一下
回复

使用道具 举报

ID:153199 发表于 2017-1-8 17:47 | 显示全部楼层
硬件有问题
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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