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

 
 
> STM32F407 Проблемы с SPI, Не отсылается байт сразу после проверки бита ТХЕ в регистре SR
BlackOps
сообщение Apr 21 2013, 05:50
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 618
Регистрация: 7-06-08
Из: USSR
Пользователь №: 38 121



Вот код:

Код
    while ( ( (SPI2 -> SR) & 0x2 ) == RESET)
    {
     //wait until TXE bit is 1
    }
    SPI2 -> DR = d0;



когда этот код исполняется на чипе, или в дебаггере без брейкпоинтов то на осциллографе я только вижу SCK поднятый а MOSI на нуле.
Но когда я исполняю этот код по очереди линию за линией в дебаггере, или же ставлю брейк поинт в дебаггере между циклом while и строчкой с записью в DR, а затем достигнув брейкпоинта опятй продолжаю исполнять код, то на осциллографе вижу переключение SCK и отсылку битов d0.

в чем может быть проблема?

Мне например кажется что SPI2 -> DR = d0; который сразу следует после цикла не дает возможности SPI контроллеру быстро среагировать и послать бит, а исполняя код строка за строкой все работает.

но ведь с другой стороны, я же циклом проверяю бит ТХЕ!? и если я вышел с цикла то буфер свободен и должен бит нормально отослатся?
(я пробовал тоже самое циклом проверять и бит BSY, тоже самое)

есть идеи?


--------------------
Нажми на кнопку - получишь результат, и твоя мечта осуществится
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Golikov A.
сообщение Apr 22 2013, 04:05
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



я вот поглядел даташит(как и реф мануал) и не увидел там упоминания о том что SPI может вообще не запуститься... А тем более упоминания о паузе перед посылкой которая влияет на его работоспособность. Также не нашел никаких битиков говорящих о неработоспособности или о том что еще не вышло время подготовки SPI.

Я просмотрел секцию бутлода из даташита и опять же не увидел упоминания о том что в начале какие то клоки не работают.

Так что если вы знаете что именно надо глядеть, подскажите, всем нам будет интересно. А если пишите из соображений что SPI простая штука, то увы...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- BlackOps   STM32F407 Проблемы с SPI   Apr 21 2013, 05:50
- - ViKo   Вы только посылаете, ничего не читаете? Покажите, ...   Apr 21 2013, 06:30
- - BlackOps   после - бесконечный цикл. до - ничего касательно э...   Apr 21 2013, 06:46
- - ViKo   На тактовые частоты посмотрите, все ли такие, как ...   Apr 21 2013, 08:02
- - BlackOps   вот настройка SPI Код//===========================...   Apr 21 2013, 08:30
|- - adnega   Цитата(BlackOps @ Apr 21 2013, 12:30) в ч...   Apr 21 2013, 08:39
- - Golikov A.   идея такая данные в регистр включили передатчик (д...   Apr 21 2013, 08:41
|- - BlackOps   Цитата(Golikov A. @ Apr 21 2013, 13:41) и...   Apr 21 2013, 08:43
- - Golikov A.   ну у меня нет даташита на все стм я не могу провер...   Apr 21 2013, 12:54
- - BlackOps   Да нет же! Все правильно сдесь! while ( (...   Apr 21 2013, 17:20
- - Genadi Zawidowski   А что за константа RESET? Вот мой вариант (медлен...   Apr 21 2013, 17:37
- - BlackOps   вот моя константа как объявлена: typedef enum {RE...   Apr 21 2013, 17:45
- - Genadi Zawidowski   Цитатаа зачем делать вот это: SPI1->DR & SP...   Apr 21 2013, 17:59
- - BlackOps   да нет не заработало, попробовал также один байт и...   Apr 21 2013, 18:04
- - Golikov A.   ну остается только последнее SPI2 или SPI1 точно ч...   Apr 21 2013, 18:11
- - BlackOps   Да, как яуже говорил, если например ставлю брейк м...   Apr 21 2013, 18:21
- - Genadi Zawidowski   Покажите код, который получился после того, как Вы...   Apr 21 2013, 18:31
- - BlackOps   вот по вашему образцу код мой: Код(void) ...   Apr 21 2013, 18:41
- - Golikov A.   у меня глупый вопрос, а скорости SPI хватает? вы ч...   Apr 21 2013, 18:50
|- - BlackOps   Цитата(Golikov A. @ Apr 21 2013, 22:50) в...   Apr 21 2013, 19:14
- - Genadi Zawidowski   Подсократили, однако... Функцию выдачи байта на SP...   Apr 21 2013, 18:58
- - BlackOps   естесственно хватает, вот что вижу на осциллографе...   Apr 21 2013, 19:05
- - Genadi Zawidowski   Так... 1) А что с выходом чипселекта? Сказать что ...   Apr 21 2013, 19:12
- - Genadi Zawidowski   Раз с глухим while не работает, точно с аппаратным...   Apr 21 2013, 19:15
- - Golikov A.   Не ну тоды магия. А во придумал!!! А...   Apr 21 2013, 19:20
- - BlackOps   попробовал добавление SPI_CR1_DFF, тоже самое, не ...   Apr 21 2013, 19:31
- - Genadi Zawidowski   DFF вообще не нужно (этио 16 бит слова). Вам надо ...   Apr 21 2013, 19:41
- - BlackOps   Ну а что там разбиратся? у меня и SSM=1 и SSI = 1 ...   Apr 21 2013, 19:53
- - Golikov A.   а проц то вообще запускается? без дебагера? Может ...   Apr 21 2013, 19:59
- - BlackOps   проц нормально запускается и работает без дебаггер...   Apr 21 2013, 20:41
- - Golikov A.   ну тогда только что есть какое то прерывание, кот...   Apr 21 2013, 21:04
- - BlackOps   ладно, мне кажется я частичто решил проблему. Се...   Apr 21 2013, 21:10
- - Golikov A.   думаю стоит ли у вас микросхема рессета проца? а ...   Apr 21 2013, 21:15
- - BlackOps   да было иначе периферия не работала бы вообще. Во...   Apr 21 2013, 21:37
|- - HHIMERA   Цитата(BlackOps @ Apr 22 2013, 00:37) Инт...   Apr 22 2013, 03:48
- - Golikov A.   а как SPI должен отличить есть что-то на входе или...   Apr 22 2013, 03:29
|- - BlackOps   Цитата(Golikov A. @ Apr 22 2013, 08:29) К...   Apr 22 2013, 04:26
|- - adnega   Цитата(BlackOps @ Apr 22 2013, 08:26) Его...   Apr 22 2013, 10:39
|- - HHIMERA   Цитата(Golikov A. @ Apr 22 2013, 07:05) т...   Apr 22 2013, 07:07
|- - Golikov A.   Цитата(HHIMERA @ Apr 22 2013, 11:07) Как ...   Apr 22 2013, 08:05
|- - HHIMERA   [DELETED]   Apr 22 2013, 09:49
|- - Golikov A.   [DELETED] Цитата(Genadi Zawidowski @ Apr 22 2...   Apr 22 2013, 11:01
- - ViKo   HHIMERA выразился не точно. TXE выставляется сразу...   Apr 22 2013, 04:39
- - Genadi Zawidowski   Наконец-то увидел инициализацию. Зачем SSI и SSM о...   Apr 22 2013, 10:48
|- - Golikov A.   Цитата(Genadi Zawidowski @ Apr 22 2013, 14...   Apr 22 2013, 15:56
|- - BlackOps   Цитата(Golikov A. @ Apr 22 2013, 19:56) в...   Apr 22 2013, 21:04
- - adnega   У меня хорошо работает такая инициализация: CODEvo...   Apr 22 2013, 11:06
- - ViKo   Я свои SPI в STM32F207 инициализировал так. Тактир...   Apr 22 2013, 12:28
- - Genadi Zawidowski   Цитатав нем утверждается что если поставить SSM, ч...   Apr 22 2013, 16:18
- - Golikov A.   не понятно почему пауза перед записью в регистр по...   Apr 22 2013, 16:28
- - ViKo   Я так и не увидел ответа, что SPI не работал из-за...   Apr 23 2013, 04:11
|- - Golikov A.   Цитата(ViKo @ Apr 23 2013, 08:11) Я так и...   Apr 23 2013, 04:26
- - Genadi Zawidowski   Если вход NSS перед началом передачи где-то около ...   Apr 23 2013, 06:16
|- - BlackOps   Цитата(Golikov A. @ Apr 23 2013, 08:26) н...   Apr 23 2013, 07:41
- - Genadi Zawidowski   Нет желания подтянуть к "1" вывод NSS? И...   Apr 23 2013, 08:49
|- - HHIMERA   Детский сад... гадание пальцем на манной каше... ...   Apr 23 2013, 09:37
|- - ViKo   Цитата(HHIMERA @ Apr 23 2013, 12:37) Выкл...   Apr 23 2013, 09:41
|- - Tolyaha   Цитата(ViKo @ Apr 23 2013, 12:41) Имею Ди...   Apr 23 2013, 10:11
|- - HHIMERA   Цитата(Tolyaha @ Apr 23 2013, 13:11) Не в...   Apr 23 2013, 11:01
- - Genadi Zawidowski   ЦитатаДетский сад... гадание пальцем на манной каш...   Apr 23 2013, 11:14
- - Golikov A.   написать что типа в мануале все верно, а все дурак...   Apr 23 2013, 16:21
- - BlackOps   Короче,чтобы начать плностью с нуля, пошел взял но...   Apr 23 2013, 19:46
- - Golikov A.   а где варианта SSM =1, SSI = 0? вроде как инструк...   Apr 24 2013, 03:41
|- - BlackOps   Цитата(Golikov A. @ Apr 24 2013, 08:41) К...   Apr 24 2013, 04:13
|- - adnega   Цитата(BlackOps @ Apr 24 2013, 08:13) Про...   Apr 24 2013, 04:37
- - BlackOps   затем что с ним не работает как надо! SSM = 0...   Apr 24 2013, 04:51
|- - adnega   Цитата(BlackOps @ Apr 24 2013, 08:51) зат...   Apr 24 2013, 04:54
- - BlackOps   Я не пойму немного, разве целью установки SSOE=1 н...   Apr 24 2013, 05:05
|- - adnega   Цитата(BlackOps @ Apr 24 2013, 09:05) И е...   Apr 24 2013, 06:22
|- - BlackOps   Цитата(adnega @ Apr 24 2013, 11:22) Никто...   Apr 24 2013, 07:45
- - Golikov A.   SSM=1, SSI = 0 - тут пин NSS в 1 вроде должен быть...   Apr 24 2013, 05:51
- - ViKo   http://electronix.ru/forum/index.php?showt...t...   Apr 24 2013, 07:51
- - HHIMERA   Всё это, конечно... очень интересно... "А ...   Apr 24 2013, 11:44
|- - Golikov A.   Цитата(HHIMERA @ Apr 24 2013, 15:44) Всё ...   Apr 24 2013, 13:52
- - Genadi Zawidowski   Цитатапоетому поставил небольшой цикл for, чтобы о...   Apr 24 2013, 12:00
- - BlackOps   Пишу с опозданием надобыло кое какие проекты сдава...   May 2 2013, 03:51


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

 


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


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