找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

proteus仿真的时候LCD1602怎么全为高电平

查看数: 5455 | 评论数: 6 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2019-5-20 19:57

正文摘要:

程序如下 #include <reg52.H>                 //头文件 #include <intrins.h> #include "LCD1602.h" #define uchar unsigne ...

回复

ID:155507 发表于 2019-5-21 22:47
你这个程序不完整,全为高电平问题就是你的程序问题,

我不是你老师同学站在你身边,有问题时你一问,我一看,就知道了
ID:530977 发表于 2019-5-21 20:52
你可能没设置P0引脚输出为低电平
ID:543153 发表于 2019-5-21 19:18
#ifdef LCD_CHAR_1602_2005_4_9
#define LCD_CHAR_1602_2005_4_9
#define uchar unsigned char
#define uint unsigned int

sbit lcdrs = P2^0;
sbit lcdrw = P2^1;
sbit lcden = P2^2;

void delay(uint z){    //延时函数,此处使用晶振为11.0592MHz
    uint x,y;
    for(x = z;x > 0; x--)
    for(y = 110;y > 0; y--);


void write_com(uchar com){    //写入命令数据到LCD
    lcdrw = 0;
    lcdrs = 0;
    P0 = com;
    delay(5);
    lcden = 1;
    delay(5);
    lcden = 0;
}

void write_data(uchar data){    //写入字符显示数据到LCD
    lcdrw = 0;
    lcdrs = 1;
    p0 = date;
    delay(5);
    lcden = 1;
    delay(5);
    lcden = 0;
}

void init1602(){    //LCD1602初始化设定
    lcdrw = 0;
    lcden = 0;
    write_com(0x3C);
    write_com(0x3c);
    write_com(0x06);
    write_com(0x01);
    write_com(0x80);
}

void write_string(uchar *pp.uint n){    //采用指针的方法输入字符,n为字符数目
    int i;
    for(i = 0; i < n; i++)
    write_data(pp[i]);
}
#endif

这个是LCD1602的程序

ID:149451 发表于 2019-5-21 07:36
你程序没提供全,proteus图显然不对!没法帮你

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

Powered by 单片机教程网

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