欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

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

QQ登錄

只需一步,快速開始

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

求助大佬!我的LCD1602顯示屏一直沒有顯示!

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:847479 發(fā)表于 2020-11-22 23:08 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
我也不知道是哪的問題!求各位大佬幫我找找問題!!!


這是我接電源和地的地方!


顯示屏一直就這樣!

我顯示屏上的vo沒接,do到d7依次接的P20--P27!


這是我寫的單片機(jī)代碼!
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int

sbit E=P0^5;                //1602使能引腳
sbit RW=P0^6;                //1602讀寫引腳        
sbit RS=P0^7;                //1602數(shù)據(jù)/命令選擇引腳

void delay()   //延時(shí)1ms
{
uint i,j;
   i=2;
   j=239;
   do
    {
          while(--j);
        }while(--i);
}

void writecmd(uchar cmd)  
{
E=0;      
RS=0;
RW=0;
P2=cmd;   
E=1;  
delay();
E=0;
delay();
}
void writedata(uchar dat)
{  
  E=0;     
  RS=1;
  RW=0;
  P2=dat;
  E=1;  
  delay();
  E=0;
  delay();
}
void init(void)              
{  
delay();
writecmd(0x38);
delay();
writecmd(0x38);
writecmd(0x08);
writecmd(0x01);
writecmd(0x06);
writecmd(0x0c);
}
void main ()
{
init();
writecmd(0x82);
writedata(0x41);
}                        


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

使用道具 舉報(bào)

沙發(fā)
ID:97554 發(fā)表于 2020-11-23 09:17 | 只看該作者
V0找個(gè)200歐電阻接地
回復(fù)

使用道具 舉報(bào)

板凳
ID:97554 發(fā)表于 2020-11-23 09:18 | 只看該作者
或者按照電路原理圖給的,接一可調(diào)電阻,調(diào)節(jié)直至顯示清晰
回復(fù)

使用道具 舉報(bào)

地板
ID:315554 發(fā)表于 2020-11-23 10:25 | 只看該作者
我是V0和Vss之間搭一個(gè)5.1K電阻,
回復(fù)

使用道具 舉報(bào)

5#
ID:847479 發(fā)表于 2020-11-23 17:52 | 只看該作者
楊雪飛 發(fā)表于 2020-11-23 09:18
或者按照電路原理圖給的,接一可調(diào)電阻,調(diào)節(jié)直至顯示清晰

這是5k的
C:\Users\lenovo\Desktop
這是1K的!
還是沒有顯示!!!
回復(fù)

使用道具 舉報(bào)

6#
ID:847479 發(fā)表于 2020-11-23 17:55 | 只看該作者
楊雪飛 發(fā)表于 2020-11-23 09:18
或者按照電路原理圖給的,接一可調(diào)電阻,調(diào)節(jié)直至顯示清晰

還是沒有顯示呢!
回復(fù)

使用道具 舉報(bào)

7#
ID:213173 發(fā)表于 2020-11-23 21:03 | 只看該作者
本帖最后由 wulin 于 2020-11-24 05:56 編輯

硬件:P0.5~P0.7要加10K上拉電阻!
軟件:
void delay()                //1ms@12.000MHz
{
        unsigned char i, j;//數(shù)據(jù)類型不同延時(shí)相差很大!!!
        i = 2;
        j = 239;
        do
        {
                while (--j);
        } while (--i);
}

void main()
{
        init();
        writecmd(0x82);
        writedata(0x41);
        while(1);//此句不可以少!!!
}
回復(fù)

使用道具 舉報(bào)

8#
ID:840362 發(fā)表于 2020-11-23 21:28 | 只看該作者
看一下電路接對(duì)了嗎
回復(fù)

使用道具 舉報(bào)

9#
ID:846569 發(fā)表于 2020-11-23 21:44 | 只看該作者
這是我的代碼:你更改 LCD_Data和三個(gè)LCD的腳就可以直接用了

用法是在main()里面先初始化LCD_Init();再直接調(diào)用LcdShowStr(4,0);屏幕上顯示的是LED_NUM[3]里的三個(gè)數(shù)據(jù)
附上原理圖

#define LCD_Data P0

sbit LCD_E=P2^7;
sbit LCD_RW=P2^5;
sbit LCD_RS=P2^6;

unsigned char LED_NUM[3];

void LCD_ReadStatus(void)
{

3.png (63.13 KB, 下載次數(shù): 58)

3.png

評(píng)分

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

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

10#
ID:847479 發(fā)表于 2020-11-24 11:19 | 只看該作者
wulin 發(fā)表于 2020-11-23 21:03
硬件:P0.5~P0.7要加10K上拉電阻!
軟件:
void delay()                //1ms@12.000MHz

我沒有接那個(gè)10k電阻,但是其他的我改了一下,顯示出來了!感謝大佬!謝謝!
回復(fù)

使用道具 舉報(bào)

11#
ID:847479 發(fā)表于 2020-11-24 11:20 | 只看該作者
感謝大家!謝謝各位大佬!問題解決了!
回復(fù)

使用道具 舉報(bào)

12#
ID:845694 發(fā)表于 2020-11-24 14:34 來自觸屏版 | 只看該作者
HSY666NB 發(fā)表于 2020-11-23 21:44
這是我的代碼:你更改 LCD_Data和三個(gè)LCD的腳就可以直接用了

用法是在main()里面先初始化LCD_Init();再 ...

3腳接個(gè)2K電阻
回復(fù)

使用道具 舉報(bào)

13#
ID:848390 發(fā)表于 2020-11-24 14:49 來自觸屏版 | 只看該作者
檢查v0口是否接了電阻,如果接了,看接的電阻是否合適
回復(fù)

使用道具 舉報(bào)

14#
ID:924233 發(fā)表于 2021-7-6 09:45 | 只看該作者
怎么能夠顯示出來的,能不能教一下
回復(fù)

使用道具 舉報(bào)

15#
ID:161164 發(fā)表于 2021-7-6 11:02 | 只看該作者
kriswang 發(fā)表于 2021-7-6 09:45
怎么能夠顯示出來的,能不能教一下

如7樓所說的,delay里的數(shù)據(jù)類型不能改
先看樓主的代碼


  1. void delay()   //延時(shí)1ms
  2. {
  3. unit i,j;
  4.    i=2;
  5.    j=239;
  6.    do
  7.     {
  8.           while(--j);
  9.         }while(--i);
  10. }
復(fù)制代碼

看看代碼是在干什么
j = 239 -> while(--j)
先把j減一,再看看是否不等于零(不等于零為真,等于零為假)
當(dāng)減了239下,while(--j)會(huì)跳出進(jìn)入do...while(--i)
i會(huì)被減一再進(jìn)入while(--j)
重點(diǎn)來了,此是j已經(jīng)是0,再減就會(huì)變回65535 (uint = unsigned int 范圍是0~65535)
所以樓主的delay會(huì)輪回239 + 65536= 65775 次
如改為七樓的unsigned char(0~255)的delay則會(huì)輪回239 + 256 = 495 次
是樓主的132分之一
12T 8051在12Mhz 的運(yùn)行速度大概是 2us一行
七樓的delay約等于1ms
而樓主的delay就要132ms
對(duì)于1602來說太久了

回復(fù)

使用道具 舉報(bào)

16#
ID:955021 發(fā)表于 2021-7-21 17:45 | 只看該作者
查看一下是不是接線出現(xiàn)了錯(cuò)誤
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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