熱門: 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
|
發(fā)布時(shí)間: 2017-4-4 17:29
正文摘要:lcd1602寫數(shù)據(jù)0x41,顯示亂碼,仿真正常。可能什么問題? /***********1602液晶靜態(tài)顯示**************/ #include<reg52.h> #define uchar unsigned char #define uint unsigned int uch ... |
|
void main(void) { LCD_init(); write_data(0x41); //這里是有問題的,你要0x41放到哪個(gè)位置都沒設(shè)好,不出問題才是問題 while(1); } |
| 參與人數(shù) 3 | 黑幣 +62 | 收起 理由 |
|---|---|---|
|
| + 12 | |
|
| + 35 | |
|
| + 15 |
| 程序我看了,沒問題,既然仿真也沒有問題的話,那就是你硬件的問題了 |
|
您好,想請(qǐng)問下您,這個(gè)亂碼的問題解決了么 |
你像風(fēng)兒來了 發(fā)表于 2017-4-5 16:24 好的,謝謝啦,我再去試試 ![]() |
你像風(fēng)兒來了 發(fā)表于 2017-4-5 16:22 數(shù)據(jù)口沒初始化?能具體說明下嗎? |
|
寫數(shù)據(jù)和命令之前要判斷顯示屏是否繁忙 void busy() { uchar busy; P0=0xff;//復(fù)位系統(tǒng)總線,非常重要 RS=0; RW=1; do { E=1; busy=P0; E=0; } while(busy&0x80); E=0; } |
| 剛說錯(cuò)了,你這個(gè)有可能是數(shù)據(jù)口沒有初始化, |
|
可以提供下這個(gè)函數(shù)嗎 LCD_init(); |
liuyier1989 發(fā)表于 2017-4-4 19:25 端口號(hào)是isp自動(dòng)掃描的。根據(jù)郭天祥教程來寫的,就這么多啊。實(shí)在搞不懂了 |
我喜歡賣萌 發(fā)表于 2017-4-4 19:35 用的開發(fā)板 |
|
這就有點(diǎn)像“理論與實(shí)際的差距”,我之前也有遇到類似的情況,仿真時(shí)用寫好的LCD驅(qū)動(dòng)程序顯示正常,下載到自制的板子上就完全不顯示,我覺得可參考以下兩點(diǎn)修改意見 1、檢查接線,清理干凈板子 2、調(diào)程序,特別是延時(shí)長短 |
| 參與人數(shù) 1 | 黑幣 +30 | 收起 理由 |
|---|---|---|
|
| + 30 | 回帖助人的獎(jiǎng)勵(lì)! |
| 如果仿真沒問題的話,那可能是因?yàn)殡娐放e(cuò)了,你是用的pcb板還是自己焊的 |
| 參與人數(shù) 1 | 黑幣 +20 | 收起 理由 |
|---|---|---|
|
| + 20 | 回帖助人的獎(jiǎng)勵(lì)! |
| 你設(shè)置端口號(hào)是根據(jù)什么設(shè)置的。就這么點(diǎn)程序嗎??? |
| 參與人數(shù) 1 | 黑幣 +20 | 收起 理由 |
|---|---|---|
|
| + 20 | 回帖助人的獎(jiǎng)勵(lì)! |
Powered by 單片機(jī)教程網(wǎng)