Подключение LCD и ethernet shield к Ардуино одновременно

demon969
Offline
Зарегистрирован: 24.04.2012

Подскажите пожалуйста, возможно ли одновременное подключение LCD экрана и ethernet shield к Ардуино  Duemilanove? Если для этого необходимо использовать сдвиговый регистр 74HC595, то хотелось бы увидеть конкретную схему подключения. Экран подключен у меня по LiquidCrystal lcd(12, 11, 5, 4, 3, 2);.

P.S. Достойного и понятного примера на форуме и в нете не нашел.

 

maksim
Offline
Зарегистрирован: 12.02.2012

А почему вы просто не подключите дисплей к другим выводам, которые не заняты из.шилдом? например: LiquidCrystal lcd(7, 6, 5, 4, 3, 2);

demon969
Offline
Зарегистрирован: 24.04.2012

я пробовал, но к сожалению мой китайский дисплей отказался работать по другим схемам подключения, хотя в даташите к дисплею как бы написано, что  дисплей выполнен на чипе, совместимом с HD44780.

maksim
Offline
Зарегистрирован: 12.02.2012

Это не дисплей отказываеся работать, это скорее всего вы его не правильно подключаете.

maksim
Offline
Зарегистрирован: 12.02.2012

Не знаю как вы искали... но вот один из вариантов подключения дисплея вместе с шилдом:

Вот источник.

demon969
Offline
Зарегистрирован: 24.04.2012

maksim пишет:

Это не дисплей отказываеся работать, это скорее всего вы его не правильно подключаете.

Ну если я смог подключить lcd по схеме (12, 11, 5, 4, 3, 2) и он работает, то ошибиться при подключении по другим схемам довольно сложно.

Есть еще какие - нибудь впарианты совместить изернет шилд и лсд?

demon969
Offline
Зарегистрирован: 24.04.2012

http://sree.cc/electronics/connecting-an-lcd-and-ethernet-shield-with-an...

Повторюсь. этот вариант не работает  у меня. Экран упорно работает только при подключении (12, 11, 5, 4, 3, 2). Может попробовать другой экранчик?)))

maksim
Offline
Зарегистрирован: 12.02.2012

Может попробовать другую библиотеку.

denis_naum
Offline
Зарегистрирован: 24.07.2012

 demon969, подправьте библиотеку под те пины которые будете использовать и будет вам счастье.

N_kolay
Offline
Зарегистрирован: 15.09.2012

У меня точно такая же проблема , после инициализации сети напрочь отказывается выводить какие либо данные на дисплей !

Вот код программы ( у меня 2560 и лсд сидит на последних пинах )

#include <SPI.h>
#include <Ethernet.h>
#include <LiquidCrystal.h>
LiquidCrystal lcd(52, 51, 50, 45, 44, 43, 42);

byte mac[] = {
0x00, 0xAA, 0xBB, 0xCC, 0xDE, 0x02 };

EthernetClient client;

void setup() {
  lcd.print("My IP address "); // это показывает
delay(2000);
 

Serial.begin(9600);

lcd.clear(); // это работает

lcd.print("My 7777777 "); // работает
   
   

// start the Ethernet connection:
if (Ethernet.begin(mac) == 0) {
  lcd.setCursor(0,0); //                                                      Отсюда уже ничего нет и дальше тоже 
Serial.println("Failed to configure Ethernet using DHCP");
lcd.println("Failed to configure Ethernet using DHCP");
// no point in carrying on, so do nothing forevermore:
lcd.clear();

for(;;)
;
}

// print your local IP address:
// lcd.setCursor(4,0);
lcd.clear();
lcd.print("My IP address: ");
Serial.print("My IP address: ");
for (byte thisByte = 0; thisByte < 4; thisByte++) {
// print the value of each byte of the IP address:
lcd.setCursor(0,1);

lcd.print(Ethernet.localIP()[thisByte], DEC);
lcd.print(".");
Serial.print(Ethernet.localIP()[thisByte], DEC);
Serial.print(".");

}
Serial.println();
}

void loop() {

}

 

N_kolay
Offline
Зарегистрирован: 15.09.2012

Хочу добавить ко всему , изернет шилд работает только по пину 10 !!! я оставлял подключенный только его и питание , шилд с сетью работает а вот дисплей нет !!!!!!!

maksim
Offline
Зарегистрирован: 12.02.2012

   У Меги выводы SPI: 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS) - эти выводы уже заняты изернетом, а у вас к ним же подключен дисплей. Так что подключите на другие выводы дисплей и будет вам счастье...

N_kolay
Offline
Зарегистрирован: 15.09.2012

Надеюсь что вы правы , только дисплей там так удобно расположился что аж незнаю кск бы его подвинуть )))))) Но попробую ! А почему тогда шилд работает только с 10 выводом ??? 

maksim
Offline
Зарегистрирован: 12.02.2012

 Вообще странно, что у вас шилд работает с Мегой без доработок... скорее всего он не работает... вам нужно соеденить проводком 10 вовод шилда с 53 выводом Меги, так как библиотека Ethernet использует полностью аппаратный SPI. 
MISO, MOSI, SCK шилд берет из разъема ICSP, а SS с 10 вывода, но аппаратный SS у Меги находится не на 10 выводе, а на 53.

N_kolay
Offline
Зарегистрирован: 15.09.2012

Mega2560  а шилд w5100  и работает нормально !!!! 

maksim
Offline
Зарегистрирован: 12.02.2012

 Пробовали отправлять данные на сервер или поднять сервер?

N_kolay
Offline
Зарегистрирован: 15.09.2012

запрашивает адрес с dhcp сервера , видно по логам и кидает в терминал что тоже видно !! сейчас сервер попробую !

 

N_kolay
Offline
Зарегистрирован: 15.09.2012

Попробовал все идеально работает , взял пример из библиотеки WebServer  а на шилде оставил только ноги питания и 10 вывод , остальные отогнул !!!

 

maksim
Offline
Зарегистрирован: 12.02.2012

 Да, действительно, сейчас сам проверил, видать в последних версиях библиотек это учли...

maksim
Offline
Зарегистрирован: 12.02.2012

 Ну уж отгибать то не надо было... речь шла о 10 и 53 выводе. Вам нужно освободить 52, 51, и 50 выводы - они заняты шилдом.

N_kolay
Offline
Зарегистрирован: 15.09.2012

пробую ,  с 48 пина на уменьшение пойдет ?????

N_kolay
Offline
Зарегистрирован: 15.09.2012

дак шилд до нихне достает , иль програмная какая то привязка ??? 

maksim
Offline
Зарегистрирован: 12.02.2012

 да, и соответственно их проинициализируйте LiquidCrystal lcd(?, ?, ?, ?, ?, ?, ?);

maksim
Offline
Зарегистрирован: 12.02.2012

N_kolay пишет:

дак шилд до нихне достает , иль програмная какая то привязка ??? 

Не понял...

maksim
Offline
Зарегистрирован: 12.02.2012

 Вы про 52, 51, и 50 выводы? что изернет шилд до них не достает?

N_kolay
Offline
Зарегистрирован: 15.09.2012

да я про выводи и шилд !! сейчас пробую LiquidCrystal lcd(48, 47, 46, 41, 40, 39, 38); 

N_kolay
Offline
Зарегистрирован: 15.09.2012

Все пошло при условии LiquidCrystal lcd(48, 47, 46, 41, 40, 39, 38); !!!!!!!!!! Большое спасибо !! Я бы долго нервничал еще и не понимал что за такое !!

maksim
Offline
Зарегистрирован: 12.02.2012

 Они запараллены с разъемом ICSP 

N_kolay
Offline
Зарегистрирован: 15.09.2012

Но лишь проблема , какой то из этих выводов занят прогроматором и скетч только при отключеном дисплее заливается )))) но эт мелочь ))) 

maksim
Offline
Зарегистрирован: 12.02.2012

 Диплей вроде как не должен мешать, для заливки скейтча не должны быть заняты выводы RXD->1 и TXD<-0.

N_kolay
Offline
Зарегистрирован: 15.09.2012