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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6484|回復: 16
收起左側

求助,關于LCD1602的顯示問題和如何判斷是否損壞

  [復制鏈接]
回帖獎勵 20 黑幣 回復本帖可獲得 2 黑幣獎勵! 每人限 1 次
ID:677520 發表于 2020-3-5 09:20 | 顯示全部樓層 |閱讀模式
如題,為什么會出現這種情況,百度上都沒有相關的案例,是不是我的1602壞了抑或是程序問題
new image - 93d8a.jpg
回復

使用道具 舉報

ID:342451 發表于 2020-3-5 10:15 | 顯示全部樓層
最簡單快捷的方法就是,隨便下載個歷程,照著別人的代碼接下線,如果不能正常的執行,就是LCD壞了,反之檢查你的代碼。
回復

使用道具 舉報

ID:702573 發表于 2020-3-5 10:18 | 顯示全部樓層
感覺應該是線接錯了,要么就是程序定義的口和你實際接的口不一樣
回復

使用道具 舉報

ID:462827 發表于 2020-3-5 10:38 | 顯示全部樓層
放到好的開發板和正確的例程上去試
回復

使用道具 舉報

ID:584814 發表于 2020-3-5 11:14 | 顯示全部樓層
程序貼上來看看才知道是不是程序問題。如果程序沒問題接線也沒問題那就是壞了。
回復

使用道具 舉報

ID:702943 發表于 2020-3-5 16:56 | 顯示全部樓層
應該是程序有問題,以前也遇到過這樣的情況,如果屏幕是亮的,就沒有壞
回復

使用道具 舉報

ID:703118 發表于 2020-3-5 20:00 | 顯示全部樓層
看起來沒問題能亮,像素也點亮了
回復

使用道具 舉報

ID:677520 發表于 2020-3-6 12:45 | 顯示全部樓層
這是程序
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit lcdrs=P2^2;
sbit lcdrw=P2^1;
sbit lcden=P2^0;
uchar table1[]="AT89C51";
uchar table2[]="STC89C52RC";

void delay_ms(uint z)
{
   uint i,j;
   for(i=z;i>0;i--)
      for(j=110;j>0;j--);
}

void write_com(uchar com)  //寫指令
{
       
                lcdrw=0;
                lcdrs=0;                        
        P0=com;   //將指令賦給P0
        lcden=1;  //高脈沖                     
        delay_ms(5);
        lcden=0;                     
}

void write_dat(uchar dat)  //寫數據
{
       
        lcdrs=1;
                lcdrw=0;
        P0=dat;   //數據賦給P0
        lcden=1;  //高脈沖
        delay_ms(5);
        lcden=0;
}

void init()
{        lcden=0;
        write_com(0x01);
        delay_ms(20);       
        write_com(0x06);
        delay_ms(20);
        write_com(0x0C);
        delay_ms(20);
        write_com(0x38);
        delay_ms(20);
}

void main()
{
        uchar i;
        init();
       
        write_com(0x80);
        for(i=0;i<7;i++)  
                write_dat(table1[i]);
        delay_ms(10000);
       
        write_com(0x80);
        for(i=0;i<10;i++)  
       write_dat(table2[i]);
   
        while(1);
}
回復

使用道具 舉報

ID:677520 發表于 2020-3-6 12:46 | 顯示全部樓層
之一知足 發表于 2020-3-5 10:15
最簡單快捷的方法就是,隨便下載個歷程,照著別人的代碼接下線,如果不能正常的執行,就是LCD壞了,反之檢 ...

謝謝回答,我試過別人的代碼,也有改接線,區別在于右邊黑的多少
回復

使用道具 舉報

ID:677520 發表于 2020-3-6 12:47 | 顯示全部樓層
秋易老 發表于 2020-3-5 10:18
感覺應該是線接錯了,要么就是程序定義的口和你實際接的口不一樣

感謝回復,接線檢查過很多次了,也試過其他程序,沒有解決
回復

使用道具 舉報

ID:677520 發表于 2020-3-6 12:48 | 顯示全部樓層
東寧 發表于 2020-3-5 16:56
應該是程序有問題,以前也遇到過這樣的情況,如果屏幕是亮的,就沒有壞

應該不是程序問題,換了好幾個程序都不行
回復

使用道具 舉報

ID:677520 發表于 2020-3-6 12:53 | 顯示全部樓層
換了其他程序,黑塊數量會有變化關閉電源黑塊還會停留一會再消失

斷電后會顯示一會

斷電后會顯示一會

換程序黑塊數量變化

換程序黑塊數量變化
回復

使用道具 舉報

ID:487821 發表于 2020-3-6 14:12 | 顯示全部樓層
屏里導電層接觸不良,拆下重裝一下
回復

使用道具 舉報

ID:703392 發表于 2020-3-6 14:53 | 顯示全部樓層

應該是程序有問題,
回復

使用道具 舉報

ID:433688 發表于 2020-3-6 18:11 | 顯示全部樓層
你可以看看是不是接口接錯了 LCD接線都很重要
回復

使用道具 舉報

ID:316880 發表于 2020-3-6 19:24 | 顯示全部樓層
下載一個沒有問題的程序進去就可以判斷是不是液晶屏的問題了
回復

使用道具 舉報

ID:213173 發表于 2020-3-7 10:49 | 顯示全部樓層
Carbon1 發表于 2020-3-6 12:45
這是程序
#include
#define uchar unsigned char

樓主的程序沒有什么明顯毛病,出現這種現象應該是LCD初始化失敗。要仔細檢查硬件! VCC是電壓否正常、紋波是否過大、晶振頻率是否合適、振蕩電容大小是否合適、復位電路是否正常。特別是要檢查面包板接觸不良。
初始化程序稍微調整一下:
void init()
{
        lcden=0;
        delay_ms(20);
        write_com(0x38);
        write_com(0x38);
        write_com(0x38);
        delay_ms(20);
        write_com(0x01);
        delay_ms(20);        
        write_com(0x0C);
        delay_ms(20);
        write_com(0x06);
        delay_ms(20);
}
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表