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

SPI: получить скорость 500 кбит/сек

Приветствую.

 

Разбираюсь с SPI на ATmega162. Со стороны контроллера организую slave-режим, master-ом выступает

 

Мне надо получить скорость передачи по SPI протоколу 500 кбит/сек. Как я понимаю, надо правильно подобрать коэфициент деления частоты. Но не соображу, как все это подогнать :)

 

Разъясните плиз.

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


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

По логике SPI принимает в ведомом режиме под внешний клок, и может скорость устанавливать не надо. Но я бы оставил установку делителя в регистре SPCR на максимальную частоту то есть нули.

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


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

...

Мне надо получить скорость передачи по SPI протоколу 500 кбит/сек. Как я понимаю, надо правильно подобрать коэфициент деления частоты. Но не соображу, как все это подогнать :)

...

Установить частоту по SPI точно (как у USART) нельзя.

Коэффициент деления задаёт частоты довольно грубо, но т. к. интерфейс является синхронным, то это не имеет большого значения.

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


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

А че, в доке это не расписано разве? На чем, вообще, программишь-то?

В доке много чего расписано :)

Использую WinAVR+AVRstudio

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


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

Установить частоту по SPI точно (как у USART) нельзя.

Коэффициент деления задаёт частоты довольно грубо, но т. к. интерфейс является синхронным, то это не имеет большого значения.

То есть можно целиком положиться на мастера, какую частоту он задаст, на такой и работать?

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


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

Слейв не управляет частотой т. к. не генерирует сигнал CLK.

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


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

А интересно какая максимальная частота для slave. :rolleyes:

 

Наверное Fmax_osc/2

 

Максимальная частота тактового генератора /2.

 

Или нет?

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


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

А интересно какая максимальная частота для slave.  :rolleyes:

 

Наверное  Fmax_osc/2

 

Максимальная частота тактового генератора /2.

 

Или нет?

Цитата из даташита на МЕГУ8: In SPI Slave mode, the control logic will sample the incoming signal of the SCK pin. To ensure correct sampling of the clock signal, the frequency of the SPI clock should never exceed fosc/4.

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


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

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

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

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

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

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

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

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

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

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