找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2021|回復(fù): 7
收起左側(cè)

請(qǐng)各位大佬幫我看看為啥我的單片機(jī)LCD1602仿真顯示不出來?

[復(fù)制鏈接]
ID:1026584 發(fā)表于 2023-3-25 22:26 | 顯示全部樓層 |閱讀模式
3.png

代碼如下:
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char

sbit RS=P3^5;
sbit RW=P3^6;
sbit E=P3^4;
uint i,j;
uchar num;
uchar code table1[]="YL51   MCU";
uchar code table2[]="000000000000";

void delay(uint x)
{
        for(i=x;i>0;i--)
        {
        for(j=120;j>0;j--);
        }
}
void write_com(uchar com)
        {
                RS=0;
                RW=0;
                E=0;
                P2=com;
                E=1;
                delay(5);
                E=0;
        }
void write_data(uchar dat)
{
        RS = 1;  
        RW = 0;  
        E=0;
        P2 = dat;  
        E = 1;
        delay(5);  
        E = 0;  
}
void init()
{
         write_com(0x38);
         write_com(0x08);
         write_com(0x01);
         write_com(0x06);
}
void main()
{
        init();
        for(num=0;num<9;num++)
        {
                write_data(table1[num]);
                delay(300);
        }
        write_com(0x80+0x40);
        for(num=0;num<16;num++)
        {
                write_data(table2[num]);
                delay(300);
        }
        while(1);
}


回復(fù)

使用道具 舉報(bào)

ID:161164 發(fā)表于 2023-3-25 23:00 | 顯示全部樓層
  1. void init()
  2. {
  3.          write_com(0x38);
  4.          write_com(0x0C);
  5.          write_com(0x01);
  6.          write_com(0x06);
  7. }
復(fù)制代碼


回復(fù)

使用道具 舉報(bào)

ID:1026584 發(fā)表于 2023-3-25 23:13 | 顯示全部樓層
回復(fù)

使用道具 舉報(bào)

ID:94031 發(fā)表于 2023-3-26 06:51 | 顯示全部樓層

初始化改一下:
void init()
{
        RW=0;
        write_com(0x38);//設(shè)置16*2顯示,5*7點(diǎn)陣,8位數(shù)據(jù)接口
        write_com(0x01);//顯示清零,數(shù)據(jù)指針清零
        write_com(0x0c);//設(shè)置開顯示,不顯光標(biāo)
        write_com(0x06);//設(shè)置寫一個(gè)字符后地址指針加1
        write_com(0x80);//數(shù)據(jù)指
}
回復(fù)

使用道具 舉報(bào)

ID:213173 發(fā)表于 2023-3-26 06:55 | 顯示全部樓層
  1. #include<reg52.h>
  2. #define uint unsigned int
  3. #define uchar unsigned char

  4. sbit RS=P3^5;
  5. sbit RW=P3^6;
  6. sbit E=P3^4;
  7. uint i,j;
  8. uchar num;
  9. uchar code table1[]="YL51   MCU";
  10. uchar code table2[]="000000000000";

  11. void delay(uint x)
  12. {
  13.         for(i=x;i>0;i--)
  14.         {
  15.                 for(j=120;j>0;j--);
  16.         }
  17. }
  18. void write_com(uchar com)
  19. {
  20.         RS=0;
  21.         P2=com;
  22.         E=1;
  23.         delay(1);
  24.         E=0;
  25. }
  26. void write_data(uchar dat)
  27. {
  28.         RS=1;  
  29.         P2=dat;  
  30.         E=1;
  31.         delay(1);  
  32.         E=0;  
  33. }
  34. void init()
  35. {
  36.         E=0;
  37.         RW=0;
  38.         write_com(0x38);
  39.         write_com(0x0c);
  40.         write_com(0x01);
  41.         write_com(0x06);
  42. }
  43. void main()
  44. {
  45.         init();
  46.         write_com(0x80);
  47.         for(num=0;num<10;num++)
  48.         {
  49.                 write_data(table1[num]);
  50.                 delay(100);
  51.         }
  52.         write_com(0x80+0x40);
  53.         for(num=0;num<12;num++)
  54.         {
  55.                 write_data(table2[num]);
  56.                 delay(100);
  57.         }
  58.         while(1);
  59. }
復(fù)制代碼
回復(fù)

使用道具 舉報(bào)

ID:1026584 發(fā)表于 2023-3-26 09:07 | 顯示全部樓層

非常感謝,已經(jīng)可以了。
麻煩能說明一下我代碼的問題嗎?我實(shí)在看不出來哪里有問題
回復(fù)

使用道具 舉報(bào)

ID:213173 發(fā)表于 2023-3-26 17:05 | 顯示全部樓層
qzusergod 發(fā)表于 2023-3-26 09:07
非常感謝,已經(jīng)可以了。
麻煩能說明一下我代碼的問題嗎?我實(shí)在看不出來哪里有問題

就是在你的程序基礎(chǔ)上改的,你逐句對(duì)比不就知道哪里有問題?
回復(fù)

使用道具 舉報(bào)

ID:1026584 發(fā)表于 2023-3-27 15:27 | 顯示全部樓層
wulin 發(fā)表于 2023-3-26 17:05
就是在你的程序基礎(chǔ)上改的,你逐句對(duì)比不就知道哪里有問題?

ok感謝
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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