#1 Re: Апаратні питання » W5100 server is at 0.0.0.0 » 2016-12-27 19:40:05

И так. Разобрался уже давно и вспомнил что забыл отписаться.
Весь косяк в том что:
1. Я не упомянул о том что в W5100 у меня воткнут еще RC522  lol
2. Т.к. RC522 использует ISP так же как W5100 я указал в коде разные SS!!!.
3. Но даже в таком случае если и программно дергать за ноги SS в зависимости от того что хотим использовать RC522 или W5100 в мониторе порта не покажет вам IP и не присвоит его.
4. ТОЛЬКО если вы явно укажите скетче IP ардуинки то сможете пингануть ардуинку по этому IP но не зайти на нее. Но в мониторе порта вы все равно будете наблюдать что то на подобии 0.0.0.0 или 0.0.0.8 и т.д.
5. Для того что бы все взлетело необходимо MISO пин RC522 и 12й пин MISO ардуинки уно подключить через резистор 220 Ом.

P/S/ При связке UNO+RC522+SDcard также необходимо MISO пин SD и 12й пин MISO ардуинки уно подключить через резистор 220 Ом. При таком подключении все работает и без всяких программных дерганей  SS пинов  wink

Да и перепайка резистора 511го на 510й ничего не дает  lol

#2 Re: Програмування Arduino » SD сравнение строк » 2016-12-06 14:43:38

И так. Заменил.

if (bufs == buf)// Если Строка bufs == переменной buf то выводим Yes!
    {
      Serial.println("Yes!");
    }

На такой костыль.

bufs.trim();
    if (bufs.compareTo(buf)== 0)
    {
      Serial.println("Ok");
      break;
    } 

Функция trim() удаляет лишние пробелы в конце переменной String.
После функцией сравнения переменных типа String compareTo() которая в случае совпадения по алфавитно содержимого этих переменных возвращает "0" проверяю свои переменные.
Возможно все это костыль, возможно можно было и проще сделать.

#4 Програмування Arduino » SD сравнение строк » 2016-12-05 18:16:22

one_player
відповідей: 4

Есть такой код

#include <SD.h>
#include <SPI.h>
File printFile;
String bufs;
String buf = "14";
boolean SDfound;
void setup() {
  Serial.begin(9600);
  if (SDfound == 0) {
    if (!SD.begin(8)) {
      Serial.print("SD not found");
      while(1);
    }
  }
}
void loop() {
  SDfound = 1;
  printFile = SD.open("id.txt");

  if (!printFile) {
    Serial.print("file cannot be opened");
    while(1);
  }
  while (printFile.available()) {
    bufs = printFile.readStringUntil('\n');
    Serial.println(bufs); //Вывод строки
    if (bufs == buf)// Если Строка bufs == переменной buf то выводим Yes!
    {
      Serial.println("Yes!");
    }
    delay(2000);      
  }
  printFile.close();
  delay(2000);
}

Файл id.txt на SD карте содержит цифры от 1 до 20 каждая цифра с новой строки.
Приведенный код работает отлично в сериал передает все эти цифры как и хотелось.
Но вот кусок

 if (bufs == buf)// Если Строка bufs == переменной buf то выводим Yes!
    {
      Serial.println("Yes!");
    }

По какой то причинен НЕ проверяет равенство этих строк.
Почему? Где ошибка? Как ее исправить? Помогите пж.

#5 Апаратні питання » W5100 server is at 0.0.0.0 » 2016-11-16 09:47:30

one_player
відповідей: 2

Добрый день/вечер.

Столкнулся с такой проблемой.

Подключил w5100 китайца к uno. Залил скетч WebServer пример из библиотеки Ethernet, назначив MAC и ip из диапазона своей сети. После заливки скетча в монитор порта выпадает server is at 0.0.0.0 по ip заданному в скетче через браузер ничего не показывает. Ноооо если пингануть w5100 по этому ip то пингипроходят и весьма успешно. Если воспользоваться прогой ipscan то она находит шилд в сетке с тем маком что прописал в скетче и с тем ip. В мониторе порта если нажимать на ресет шилда иногда все таки выдает прописанный ip но попытавшись зайти на шилд получаю "Страница недоступна".

Читал в интернетах что возможен хреновый контакт между шилдом и uno. Прозвонил все контакты мультиметром результат - Все ОК.

Потом нашел в инете что резистор который находится сразу за разъемом RJ-45 должен быть не 511й - 510 Ом, а 510й на 51 Ом. Под рукой оказался только 560йна 56 Ом. Перепаял т.к. разница думаю не существенная. Результат тот же с теми же показателями и симптомами.

Собственно вопрос.

Кто знает в чем лажа? И как это исправить?

#6 Re: Програмування Arduino » Запуск enc28j60 на nano V3 » 2016-10-10 14:53:42

NoName пише:

этот тот модуль у которого был овервольтаж?  ))))
на UNO работает?

Он самый. На уно тоже линк идет но страничку не отображает.
P/S Ну давай скажи что у меня модуль погорел  yikes  sad

#8 Програмування Arduino » Запуск enc28j60 на nano V3 » 2016-10-06 18:23:10

one_player
відповідей: 4

Добрый вечер.
Подскажите кто подключал связку enc28j60 на nano.
Подключил
enc28j60          nano
VCC                Внешний источник питания на 3.3
GND               От внешнего источника питания
CS                  D10
SI                   D11
SCK                D13
SO                  D12

Загрузил стандартный скетч из примера

#include "etherShield.h"
#include "ETHER_28J60.h"
static uint8_t mac[6] = {0x74,0x69,0x69,0x2D,0x30,0x31};
static uint8_t ip[4] = {192, 168, 0, 151};                       
static uint16_t port = 80;                                    
ETHER_28J60 ethernet;
void setup()
{ 
  ethernet.setup(mac, ip, port);
}
void loop()
{
  if (ethernet.serviceRequest())
  {
    ethernet.print("<H1>Hello World</H1>");
    ethernet.respond();
  }
  delay(100);
}

Компиляция и загрузка прошла успешно.
Подключаю кабель в enc28j60 лампочки линка загораются, желтая мигает.
Пробую зайти по ip 192.168.0.151 и страница не загружается.
Как быть, где ошибка? Кто работал с такой связкой помогите советом.

#9 Re: Апаратні питання » ENC28J60 та Andruino nano » 2016-10-06 16:01:51

Да вот только припаял гребенку к понижающему )))) Ну жалко просто так выкинуть ))

Да на понижающем с выставленным выходом на 3.3v линк поднялся сразу.

#11 Re: Апаратні питання » ENC28J60 та Andruino nano » 2016-10-06 14:47:40

Нет ничего не правил, по этому и не написал.
Методом тыка, благо есть UNO под рукой, было выяснено что на nano питание 3.3v которое необходимо для ENC28J60 было равным 3.5v. Поэтому даже при простом подключении ENC28J60 к UNO контактами 3.3 и GND и вставленном сетевом кабеле в ENC28J60 сразу было видно линк на разъеме RJ-45. При аналогичных действиях с nano горел лишь диод питания ENC28J60, а линк на разъеме RJ-45 не подает никаких признаков жизни.
Обидно что nano подвела((

#12 Re: Апаратні питання » ENC28J60 та Andruino nano » 2016-10-06 10:56:26

UP тему. Аналогичная проблема. Автор если решил отпишись пж. Сам модуль брал тут http://arduino-ua.com/

Підвал форуму