2016-06-10 78 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"); 
} 

謝謝大家!