找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2246|回復(fù): 4
打印 上一主題 下一主題
收起左側(cè)

各位大神能幫萌新看一下這個1602程序?yàn)槭裁床伙@示嗎?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
#include <reg52.h>
#include<intrins.h>

sbit RS = P3 ^ 5;
sbit RW = P3 ^ 6;
sbit E  = P3 ^ 4;
#define DATA P0
void delayms(char ms);
char is_busy();
void write_cmd(unsigned char cmd);
void write_data(unsigned char dat);
void pos (unsigned char pos);
void main()
{
    write_cmd(0x38);
    delayms(1);
    write_cmd(0x0c);
    delayms(1);
    write_cmd(0x06);
    delayms(1);
    write_cmd(0x01);
    delayms(1);
   
    pos (0);
    write_data('1');
    write_data('2');
    write_data('3');
    write_data('4');
    write_data('5');
    write_data('6');
    write_data('7');
    write_data('8');
    write_data('9');
    write_data('0');
   
    pos (0x40);
   
    write_data('1');
    write_data('2');
    write_data('3');
    write_data('4');
    write_data('5');
   
    while(1);
}
void pos (unsigned char pos)
{
    write_cmd(pos|0x80);
}
void write_data(unsigned char dat)
{
    while(is_busy());
    RS = 1;
    RW = 0;
    E  = 0;
    DATA = dat;
    _nop_();
    E = 1;
    E = 0;
}
void write_cmd(unsigned char cmd)
{
    while(is_busy());
    RS = 0;
    RW = 0;
    E  = 0;
    DATA = cmd;
    _nop_();
    E = 1;
    E = 0;
}
char is_busy()
{
    int a=0;
    char result;
    RS = 0;
    RW = 1;
    E  = 1;
    _nop_();
    result = (1<<7 & DATA);
    E = 0;
    return result;
}
void delayms(char ms)
{
    while(ms--)
    {
        unsigned char i, j;
        i = 2;
        j = 239;
        do
        {
            while (--j);
        } while (--i);
    }
}


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:277550 發(fā)表于 2018-9-12 21:40 | 只看該作者


1、確認(rèn)一下忙檢測是否正常

2、EN的波形是否正確

回復(fù)

使用道具 舉報

板凳
ID:277550 發(fā)表于 2018-9-12 21:47 | 只看該作者
還有,P0端口,最好是上拉一下
回復(fù)

使用道具 舉報

地板
ID:277550 發(fā)表于 2018-9-12 22:07 | 只看該作者


參考代碼



評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復(fù)

使用道具 舉報

5#
ID:382067 發(fā)表于 2018-9-13 13:42 來自觸屏版 | 只看該作者
你調(diào)一下lcd顯示的對比度,可能已經(jīng)顯示了,但對比度太低,看不到,可以先用手壓一下屏幕,看看是否有字顯示
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表