Arduino Mega Server

Модератор: Alex

Аватара пользователя
ser009
Сообщения: 595
Зарегистрирован: Сб окт 13, 2012 9:55 am
Благодарил (а): 4 раза
Поблагодарили: 43 раза

Re: Arduino Mega Server

Сообщение ser009 » Вс дек 09, 2018 8:26 pm

Alex писал(а):
Вс дек 09, 2018 8:12 pm
Ser009, спасибо за ответ.
Смотрю я чем вы тут занимаетесь... Это примерно как начать изучение математики не с примера 2+2=4, а сразу с логарифмической линейки (и совместно соображать с какой стороны к ней подходить).

Просто возьмите Ethernet Shield и все ваши проблемы исчезнут.
У меня то линейка работает :) так что не мне не нужно не в чем разбираться.
А показать другим, что делать когда что-то не работает думаю не будет лишним
Alex
Сообщения: 2357
Зарегистрирован: Пт апр 20, 2012 12:53 pm
Благодарил (а): 42 раза
Поблагодарили: 262 раза

Re: Arduino Mega Server

Сообщение Alex » Вс дек 09, 2018 8:31 pm

У меня то линейка работает :) так что не мне не нужно не в чем разбираться.
А я ответ написал не вам, а новоиспечённому адепту учения АМС. :)
Лев
Сообщения: 12
Зарегистрирован: Сб дек 08, 2018 7:04 pm
Благодарил (а): 3 раза
Поблагодарили: 0

Re: Arduino Mega Server

Сообщение Лев » Вс дек 09, 2018 9:07 pm

Ser009, в файле w5500.h нашел код для ATmega2560
#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1284P__)
inline static void initSS() { DDRB |= _BV(4); };
inline static void setSS() { PORTB &= ~_BV(4); };
inline static void resetSS() { PORTB |= _BV(4); };
Долго сопоставлял по pinout для ATmega2560 BV(4) - не смог найти)
даже простое решение, что это 4-й pin неверно: на нем сидит SD

Не понимаю: в описании проекта GPIO D10 - Ethernet Shield (SS for Ethernet)
GPIO D4 - Ethernet Shield (SS for SD card) - 4-й пин и SD работает.

Hardware
--------
Arduino Mega 2560
Ethernet Shield
microSD card
отличается только Ethernet Shield - осталось его распиновку сопоставить.
Аватара пользователя
ser009
Сообщения: 595
Зарегистрирован: Сб окт 13, 2012 9:55 am
Благодарил (а): 4 раза
Поблагодарили: 43 раза

Re: Arduino Mega Server

Сообщение ser009 » Вс дек 09, 2018 9:13 pm

Библиотека Ethernet -> используется при подключении w5100
Библиотека Ethernet2 -> используется при подключении w5500

Вы какой шилд используете?
Лев
Сообщения: 12
Зарегистрирован: Сб дек 08, 2018 7:04 pm
Благодарил (а): 3 раза
Поблагодарили: 0

Re: Arduino Mega Server

Сообщение Лев » Вс дек 09, 2018 9:15 pm

w5500 использую
Вот компоненты, используемые в проекте и соединения
alexsis_76
Сообщения: 791
Зарегистрирован: Пт янв 22, 2016 10:08 am
Благодарил (а): 6 раз
Поблагодарили: 63 раза

Re: Arduino Mega Server

Сообщение alexsis_76 » Пн дек 10, 2018 11:46 am

Долго сопоставлял по pinout для ATmega2560 BV(4) - не смог найти
ну вы ребята даете стране угля, хоть мелкого но много
#define _BV(bit) (1 << (bit)) это макрос устанавливающий соответствующий бит в 1
~ инверсия
& и
| или
#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1284P__)
inline static void initSS() { DDRB |= _BV(4); };
inline static void setSS() { PORTB &= ~_BV(4); };
inline static void resetSS() { PORTB |= _BV(4); };
а вот это не трогайте, это не для ардуинщиков, это компилятор делает сам
Лев
Сообщения: 12
Зарегистрирован: Сб дек 08, 2018 7:04 pm
Благодарил (а): 3 раза
Поблагодарили: 0

Re: Arduino Mega Server

Сообщение Лев » Пн дек 10, 2018 5:06 pm

В итоге:
1. Проблема либо аппаратная - я неправильно подключаю сетевую карту (распиновка)
2. Проблема программная: Ser009 давал наводку на библиотеки Ethernet. как вариант, в коде необходимо использовать только библиотеку Ethernet2, так как я использую w5500

Новоиспечённый адепт учения АМС просит помощи у великих Гуру)

Вариант с приобретением другого Ethernet Shield нерационален - у меня есть два комплекта Mega и w5500 - они прекрасно работают с примерами из Arduino IDE
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв
Благодарил (а): 303 раза
Поблагодарили: 282 раза

Re: Arduino Mega Server

Сообщение serghei » Пн дек 10, 2018 5:19 pm

С примерами идеально работает либо карта, либо етернет. Последний менять не хотите. Значит надо подгонять карт ридер. Я перепробовал 4 вида.
И уж если w5500 , то только етернет2.
SPI выводы запаивать вместе и садить на аппаратный раз,ем в середине платы. У карты можно назначить практически любой пин как CS. У етернета не пробовал.
И удаленно можно помочь с кодом. Подключать железо не получается)).
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
Лев
Сообщения: 12
Зарегистрирован: Сб дек 08, 2018 7:04 pm
Благодарил (а): 3 раза
Поблагодарили: 0

Re: Arduino Mega Server

Сообщение Лев » Пн дек 10, 2018 5:51 pm

Сергей, спасибо!

1.
SPI выводы посередине запаяны вместе и идут на w5500 и SD
SS SD карты на D04 pin Меги
SS w5500 на D10 pin Меги
Этот пункт мной выполнен верно?

2.Я правильно понимаю, что к Меге можно подключить как w5100 (библиотека Ethernet), так и w5500 (библиотека Ethernet2), при этом никаких изменений в коде не нужно делать?
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв
Благодарил (а): 303 раза
Поблагодарили: 282 раза

Re: Arduino Mega Server

Сообщение serghei » Пн дек 10, 2018 5:56 pm

1. Правильно. Надо баловаться с ридерами.
2. Правильно. В библиотеках ничего менять не надо.
Дополню. У етернет шилда я еще ресет подключал.
В коде выбираем только библиотеку.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
Ответить