Например TDA7294

Форум РадиоКот • Просмотр темы - Связь по SPI, нужна помощь.
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Пт дек 26, 2025 07:18:39

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 19 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пн фев 25, 2013 20:49:59 
Это не хвост, это антенна
Аватар пользователя

Карма: 6
Рейтинг сообщений: 68
Зарегистрирован: Вс апр 19, 2009 17:20:22
Сообщений: 1303
Откуда: г.Ростов-на-Дону/г.Таганрог/г.Геленджик
Рейтинг сообщения: 0
Попала в руки интересная микросхема PCA2129T. Это часы реального времени с I2C и SPI. Так вот I2C завелся с пол пинка, а через SPI она упорно отказывается работать (скорее всего по тому, что в работе с I2C опыта больше). Временная диаграмма работы SPI выглядит вот так:

Изображение

Передавать пытался вот так:
Код:
unsigned char SPI_ReadData(unsigned char data){

   unsigned char  res = 0;

        SPI_PORT &= ~(1<<SPI_SS);

   SPDR = data;

   while(!(SPSR & (1<<SPIF)));

   res = SPDR;

   SPI_PORT |= (1<<SPI_SS);

     return res;
}

void pca2129_get_time(unsigned char *hour,unsigned char *min,unsigned char *sec){
   *sec = bcd(SPI_ReadData(0xA3)); // секунды по адресу 0x03
}


В ответ все время идет 85. В чем моя ошибка?

P.S.
Даташит прилагаю
Вложение:
PCA2129T.pdf [986.42 KiB]
Скачиваний: 537

_________________
Опыт растет прямо пропорционально выведенному из строя оборудованию...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пн фев 25, 2013 21:09:25 
Держит паяльник хвостом
Аватар пользователя

Карма: 15
Рейтинг сообщений: 70
Зарегистрирован: Ср мар 28, 2012 21:45:24
Сообщений: 906
Откуда: ВО
Рейтинг сообщения: 0
В каком состоянии IFS , как подключены SDI и SDO к ногам проца? Каой режим SPI выбран , их 4 обычно у проца?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пн фев 25, 2013 21:14:46 
Это не хвост, это антенна
Аватар пользователя

Карма: 6
Рейтинг сообщений: 68
Зарегистрирован: Вс апр 19, 2009 17:20:22
Сообщений: 1303
Откуда: г.Ростов-на-Дону/г.Таганрог/г.Геленджик
Рейтинг сообщения: 0
Режим нулевой. IFS соединен с массой. SDI и SDO подключены к MISO и MOSI МК. Самое интересное то, что в микросхему передача идет, а вот прием не работает. Только что записал настройки вывода CLKOUT и он включился.

_________________
Опыт растет прямо пропорционально выведенному из строя оборудованию...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пн фев 25, 2013 22:54:30 
Прорезались зубы
Аватар пользователя

Карма: 6
Рейтинг сообщений: 41
Зарегистрирован: Чт янв 13, 2011 18:54:29
Сообщений: 246
Откуда: Минск
Рейтинг сообщения: 0
Чего то я в вашем коде не понял, зачем вы при чтении еще единицы шлете?

_________________
Учиться, учиться, ...


Последний раз редактировалось ds1307 Пн фев 25, 2013 22:58:18, всего редактировалось 1 раз.

Вернуться наверх
 
Эиком - электронные компоненты и радиодетали
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пн фев 25, 2013 22:56:21 
Держит паяльник хвостом
Аватар пользователя

Карма: 15
Рейтинг сообщений: 70
Зарегистрирован: Ср мар 28, 2012 21:45:24
Сообщений: 906
Откуда: ВО
Рейтинг сообщения: 0
Судя по картинке 27 SDI - MOSI SDO-MISO.
О чём свидетельствует и шина SDI и SDO на твоём рисунке
При этом по фронту надо передать команду The first
byte transmitted is the command byte. Table 50.
B вот это it is important that pin SDI is never left floating


Последний раз редактировалось ILYAUL Пн фев 25, 2013 22:57:42, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пн фев 25, 2013 22:56:53 
Это не хвост, это антенна
Аватар пользователя

Карма: 6
Рейтинг сообщений: 68
Зарегистрирован: Вс апр 19, 2009 17:20:22
Сообщений: 1303
Откуда: г.Ростов-на-Дону/г.Таганрог/г.Геленджик
Рейтинг сообщения: 0
В смысле? Посылал как в даташите указано...

_________________
Опыт растет прямо пропорционально выведенному из строя оборудованию...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пн фев 25, 2013 22:59:00 
Держит паяльник хвостом
Аватар пользователя

Карма: 15
Рейтинг сообщений: 70
Зарегистрирован: Ср мар 28, 2012 21:45:24
Сообщений: 906
Откуда: ВО
Рейтинг сообщения: 0
it is important that pin SDI is never left floating!!! Судя по картинке - 0000000000000.....


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пн фев 25, 2013 22:59:40 
Это не хвост, это антенна
Аватар пользователя

Карма: 6
Рейтинг сообщений: 68
Зарегистрирован: Вс апр 19, 2009 17:20:22
Сообщений: 1303
Откуда: г.Ростов-на-Дону/г.Таганрог/г.Геленджик
Рейтинг сообщения: 0
ILYAUL писал(а):
Судя по картинке 27 SDI - MOSI SDO-MISO.
О чём свидетельствует и шина SDI и SDO на твоём рисунке
При этом по фронту надо передать команду The first
byte transmitted is the command byte. Table 50.
B вот это it is important that pin SDI is never left floating


А как это сделать?

_________________
Опыт растет прямо пропорционально выведенному из строя оборудованию...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пн фев 25, 2013 23:07:44 
Держит паяльник хвостом
Аватар пользователя

Карма: 15
Рейтинг сообщений: 70
Зарегистрирован: Ср мар 28, 2012 21:45:24
Сообщений: 906
Откуда: ВО
Рейтинг сообщения: 0
О чём из мной перечисленного ты спросил?
И надеюсь это так with the Most Significant Bit (MSB) sent first


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пн фев 25, 2013 23:13:30 
Это не хвост, это антенна
Аватар пользователя

Карма: 6
Рейтинг сообщений: 68
Зарегистрирован: Вс апр 19, 2009 17:20:22
Сообщений: 1303
Откуда: г.Ростов-на-Дону/г.Таганрог/г.Геленджик
Рейтинг сообщения: 0
Т.е. линию SDI надо придавить к земле и пойдет передача?

_________________
Опыт растет прямо пропорционально выведенному из строя оборудованию...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пн фев 25, 2013 23:24:59 
Держит паяльник хвостом
Аватар пользователя

Карма: 15
Рейтинг сообщений: 70
Зарегистрирован: Ср мар 28, 2012 21:45:24
Сообщений: 906
Откуда: ВО
Рейтинг сообщения: 0
Аппаратный SPI имеет два буфера на передачу и приём.
1. Запихиваешь команду с 1 в 7-бите в буффер передатчика с 01 в битах 6-5 и адресом ,в остальных , того регистра который хочешь читать.
2. отсылаешь!
3. Запихиваешь 8- нулей в буфер передатчика
4. Отсылаешь
5. Вынимаешь данные из буфера приемника.
6. Уходишь на пункт 3
7. Когда наконец всё прочтёшь или просто надоест- выходишь.
И шины SDI SDO перепаяй как надо или ещё раз проверь , судя по твоему ответу они соединены не правильно!
Да и SDA/CE ставить в ноль заранее - перед передачей или просто подключи ее "намертво" к земле.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пн фев 25, 2013 23:55:49 
Это не хвост, это антенна
Аватар пользователя

Карма: 6
Рейтинг сообщений: 68
Зарегистрирован: Вс апр 19, 2009 17:20:22
Сообщений: 1303
Откуда: г.Ростов-на-Дону/г.Таганрог/г.Геленджик
Рейтинг сообщения: 0
Вот оно как :)

_________________
Опыт растет прямо пропорционально выведенному из строя оборудованию...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Вт фев 26, 2013 00:02:43 
Это не хвост, это антенна
Аватар пользователя

Карма: 6
Рейтинг сообщений: 68
Зарегистрирован: Вс апр 19, 2009 17:20:22
Сообщений: 1303
Откуда: г.Ростов-на-Дону/г.Таганрог/г.Геленджик
Рейтинг сообщения: 0
Ура!!! Заработало!!! :)))

_________________
Опыт растет прямо пропорционально выведенному из строя оборудованию...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Вт фев 26, 2013 00:07:44 
Это не хвост, это антенна
Аватар пользователя

Карма: 6
Рейтинг сообщений: 68
Зарегистрирован: Вс апр 19, 2009 17:20:22
Сообщений: 1303
Откуда: г.Ростов-на-Дону/г.Таганрог/г.Геленджик
Рейтинг сообщения: 0
Кстати, очень стойкая микра. Перепутал полярность питания, заметил только когда дым пошел. Думал конец ей, а он включилась и заработала, как ни в чем не бывало :shock:

_________________
Опыт растет прямо пропорционально выведенному из строя оборудованию...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Чт фев 28, 2013 23:19:45 
Это не хвост, это антенна
Аватар пользователя

Карма: 6
Рейтинг сообщений: 68
Зарегистрирован: Вс апр 19, 2009 17:20:22
Сообщений: 1303
Откуда: г.Ростов-на-Дону/г.Таганрог/г.Геленджик
Рейтинг сообщения: 0
А как программный SPI сделать? Пытаюсь делать так:

Код:
void spi_write(unsigned char adress, unsigned char data){
   SCK_LOW;

   CE_LOW;

   unsigned char i;
   
   for(i = 0; i < 8; i++){

       if(((adress >> 7) & 1)) {
         MOSI_HIGH;
       } else {
         MOSI_LOW; 
       }

                SCK_HIGH;

      SCK_LOW;

       adress <<= 1;
   }

      for(i = 0; i < 8; i++){
          if(((data >> 7) & 1)) {
            MOSI_HIGH;
          } else {
            MOSI_LOW; 
          }

              SCK_HIGH;

         SCK_LOW;

          data <<= 1;
      }

   CE_HIGH;
}


В итоге у слейва никакой реакции. В аппаратном было так:
Код:
   SPDR = adress; // передача адреса
      while(!(SPSR & (1<<SPIF))); // ждем, если линия зянята

      SPDR = data; // передача данных
      while(!(SPSR & (1<<SPIF)));  // ждем, если линия зянята


Что я делаю не так?

_________________
Опыт растет прямо пропорционально выведенному из строя оборудованию...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пт мар 01, 2013 15:43:31 
Держит паяльник хвостом
Аватар пользователя

Карма: 15
Рейтинг сообщений: 70
Зарегистрирован: Ср мар 28, 2012 21:45:24
Сообщений: 906
Откуда: ВО
Рейтинг сообщения: 0
Код:
 }
                SCK_HIGH;

      SCK_LOW;

Вот это понравилось . Мастерам якудза такое и не снилось- несколько наносек и яйца долой. Вот только микросхемы не понимают такое издевательство.
Поэтому берем снова DS и изучаем тайминги


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пт мар 01, 2013 18:57:02 
Это не хвост, это антенна
Аватар пользователя

Карма: 6
Рейтинг сообщений: 68
Зарегистрирован: Вс апр 19, 2009 17:20:22
Сообщений: 1303
Откуда: г.Ростов-на-Дону/г.Таганрог/г.Геленджик
Рейтинг сообщения: 0
Да, вот как раз по поводу таймингов я и забыл написать в вопросе :) Где про них можно прочитать?

_________________
Опыт растет прямо пропорционально выведенному из строя оборудованию...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пт мар 01, 2013 20:06:00 
Держит паяльник хвостом
Аватар пользователя

Карма: 15
Рейтинг сообщений: 70
Зарегистрирован: Ср мар 28, 2012 21:45:24
Сообщений: 906
Откуда: ВО
Рейтинг сообщения: 0
PCA2129T.pdf


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Связь по SPI, нужна помощь.
СообщениеДобавлено: Пт мар 01, 2013 20:23:06 
Это не хвост, это антенна
Аватар пользователя

Карма: 6
Рейтинг сообщений: 68
Зарегистрирован: Вс апр 19, 2009 17:20:22
Сообщений: 1303
Откуда: г.Ростов-на-Дону/г.Таганрог/г.Геленджик
Рейтинг сообщения: 0
Его я уже раз 10 прочитал, только вот про длительность таймингов ни слов не увидел... А, вот они, нашел :)

_________________
Опыт растет прямо пропорционально выведенному из строя оборудованию...


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 19 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y