滥情 发表于 2020-5-1 11:26 只有一行黑色不是对比度的问题,应该和初始化有关系 |
杨雪飞 发表于 2020-5-1 15:29 好的,谢谢 |
dislsqq 发表于 2020-5-1 14:49 烧例程可以的话你就把这个程序对照例程的初始化、写命令、写数据函数,看看哪里时序不对吧。开发板这玩意难伺候,所以我就觉得初学者用开发板学是个坑。比如我们驱动1602,我用P0口不解上拉电阻都可以直接驱动1602正常显示。但是在开发板上就不行。我有块普中开发板,用的1602就跟一般的不一样,之前因为这个绕了不少弯路。 对于1602的显示按以下几块分解了学就好了。 void main() 主函数 { lcd init(); 先初始化液晶 while() 循环 { delay(); wrt_com(); 写命令函数,定义位置 delay(); wrt_dat() ; 写数据函数,显示内容。 } } lcd_init() 初始化子程序 { 内容 } wrt_com() 写命令子程序 { 内容 } wrt_dat() 写数据子程序 { 内容 } delay() 延时子程序 { 内容 } |
杨雪飞 发表于 2020-5-1 10:58 #define LCD1602_DATA P0 sbit LCD1602_EN = P2^7; sbit LCD1602_RS = P2^6; #ifdef P25_DRIV_RW sbit LCD1602_RW = P2^5; #endif |
xxpp2011 发表于 2020-5-1 09:51 这些都没问题,烧例程可以显示 |
调节电位器,对比度要调好 |
RS RW EN三根线有没有对应程序,D0 - D7线序有没有接反。 |
先考虑线有没有接错,对比度调好没有 |