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

 
 
> STM32F4 странности с SPI
Vichkins
сообщение Jul 13 2012, 17:35
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 11-02-09
Пользователь №: 44 714



Пытаюсь наладить обмен данными с трансивером RFM22B, проц stm32f405
до этого работал с spi на f417 таких проблем не было
вот код чтения регистра модуля
CODE

RFM22_SS(ENABLE);
while(!(SPI3->SR&SPI_I2S_FLAG_TXE));
SPI3->DR=reg&(~RFM22_SPI_WRITE_MASK);
while(!(SPI3->SR&SPI_I2S_FLAG_TXE));
SPI3->DR=0x00;
while(!(SPI3->SR&SPI_I2S_FLAG_TXE));
RFM22_SS(DISABLE);

return SPI3->DR;

весь прикол в том, что этот код не работает без отладчика или если поставить брейкпоинт в конце кода, в регистре DR ноль, а если прошагать этот код отладчиком то всё окей wacko.gif
перекидывал модуль на плату с stm32f100 та же фигня, только там вообще непонятно что иногда в регистр приходит, пробовал на трёх SPI на разных пинах контроллера
вместо проверки флага TXE ставил задержки, менял скорость SPI, пробовал запаивать новый модуль, ничего не помогает help.gif
единственное, что ещё приходит на ум, читать SPI с помощью DMA
Go to the top of the page
 
+Quote Post



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

 


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


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