极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 96816|回复: 22

i2C 1602 [ LCD1602转接板 Arduino IIC ]没显示一例

[复制链接]
发表于 2014-9-8 20:28:07 | 显示全部楼层 |阅读模式
一般情况下,默认用库就可以了
但也有不显示的情况,例如只有一行显示黑框~~

果断就是i2C地址错了,不是默认的0x27

于是乎,找到正确的地址就是关键了

来自百度大神的提供:
http://tieba.baidu.com/p/2465553311

  1. #include <Wire.h>


  2. void setup()
  3. {
  4. Wire.begin();

  5. Serial.begin(9600);
  6. Serial.println("\nI2C Scanner");
  7. }


  8. void loop()
  9. {
  10. byte error, address;
  11. int nDevices;

  12. Serial.println("Scanning...");

  13. nDevices = 0;
  14. for(address = 1; address < 127; address++ )
  15. {
  16. // The i2c_scanner uses the return value of
  17. // the Write.endTransmisstion to see if
  18. // a device did acknowledge to the address.
  19. Wire.beginTransmission(address);
  20. error = Wire.endTransmission();

  21. if (error == 0)
  22. {
  23. Serial.print("I2C device found at address 0x");
  24. if (address<16)
  25. Serial.print("0");
  26. Serial.print(address,HEX);
  27. Serial.println(" !");

  28. nDevices++;
  29. }
  30. else if (error==4)
  31. {
  32. Serial.print("Unknow error at address 0x");
  33. if (address<16)
  34. Serial.print("0");
  35. Serial.println(address,HEX);
  36. }
  37. }
  38. if (nDevices == 0)
  39. Serial.println("No I2C devices found\n");
  40. else
  41. Serial.println("done\n");

  42. delay(5000); // wait 5 seconds for next scan
  43. }
复制代码


地址扫描出来后,修改正确的地址即可,比如我买的1602转i2c

4个,有3个是0x27,余下一个是 0x3F(标准程序必然运行不起来),尼玛,坑爹啊


PS:转接板是个好东西,4元不到,加上普通的1602,就成了i2C的了~~~

PS2:这个转接板看测试程序,目测还带字库,艾玛,这是赚了的节奏?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2016-7-9 21:09:02 | 显示全部楼层
问个问题呀,问什么我的1602 I2C 只是蓝屏连黑框都没有啊
回复 支持 1 反对 0

使用道具 举报

发表于 2014-9-9 01:30:47 来自手机 | 显示全部楼层
看pdf,貌似不带字库。
回复 支持 反对

使用道具 举报

发表于 2014-9-9 06:06:23 来自手机 | 显示全部楼层
不带字库的,就是节约端口
回复 支持 反对

使用道具 举报

发表于 2014-9-9 16:14:00 | 显示全部楼层
感谢,我从淘宝上买的3个都用起来了
回复 支持 反对

使用道具 举报

发表于 2014-9-22 12:44:46 | 显示全部楼层
谢谢!这份资料很宝贵!让我中I2C中明白了过来,显示方式有2种模式!
回复 支持 反对

使用道具 举报

发表于 2015-1-15 15:24:33 | 显示全部楼层
我以前程序就按0x27来的,不行。用你给的程序得出来是0x20,改了后还是第一行黑框啊,您知道问题还会出在哪里么?
回复 支持 反对

使用道具 举报

发表于 2015-1-26 21:39:08 | 显示全部楼层
毒师老白 发表于 2015-1-15 15:24
我以前程序就按0x27来的,不行。用你给的程序得出来是0x20,改了后还是第一行黑框啊,您知道问题还会出在哪里 ...

你好 你的问题解决了么 我的一直是一个亮条
回复 支持 反对

使用道具 举报

发表于 2015-4-8 15:17:19 | 显示全部楼层
小杰 发表于 2015-1-26 21:39
你好 你的问题解决了么 我的一直是一个亮条

解决了,是库的问题
回复 支持 反对

使用道具 举报

发表于 2015-5-14 18:53:24 | 显示全部楼层
这个简单。代码:
  1. //YWROBOT
  2. //Compatible with the Arduino IDE 1.0
  3. //Library version:1.1
  4. #include <Wire.h>
  5. #include <LiquidCrystal_I2C.h>

  6. LiquidCrystal_I2C lcd(0x27,16,2);  // set the LCD address to 0x27 for a 16 chars and 2 line display

  7. void setup()
  8. {
  9.   lcd.init();                      // initialize the lcd

  10.   // Print a message to the LCD.
  11.   lcd.backlight();
  12.   lcd.print("Hello, world!");
  13. }

  14. void loop()
  15. {
  16. }
复制代码
回复 支持 反对

使用道具 举报

发表于 2016-4-22 19:16:57 | 显示全部楼层
我买了2个,地址都是0X3F的,到目前为止,都4天了,网上能见到的办法都用过了,依然是一行黑方块,请问楼主,你0X3F的能用吗?另外,说的库的问题,是值得什么问题呢?
回复 支持 反对

使用道具 举报

发表于 2016-7-22 11:34:35 | 显示全部楼层
bzbyr 发表于 2016-7-9 21:09
问个问题呀,问什么我的1602 I2C 只是蓝屏连黑框都没有啊

没黑框说明了对比度不对,可以调背面的可调电阻
回复 支持 反对

使用道具 举报

发表于 2016-7-24 11:41:25 | 显示全部楼层
例程只有第一行输出,
如何让1602第二行输出呢?
谢谢
回复 支持 反对

使用道具 举报

发表于 2016-7-24 11:49:22 | 显示全部楼层
找到了 不好意思 谢谢大家
回复 支持 反对

使用道具 举报

发表于 2016-8-7 10:32:58 | 显示全部楼层
大侠们好,请问如何清零?
谢谢了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-16 18:34 , Processed in 0.050634 second(s), 32 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表