реклама на сайте
подробности

 
 
> SPI мега8- подглючивает
Метценгерштейн
сообщение Sep 6 2013, 16:39
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 357
Регистрация: 12-04-05
Из: Петербург
Пользователь №: 4 079



Снова я иду дальше, и наступаю на очередные грабли wink.gif Поэтому, обращаюсь к вам за помощью)

подключаю по SPI мегу 8 к Wiznet 5100.

вот две ф-ии, инициализацию сразу вызываю, а сам байт передаю во второй ф-ии
Код
void WIZ_SPIInit() {      
  SPCR = (0<<SPIE) | (1<<SPE) | (0<<DORD) | (1<<MSTR) | (0<< CPOL) | (0<<CPHA) | (0<<SPR1) | (0<<SPR0);
  SPSR = (0<<SPI2X); // проинициализировал SPI в меге
}

uint8_t SPI_Exchg(uint8_t out) { // эту ф-ю вызываю для передачи и приема данных в SPI
      SPDR = out;
      while(!(SPSR &(1 << SPIF))); // ждем пока флаг окончания передачи встанет
      
    return SPDR;
}

сама w5100 ведет себя не стабильно- то откликается, то нет. В общем, подглючивает.
подключил уже логич. анализатор на 3 ноги (MISO MOSI SCK), пытаюсь хотя бы просто послать байт в SPI, и смотрю его ЛА
Код
for (;;) {
     uint8_t g = 37;
     SPI_Exchg (g);
     Delay (1000000);
   } // тест SPI


ЛА даже не дергается ??? Разве не должно на выходе MOSI, да и SCK быть дерготни? Когда прошиваю проц, то вижу импульсы, а потом через паузу шлю число в SPI - и глухо ???

На какие гарбли я на этот раз встал?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 6)
_Артём_
сообщение Sep 6 2013, 16:51
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(Метценгерштейн @ Sep 6 2013, 19:39) *
На какие гарбли я на этот раз встал?

Трудно сказать (вы бы проект выкладывали, а то гадай что у вас забыто).




Порты SS, MOSI и SCK настроены как выходы?


Go to the top of the page
 
+Quote Post
Метценгерштейн
сообщение Sep 6 2013, 17:20
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 357
Регистрация: 12-04-05
Из: Петербург
Пользователь №: 4 079



http://files.mail.ru/3908264C4C254F048F8D47C221CB6F83
вот проект под IAR, если не затруднит, гляньте пож-ста.

ноги были как выходы настроены, но уже изменил на вход MISO- тоже не помогло.

А вообще, должно же просто в воздух выводиться значение по SPI?
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Sep 6 2013, 17:23
Сообщение #4


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Однозначно должно выводиться.
Go to the top of the page
 
+Quote Post
smalcom
сообщение Sep 6 2013, 17:32
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 292
Регистрация: 26-06-07
Пользователь №: 28 718



нога /SS должна быть настроена на выход. это так?
Go to the top of the page
 
+Quote Post
Метценгерштейн
сообщение Sep 6 2013, 17:39
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 357
Регистрация: 12-04-05
Из: Петербург
Пользователь №: 4 079



Код
#define WIZ_SCS                    PORTC, 3, H

Код
        PORTC = (0<<7)|(0<<6)|(0<<5)|(0<<4)|(0<<3)|(0<<2)|(0<<1)|(0<<0);            
        DDRC =(1<<7)|(1<<6)|(1<<5)|(1<<4)|(1<<3)|(1<<2)|(1<<1)|(1<<0);


т.е. да

добавил вывод в консольку
Код
   for (;;) {
     putString ("for   \r\n");
     uint8_t g = 37;
     SPI_Exchg (g);
     Delay (100000);
   } // тест SPI -удалить потом

так вот- вывело один раз for и все... т.е. где-то потерялось в ф-ии SPI.

пошел банально тестером контакты прозванивать...
прозвонил- все верно. я стою осциллом на 3-х ногах SPI

тупанул- забыл инициализацию вызвать WIZ_SPIInit ();
теперь шлет байт на выход.

только w5100 по-прежнему глючит ((
Go to the top of the page
 
+Quote Post
Sergey-Ufa
сообщение Oct 27 2013, 11:41
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 27-10-13
Из: Уфа
Пользователь №: 78 917



Если вы не используете свой SPI в режиме SLAVE, то SS должен быть сконфигурирован, как выход. Если SS вход, то в режиме MASTER необходимо обеспечить ему постоянно лог.1 Если SS-вход, подтяжка на плюс не установлена, то имеем на SS плавающий потенциал со всеми вытекающими. Отсюда глюки.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 21:53
Рейтинг@Mail.ru


Страница сгенерированна за 0.01405 секунд с 7
ELECTRONIX ©2004-2016