![]() |
發(fā)布時間: 2019-4-3 20:27
正文摘要:我在lcd上電后出現(xiàn)第一行白色的方塊。V0和VSS接口接了一個2.2K的電阻,線沒接錯。下面是程序。求助,急! |
樓主接的是10k的么 |
已解決,謝謝大家。我的問題是在V0上面的2.2K電阻不夠使V0腳達(dá)到1.3V.要用足夠大的電位器來調(diào)節(jié)。 |
這個我知道 你可能是把lcd的背光亮度調(diào)大了 就是第三個管腳Vo哪個 |
zhubindada 發(fā)表于 2019-4-6 08:52 仔細(xì)查對硬件! ![]() |
就是仿真上可以 ,實物不行,是何解? |
zhubindada 發(fā)表于 2019-4-4 19:09 ![]()
|
wangshengs 發(fā)表于 2019-4-4 13:39 程序發(fā)了,親大神幫忙 |
本帖最后由 zhubindada 于 2019-4-4 19:11 編輯 程序來了 。請大家?guī)拖旅Α?/td> |
#ifndef __LCD1602_H__ #define __LCD1602_H__ //#include "delay.h" #include<reg52.h> sbit LCD1602_RS = P3^6; sbit LCD1602_RW = P3^5; sbit LCD1602_E = P3^4; #define Busy 0x80 #define LCD1602_Data P0 void delay_50us_1602(unsigned int t) { unsigned char i,j; for(i=0;i<t;i++) for(j=110;j>0;j--); } void LCD1602_write_com(unsigned char com) { delay_50us_1602(5); // LCD1602_E = 0; LCD1602_RS = 0; LCD1602_RW = 0; LCD1602_E = 0; LCD1602_Data= com; delay_50us_1602(10); LCD1602_E = 1; delay_50us_1602(10); LCD1602_E = 0; } void LCD1602_write_data(unsigned char dat) { delay_50us_1602(10); // LCD1602_E = 0; LCD1602_RS = 1; LCD1602_RW = 0; LCD1602_E = 0; LCD1602_Data = dat; delay_50us_1602(10); LCD1602_E = 1; delay_50us_1602(10); LCD1602_E = 0; } void LCD1602_init(void) { delay_50us_1602(15); LCD1602_write_com(0X38); delay_50us_1602(5); // LCD1602_write_com(0X0C); // LCD1602_write_com(0X06); // LCD1602_write_com(0X01); LCD1602_write_com(0X08); delay_50us_1602(5); LCD1602_write_com(0X01); delay_50us_1602(5); LCD1602_write_com(0X06); delay_50us_1602(5); LCD1602_write_com(0X0C); delay_50us_1602(5); // LCD1602_write_com(0x0e); // LCD1602_write_com(0x06); // LCD1602_write_com(0x01); } void LCD1602_Disp_ZF(unsigned char addr,unsigned char * pt,unsigned char num) { unsigned char i; LCD1602_write_com(addr); for(i = 0;i < (num*1);i++) LCD1602_write_data(*(pt++)); } #endif void main(void) { Delay_ms(400); LCD1602_init(); Delay_ms(10); LCD1602_Disp_ZF(0x80," CM CM",16); LCD1602_Disp_ZF(0x80+0X40,"sdz: CM",16); TMOD=0x01; TH0=0; TL0=0; TH1=0xf8; TL1=0x30; ET0=1; ET1=1; TR1=1; EA=1; // EA=0; sdz = ISP_READ(0x2c00)*256+ISP_READ(0x2c01); EA=1; |
沒有初始化程序或者初始化程序錯誤,把你的程序發(fā)上來 ,不然就像樓上說的神仙也幫不了你 |
代碼沒有問題的話,LCD應(yīng)該是壞了,要不然就是接觸不良,當(dāng)時我的也是這種情況 |
應(yīng)該是程序有問題,把程序發(fā)出來 |
“下面是程序”? |
沒有上代碼,神仙也幫不了你。 |
沒有人嗎 |
VSS VDD V0接一個10K電位器,仔細(xì)調(diào)整下試試 |
Powered by 單片機教程網(wǎng)