2016-06-10 80 views
0

我正在开发一个项目,我正在使用arduino Uno。我想使用4个屏蔽(OLIMEX Shield lcd 16x2)打印数据(每个液晶显示屏都有数据)。所以,我认为我必须给每个液晶显示器一个地址(或一个ID)。我在网上搜索找到一些东西,但我没有找到答案。更改液晶屏蔽的地址

你有什么建议吗?

预先感谢您。

回答

0

我已经问过这个问题,现在我已经得到了答案。

那么,使用屏蔽类型“OLIMEX Shield lcd 16x2”与使用名为“LCD16x2.h”的库有关,这需要使用I2C协议,并且该库不会让您更改lcd的属性。在这个库,你必须初始化你的LCD是这样的:

LCD16x2 lcd; 

的解决方案是使用普通液晶16×2,允许您使用引脚配置。您4 LCD的代码是这样的:

#include <LiquidCrystal.h> 

// You only have to change your second number, make 11 or 10 or 9... 


LiquidCrystal lcd1(12, 11, 5, 4, 3, 2); 
LiquidCrystal lcd2(12, 10, 5, 4, 3, 2); 
LiquidCrystal lcd3(12, 9, 5, 4, 3, 2); 
LiquidCrystal lcd4(12, 8, 5, 4, 3, 2); 

void setup() 
{ 
// Your code 
    lcd1.begin(16, 2); 
    lcd2.begin(16, 2); 
    lcd3.begin(16, 2); 
    lcd4.begin(16, 2); 

    lcd1.print("text1"); 
    lcd2.print("text2"); 
    lcd3.print("text3"); 
    lcd4.print("text4"); 

} 

void loop() 
{ 

    lcd1.setCursor(0, 1); 
    lcd2.setCursor(0, 1); 
    lcd3.setCursor(0, 1); 
    lcd4.setCursor(0, 1); 

    lcd1.print("anythingYouWant"); 
    lcd2.print("anythingYouWant"); 
    lcd3.print("anythingYouWant"); 
    lcd4.print("anythingYouWant"); 
} 

谢谢大家!