找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 12386|回復(fù): 55
收起左側(cè)

1602液晶顯示

  [復(fù)制鏈接]
ID:65547 發(fā)表于 2014-11-8 17:37 | 顯示全部樓層 |閱讀模式
請問各位大神,為啥將這個程序?qū)雴纹瑱C(jī)1602顯示屏上不顯示呢??
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar code table[]="I LOVE MCU!";
uchar code table1[]="wo de ni!!!";
sbit RS = P2^4;   //定義端口
sbit RW = P2^5;
sbit EN = P2^6;
uchar num;
void delay(uint x) //延時1ms
  {
   uint i,j;
   for(i=x;i>=0;i--)
      for(j=100;j>=0;j--);
   }
void write_com(uchar com)//寫入命令字操作
  {
    RS=0;
    RW=0;
    P0=com;
    delay(5);
    EN=1;
    delay(5);
    EN=0;
  }

void write_data(uchar date)//寫入數(shù)據(jù)字操作
   {
    RS=1;
    RW=0;
    P0=date;
    delay(5);
    EN=1;
    delay(5);
    EN=0;
   }

void init()//1602顯示屏初始化
{
  write_com(0x38);
  write_com(0x0c);
  write_com(0x06);
  write_com(0x01);
}

void main()
{
init();
write_com(0x80);
for(num=0;num<11;num++)
   {
    write_data(table[num]);
    delay(10);
    }

write_com(0x80+0x40);
  for(num=0;num<11;num++)
    {  
      write_data(table1[num]);
      delay(10);
    }
   while(1);
}


回復(fù)

使用道具 舉報

ID:1 發(fā)表于 2014-11-8 20:33 | 顯示全部樓層
有可能是你的程序 不匹配你的電路
回復(fù)

使用道具 舉報

ID:68253 發(fā)表于 2014-11-8 21:24 | 顯示全部樓層
檢查看看硬件電路連接正確了沒有
回復(fù)

使用道具 舉報

ID:61876 發(fā)表于 2014-11-9 15:39 | 顯示全部樓層
我認(rèn)為一、 程序缺少寫"wo de ni!!!"的代碼;二、for(i=x;i>=0;i--)for(j=100;j>=0;j--);這兩句你可以改成for(i=x;i>0;i--)for(j=100;j>0;j--); 就完全可以顯示了。



評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:65547 發(fā)表于 2014-11-9 18:08 | 顯示全部樓層
第一個就是個數(shù)組定義,以查表的形式表現(xiàn),還需要什么代碼?
回復(fù)

使用道具 舉報

ID:65547 發(fā)表于 2014-11-9 18:08 | 顯示全部樓層
gaozhaohong 發(fā)表于 2014-11-9 15:39
我認(rèn)為一、 程序缺少寫"wo de ni!!!"的代碼;二、for(i=x;i>=0;i--)for(j=100;j>=0;j--);這兩句你可以改成f ...

第一個就是個數(shù)組定義,以查表的形式表現(xiàn),還需要什么代碼?
回復(fù)

使用道具 舉報

ID:66137 發(fā)表于 2014-11-9 21:52 | 顯示全部樓層
延時函數(shù)這里錯了for(j=100;j>=0;j--);............,這里改了后還不顯示的話看看屏幕是不是一直是白板,是這樣的話再看看是不是屏幕對比度沒有調(diào)好。
回復(fù)

使用道具 舉報

ID:61876 發(fā)表于 2014-11-12 21:38 | 顯示全部樓層
樓主的程序是顯示兩行的字符串,可是代碼卻只有一行的。

評分

參與人數(shù) 1黑幣 +7 收起 理由
aabbcc + 7

查看全部評分

回復(fù)

使用道具 舉報

ID:68846 發(fā)表于 2014-11-15 13:50 | 顯示全部樓層
有些液晶是4線的有些是8線的,首先看看你的是4線還是8線
回復(fù)

使用道具 舉報

ID:72751 發(fā)表于 2015-1-25 22:12 | 顯示全部樓層
延時函數(shù)存在問題,但我感覺LCD1602時序上也有點(diǎn)問題的,EN高脈沖為產(chǎn)生的,僅是上升沿啊,在給予指令或數(shù)據(jù)之前應(yīng)該將EN=0吧

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:73362 發(fā)表于 2015-2-6 22:39 | 顯示全部樓層
延時里不能是i>=0吧,=0在減的話直接跳過了,再一個檢查下引腳是否正確,和液晶顯示對比度的問題,調(diào)一調(diào)滑阻

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:83454 發(fā)表于 2015-6-19 18:00 | 顯示全部樓層
其實(shí)我也不太懂,所以希望和大家共同進(jìn)步

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:60805 發(fā)表于 2015-6-22 20:16 | 顯示全部樓層
首先檢查硬件接口對不對,如果沒問題的話,再看軟件的時序正不正常。

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:61876 發(fā)表于 2015-6-23 20:56 | 顯示全部樓層
修改:for(i=x;i>=0;i--)
      for(j=100;j>=0;j--);
為:for(i=x;i>0;i--)
      for(j=100;j>0;j--);
OK!

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:80186 發(fā)表于 2015-6-24 21:47 | 顯示全部樓層
看看端口對了嗎

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:83877 發(fā)表于 2015-6-25 11:05 | 顯示全部樓層
一步一步調(diào)試

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:83999 發(fā)表于 2015-6-26 17:12 | 顯示全部樓層
看看屏幕對比度                              

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:68804 發(fā)表于 2015-6-26 17:29 | 顯示全部樓層
請問下你的屏幕自帶字庫不
如果沒有帶字庫那就顯示不了

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:69706 發(fā)表于 2015-6-26 21:46 | 顯示全部樓層
如果程序沒錯,那你就檢查檢查你的電路是否連接好

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:84235 發(fā)表于 2015-6-29 13:33 | 顯示全部樓層
應(yīng)該沒錯 看看登陸問題

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:84250 發(fā)表于 2015-6-29 15:26 | 顯示全部樓層
新手,想下載資料學(xué)習(xí),可惜沒黑B

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:85338 發(fā)表于 2015-7-11 14:05 | 顯示全部樓層
電路和程序不匹配

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:85124 發(fā)表于 2015-7-11 17:12 | 顯示全部樓層
附圖

13.png

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:85124 發(fā)表于 2015-7-11 17:13 | 顯示全部樓層

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:85424 發(fā)表于 2015-7-12 00:56 | 顯示全部樓層
感覺應(yīng)該是電路圖的問題,因?yàn)槲易约鹤龅臅r候,程序是對的,就是仿真的時候,LCD亮了,但是不顯示字符,后來換了連線方法,就可以了

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:85547 發(fā)表于 2015-7-13 17:49 | 顯示全部樓層
你的電路連線估計和郭天祥的不一樣,要重新定義端口

評分

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

查看全部評分

回復(fù)

使用道具 舉報

ID:111582 發(fā)表于 2016-3-31 14:31 | 顯示全部樓層
正在研究1602
回復(fù)

使用道具 舉報

ID:111726 發(fā)表于 2016-4-1 11:43 | 顯示全部樓層
#include<reg52.h>  #define uchar unsigned char #define uint unsigned int  uchar code table[]="I LOVE MCU!"; uchar code table1[]="wo de ni!!!";  sbit RS = P2^4;   //定義端口  sbit RW = P2^5; sbit EN = P2^6;  void delay1ms(unsigned int ms)//延時1ms {         unsigned int i,j;         for(i=0;i<ms;i++)         for(j=0;j<100;j++); }  void wr_com(unsigned char com)//寫指令// {          delay1ms(1);         RS=0;         RW=0;         EN=0;         P0=com;         delay1ms(1);         EN=1;         delay1ms(1);         EN=0; }  void wr_dat(unsigned char dat)//寫數(shù)據(jù)// {          delay1ms(1);;         RS=1;         RW=0;         EN=0;         P0=dat;         delay1ms(1);         EN=1;         delay1ms(1);         EN=0; }  void lcd_init()//初始化設(shè)置// {                                 wr_com(0x38);delay1ms(5);         wr_com(0x38);delay1ms(5);         wr_com(0x08);delay1ms(5);         wr_com(0x01);delay1ms(5);         wr_com(0x06);delay1ms(5);         wr_com(0x0c);delay1ms(5); }   void display(unsigned char *p)//顯示字符串// {         while(*p!='\0')         {                 wr_dat(*p);                 p++;                 delay1ms(5);         } }  void main() {          lcd_init();         wr_com(0x80);         display(table);         wr_com(0x80+0x40);         display(table1); }
回復(fù)

使用道具 舉報

ID:111726 發(fā)表于 2016-4-1 11:49 | 顯示全部樓層
yaozhuanju 發(fā)表于 2016-4-1 11:43
#include  #define uchar unsigned char #define uint unsigned int  uchar code table[]="I LOVE MCU!"; u ...

顯示兩行字符串,在初始化時寫入兩次write_com(0x38);字符串的顯示函數(shù)按照從頭至尾顯示,就可以不用因?yàn)樽址臄?shù)量而擔(dān)心字符顯示不全的問題
回復(fù)

使用道具 舉報

ID:111877 發(fā)表于 2016-4-2 08:55 | 顯示全部樓層
有可能是你的程序 不匹配你的電路
回復(fù)

使用道具 舉報

ID:84495 發(fā)表于 2016-4-2 10:42 | 顯示全部樓層
本帖最后由 absflash 于 2016-4-2 10:45 編輯

void init() (void)
{
   LCD_Write_Com(0x38);    /*顯示模式設(shè)置*/
   DelayMs(5);
   LCD_Write_Com(0x38);
   DelayMs(5);
   LCD_Write_Com(0x38);
   DelayMs(5);
   LCD_Write_Com(0x38);  
   LCD_Write_Com(0x08);    /*顯示關(guān)閉*/
   LCD_Write_Com(0x01);    /*顯示清屏*/
   LCD_Write_Com(0x06);    /*顯示光標(biāo)移動設(shè)置*/
   DelayMs(5);
   LCD_Write_Com(0x0C);    /*顯示開及光標(biāo)設(shè)置*/
   }
   
/*------------------------------------------------
                    主函數(shù)
------------------------------------------------*/
void main(void)
{
init();
while (1)
{
write_com(0x80);
for(num=0;num<11;num++)
   {
    write_data(table[num]);
    delay(10);
    }

write_com(0x80+0x40);
  for(num=0;num<11;num++)
    {  
      write_data(table1[num]);
      delay(10);
    }
}
}

先改成這個試試,最好加上清屏那個函數(shù)哦 ,慢慢調(diào),就快成功了
回復(fù)

使用道具 舉報

ID:79544 發(fā)表于 2016-4-2 20:06 | 顯示全部樓層
程序沒問題,假如是1T單片機(jī)就把延時加長點(diǎn),12T的程序沒問題,查看你的硬件電路,單片機(jī)IO口和程序的匹配
回復(fù)

使用道具 舉報

ID:112045 發(fā)表于 2016-4-3 13:59 | 顯示全部樓層
網(wǎng)上下載例程對比一下
回復(fù)

使用道具 舉報

ID:112070 發(fā)表于 2016-4-3 17:45 | 顯示全部樓層
初始化時,write_com(0x38);這條再多些幾次,因?yàn)橛械囊壕э@示是4線或者8線
回復(fù)

使用道具 舉報

ID:153199 發(fā)表于 2017-1-1 13:17 | 顯示全部樓層
結(jié)合電路分析程序
回復(fù)

使用道具 舉報

ID:195690 發(fā)表于 2017-5-2 20:44 | 顯示全部樓層
少年偏愛Ta 發(fā)表于 2014-11-9 18:08
第一個就是個數(shù)組定義,以查表的形式表現(xiàn),還需要什么代碼?

程序是沒什么問題,可以把硬件電路放上來看看哪里有問題,應(yīng)該是硬件引腳接的有問題
回復(fù)

使用道具 舉報

ID:195690 發(fā)表于 2017-5-2 20:45 | 顯示全部樓層
程序代碼買有問題,應(yīng)該是硬件的引腳接的有問題,檢查一下引腳的接線
回復(fù)

使用道具 舉報

ID:195129 發(fā)表于 2017-5-2 20:57 | 顯示全部樓層
單片機(jī)引腳和你定義的是否一致
回復(fù)

使用道具 舉報

ID:195773 發(fā)表于 2017-5-2 21:13 | 顯示全部樓層
程序和電路不搭配
回復(fù)

使用道具 舉報

ID:137822 發(fā)表于 2017-5-3 13:42 | 顯示全部樓層
在初始化子函數(shù)里加條EN=0看下
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

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