Перейти к содержанию
    

глючит W5100- не стабильно пингуется

Имел до этого опыт работы с W5100 и STM32, все работало как надо. Перевел проект под AVR, работает не стабильно. То пинговалось, теперь даже этого не делает. Схему перепроверил, подключил логич. анализатор на MISO MOSI SCK, что вывожу в SPI, то вижу на ЛА. Уровни фронтов осциллом нормальные. В общем, тупик полный....

Кого бы попросить посмотреть в проект, схему, и может у кого есть проект под АВР и W5100 под ИАР, прислать мне его, попробую скомпилить.

 

проект + схема.

http://files.mail.ru/1401C586534949B29DDEC889D6847676

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

проблема обнаружилась вот в чем- записал в W5100 по адресу 0x000F число 172, теперь его считываю в коде

WIZ_SPIInit(); //инициализация в AVR
    iinchip_init(); 
     Delay (20 MS);
    IINCHIP_WRITE (0x000F, 172);
    
    for (;;) {
    putHEX (IINCHIP_READ (0x000F));
        putString ("   \r\n");
        
         Delay (2000 MS);
    }

uint8_t IINCHIP_READ(uint16_t addr)
{        
uint8_t temp = 0;
off (WIZ_SCS);

temp = SPI_Exchg (0x0f);
temp = SPI_Exchg ((addr & 0xFF00) >> 8);
temp = SPI_Exchg (addr & 0x00FF);
temp = SPI_Exchg (0xff);  
              
Delay(2 MKS ); // небольшая задержка при поднятии CS на 2 мкс (32 МГц)- чтобы не сразу за CLK поднимался

on (WIZ_SCS);

return temp;  
}

параллельно включил логич. анализатор- есть у меня на Rigol он. И смотрю последний- 4-й байт, заодно в консольку закидываю значение. То, что в консолку пишет- то и я вижу на ЛА.

и пишет мне

AC

AC

AC

98

58

AC

..

и ЛА показывает, что MISO не AC принимает. Принимает хрень. Как только подключил щуп осцилла, чтобы реальность посмотреть, так и ни одного сбоя нет и и фронты ровные и всегда AC выводит. Стоит убрать- опять через раз-два пишет хрень.

А почему так?

инициализация

        PORTB = (0<<7)|(0<<6)|(0<<5)|(0<<4)|(0<<3)|(0<<2)|(1<<1)|(0<<0);            // все ноги в 0
        DDRB =(1<<7)|(1<<6)|(1<<5)|(1<<4)|(1<<3)|(1<<2)|(1<<1)|(1<<0);              // все ноги на вывод

PB4- это MISO

делал его и входом и выходом- один хрен.

 

http://s2.ipicture.ru/uploads/20130908/TAwtma4I.jpg

вот что на ЛА происходит- считал число 172.

 

а вот что дает даташит на W5100

http://clip2net.com/s/5Ik5Nh

 

и на проекте STM32 тоже биты CPOL, CPHA были 0 и 0.

тут наверное, пошел плату спиртом мыть )))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Очевидно подключение осцилла делает ногу MISO не болтающейся в воздухе, а все-таки с какой-то емкостью на землю.

Нога меги MISO сконфигурирована как вход?

 

а, вижу... Ну мож пулап такой-нить присандалить, или пуллдаун. Хотя у меня все работало четко без пуллов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

void SPI_Init(void)
{
  SPI_PORT |= (1<<SCK)|(1<<MOSI)|(1<<MISO);
//  PORT_SPI &= ~(1<<SCK);

  SPI_DDR |= (1<<SCK)|(1<<MOSI);
  SPI_DDR &= ~(1<<MISO);

  SPSR = (1<<SPI2X);
  SPCR = (1<<SPE)|(1<<MSTR);  //Mode 0
}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

промыл плату- все нормально стало- где-то залипон висел.

 

ловим дальше глюки...

 

странно ведет себя, если ставлю ф-ю

recv (0, recv_IP, RX_dataSize);

приводит к ресету процессора и выполнение заново main();

 

питание и ресет не дергаются.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

кто замечал, что при вызове ф-ии

sendto ();

 

в ней при выполнении

IINCHIP_WRITE(Sn_CR(s),Sn_CR_SEND);

происходит прерывание?

 

в даташите не нашел, что должно быть так.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...