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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6830|回復: 12
收起左側

單片機驅動lcd1602顯示亂碼

[復制鏈接]
ID:553020 發表于 2020-9-23 16:24 | 顯示全部樓層 |閱讀模式
10黑幣
仿真lcd1602秒的十位是正常的,一到做實物,lcd1602顯示的秒十位就是亂碼。
在線求解

4%MEL84IY(C_DJNGFQGO(5X.png
仿真顯示正常

IMG_20200923_161832.jpg
實物的秒的十位顯示錯誤,成了;或者超過了6的各種奇怪亂碼

最佳答案

查看完整內容

你要搞清楚時序圖 //**************************************************** //寫指令 //**************************************************** void LCD1602_write_com(unsigned char com) { LCD1602_RS = 0; //LCD1602_delay_ms(1); LCD1602_EN = 0; //
回復

使用道具 舉報

ID:155507 發表于 2020-9-23 16:24 | 顯示全部樓層

你要搞清楚時序圖
LCD1602-timingDiagram.jpg




//****************************************************
//寫指令
//****************************************************
void LCD1602_write_com(unsigned char com)
{
        LCD1602_RS = 0;
        //LCD1602_delay_ms(1);
        LCD1602_EN = 0;  //<------
        LCD1602_PORT = com;
        LCD1602_EN = 1;  //<------
        LCD1602_delay_ms(1);
        LCD1602_EN = 0;
}

//****************************************************
//寫數據
//****************************************************
void LCD1602_write_data(unsigned char dat)
{
        LCD1602_RS = 1;
        //LCD1602_delay_ms(1);
        LCD1602_EN = 0;    //<------     
        LCD1602_PORT = dat;
        LCD1602_EN = 1;
        LCD1602_delay_ms(1);
        LCD1602_EN = 0;
}


回復

使用道具 舉報

ID:553020 發表于 2020-9-23 16:26 | 顯示全部樓層
除了仿真使用的是89c52,實物使用的是89c54RD芯片以外,其余連接均和仿真一樣
回復

使用道具 舉報

ID:337139 發表于 2020-9-23 17:12 | 顯示全部樓層
本帖最后由 長風007 于 2020-9-23 17:16 編輯

查一下你的顯示位,還有顯示的時間間隔。實物是有時序要求的!

可以參考一下這個圖

可以參考一下這個圖
回復

使用道具 舉報

ID:553020 發表于 2020-9-23 22:10 | 顯示全部樓層
長風007 發表于 2020-9-23 17:12
查一下你的顯示位,還有顯示的時間間隔。實物是有時序要求的!

這是lcd1602的程序,時序有問題嗎?

#include "LCD1602.h"

//****************************************************
//MS延時函數(12M晶振下測試)
//****************************************************
void LCD1602_delay_ms(unsigned int n)
{
        unsigned int  i,j;
        for(i=0;i<n;i++)
                for(j=0;j<123;j++);
}

//****************************************************
//寫指令
//****************************************************
void LCD1602_write_com(unsigned char com)
{
        LCD1602_RS = 0;
        LCD1602_delay_ms(1);
        LCD1602_EN = 1;
        LCD1602_PORT = com;
        LCD1602_delay_ms(1);
        LCD1602_EN = 0;
}

//****************************************************
//寫數據
//****************************************************
void LCD1602_write_data(unsigned char dat)
{
        LCD1602_RS = 1;
        LCD1602_delay_ms(1);       
        LCD1602_PORT = dat;
        LCD1602_EN = 1;
        LCD1602_delay_ms(1);
        LCD1602_EN = 0;
}

//****************************************************
//連續寫字符
//****************************************************
void LCD1602_write_word(unsigned char *s)
{
        while(*s>0)
        {
                LCD1602_write_data(*s);
                s++;
        }
}

void Init_LCD1602()
{
        LCD1602_EN = 0;                                                //設置為寫狀態
        LCD1602_write_com(0x38);                        //顯示模式設定
        LCD1602_write_com(0x0c);                        //開關顯示、光標有無設置、光標閃爍設置
        LCD1602_write_com(0x06);                        //寫一個字符后指針加一
        LCD1602_write_com(0x01);                        //清屏指令
}


回復

使用道具 舉報

ID:96682 發表于 2020-9-24 05:15 來自觸屏版 | 顯示全部樓層
除了使用不同參數的芯片外,無需修改延時數值
回復

使用道具 舉報

ID:822755 發表于 2020-9-24 12:05 | 顯示全部樓層
檢查寫的字符串有沒有結束符“\x00",  
回復

使用道具 舉報

ID:315554 發表于 2020-9-24 12:40 | 顯示全部樓層
有DS1302等芯片嗎?IO線接對沒,芯片確定正常?我以前遇過時鐘芯片不正常有類似情況,99:00
回復

使用道具 舉報

ID:117977 發表于 2020-9-24 13:16 | 顯示全部樓層
理論上你是在讀DS1302的時鐘,但是沒看到你這部分代碼
回復

使用道具 舉報

ID:117977 發表于 2020-9-24 13:18 | 顯示全部樓層
兩個思路  讀取1302的時序適當加點延時,1302壞 換一片 讀取的數據可以通過發串口來測試
回復

使用道具 舉報

ID:16255 發表于 2020-9-24 23:49 | 顯示全部樓層
我估計你是用到時鐘芯片了。DS1302、1307等。
可能是讀取芯片數據沒有正確讀取出來,
檢查一下程序是否正確?適當加一點延時可能會有幫助。
數據線是否正確連接?數據線上加上拉電阻了嗎?
回復

使用道具 舉報

ID:620337 發表于 2020-9-26 09:01 | 顯示全部樓層
原因:程序語句里是否含有中文字符,或者不可見字符,第二,通信異常,延遲不足也會產生,但是我更覺得是字符問題
回復

使用道具 舉報

ID:822755 發表于 2020-9-26 10:15 | 顯示全部樓層
可能是讀出的時鐘數據沒有屏蔽掉無關的位。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

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