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

 
 
> STM32 конец клока SPI
RadiatoR
сообщение Sep 17 2016, 13:05
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 270
Регистрация: 8-08-15
Из: Москва
Пользователь №: 87 901



Всем доброго дня.
Завожу MRF24J40. SPI.
Аппаратного CS нету, вылезаем софтверно.

Ногу CS опускаю в начале записи, поднимаю по прерыванию RXNEIE. Все вроде бы нормально (процесс записи в регистр 0x18 значения 0x98):

Но есть проблема - как оказалось запись в чип происходит по спаду клока, пока еще выбран CS. Точнее захват может и по фронту происходит, но запись точно по спаду. И тут возникает проблема - прерывание происходит на половине последнего клока - то есть его фронт уже был, прошла четверть периода клока и прерывается. Соответственно я поднимаю CS. Но как показали опыты если его поднять до того, как клок упадет вниз запись не произведется.

Собственно вопрос - как оптимально сдвинуть CS на половину периода клока? То есть после того, как он опустится.

Спасибо.

PS
Очень интересно - проблема решилась сама собой с увеличением частоты. На скриншоте частота = 24МГц/256. поставил делитель 64 и CS сдвинулся более чем на пол периода

Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
jcxz
сообщение Sep 18 2016, 04:41
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(RadiatoR @ Sep 17 2016, 19:05) *
Собственно вопрос - как оптимально сдвинуть CS на половину периода клока? То есть после того, как он опустится.

Использовать другой режим SPI (биты CPOL, CPHA).
Go to the top of the page
 
+Quote Post
RadiatoR
сообщение Sep 18 2016, 08:20
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 270
Регистрация: 8-08-15
Из: Москва
Пользователь №: 87 901



Цитата(jcxz @ Sep 18 2016, 07:41) *
Использовать другой режим SPI (биты CPOL, CPHA).


Это не то. Они не дали того эффекта

Цитата(ViKo @ Sep 18 2016, 08:59) *
В прерывании от TXE (или от RXNE, если очень хочется) дождитесь BSY, не много потеряете. Если внимательно рассмотрите RM, увидите на картинках, что да как.

Ждать тоже не хочется - все таки это не хороший тон ждать в прерывании. В любом случае я добился своего.
А по поводу mrf - походу антенна не заходит в кабель. Кабель и антенну купил в разных местах и промазал походу.
вот такой набор:


Ее подергаешь бац - несколько пакетов подряд примет, потом о5 пропадает. Короче антенну заменю.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Sep 18 2016, 14:01
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(RadiatoR @ Sep 18 2016, 14:20) *
Это не то. Они не дали того эффекта

Что именно "не то"?
Судя по картинке у Вас CPOL=0, CPHA=0. Т.е. - Вы настроили защёлкивание данных по фронту SCLK. И в то же время пишете:
Цитата(RadiatoR @ Sep 17 2016, 19:05) *
как оказалось запись в чип происходит по спаду клока,

Так всё-таки: чип MRF24J40 защёлкивает данные по фронту или по спаду??? Неужели на этот чип нет доки? Или читать не умеете?
Если всё-таки по спаду, то CPOL=1, CPHA=0 - должно решить проблему.
Go to the top of the page
 
+Quote Post
RadiatoR
сообщение Sep 19 2016, 10:08
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 270
Регистрация: 8-08-15
Из: Москва
Пользователь №: 87 901



Цитата(jcxz @ Sep 18 2016, 17:01) *
Или читать не умеете?


К вашему сведению не всем людям нравится читать такие "наезды". Прошу в отношении меня впредь от них воздержаться.

А по сабжу - как происходит запись/захват я описал еще в первом посте. Захват происходит по фронту. Все как полагается. Но, видимо, захват значения (при записи в регистры mrf) происходит по фронту, а запись этого значения по спаду, при включенном CS. Опыты показали именно такое поведение.
CPOL и CPHA созданы для другого.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- RadiatoR   STM32 конец клока SPI   Sep 17 2016, 13:05
- - ViKo   Поднимайте ногу CS по SPI_SR_BSY.   Sep 17 2016, 13:10
- - AlanDrakes   Лично у меня - вот такая конструкция: Код GPIOA-...   Sep 17 2016, 13:57
- - scifi   Цитата(RadiatoR @ Sep 17 2016, 16:05) Оч...   Sep 17 2016, 14:44
- - RadiatoR   2ViKo не вариант - не использую вайлы 2scifi при ...   Sep 17 2016, 18:29
|- - ViKo   Цитата(RadiatoR @ Sep 17 2016, 21:29) 2V...   Sep 18 2016, 05:59
|- - scifi   Цитата(RadiatoR @ Sep 18 2016, 11:20) Жд...   Sep 18 2016, 09:09
|- - ViKo   Цитата(RadiatoR @ Sep 18 2016, 11:20) Жд...   Sep 18 2016, 09:23
||- - RadiatoR   Цитата(ViKo @ Sep 18 2016, 12:23) Да, уве...   Sep 18 2016, 11:45
||- - scifi   Цитата(RadiatoR @ Sep 19 2016, 13:08) CP...   Sep 19 2016, 10:35
||- - jcxz   Цитата(RadiatoR @ Sep 19 2016, 16:08) А ...   Sep 19 2016, 11:38
|- - RadiatoR   Прочтите внимательнее мое сообщение: Цитата(Radiat...   Sep 19 2016, 10:58
- - scifi   Вообще, конечно, плохо, что нет у STM32 нужного пр...   Sep 18 2016, 12:27
- - RadiatoR   В общем я гляну как будет себя вести ожидание BSY ...   Sep 18 2016, 13:29
- - scifi   "Не верю" (С)   Sep 19 2016, 11:23
- - RadiatoR   Что бы лишний раз не распинаться опишу - формат ра...   Sep 19 2016, 13:11
|- - scifi   Цитата(RadiatoR @ Sep 19 2016, 16:11) В ...   Sep 19 2016, 13:20
|- - Obam   Цитата(RadiatoR @ Sep 19 2016, 17:11) … ...   Sep 19 2016, 13:26
- - RadiatoR   Вот вот. Я и говорю об этом. Всмысле про то, что е...   Sep 19 2016, 14:20
|- - jcxz   Простой способ продлить CS дольше не прибегая к та...   Sep 19 2016, 18:03
|- - Шаманъ   Цитата(jcxz @ Sep 19 2016, 21:03) Простой...   Sep 20 2016, 12:23
|- - RadiatoR   Цитата(Шаманъ @ Sep 20 2016, 15:23) У мен...   Sep 20 2016, 16:58
|- - Alechek   Цитата(RadiatoR @ Sep 20 2016, 21:58) Че...   Sep 21 2016, 04:30
|- - RadiatoR   Цитата(Alechek @ Sep 21 2016, 07:30) Ну и...   Sep 21 2016, 05:02
- - Alechek   Стандартные библиотеки не наш метод? Уважуха! ...   Sep 21 2016, 07:09
- - RadiatoR   Приятно видеть людей, которые понимают в чем преле...   Sep 21 2016, 07:33


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

 


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


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