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

 
 
> Какая то странность с SPI4 в stm32f429zi
Alex_Golubev
сообщение Jun 27 2018, 04:34
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 280
Регистрация: 18-03-17
Пользователь №: 95 877



Привет.

Создал проект для начало в кубе. И увидал странность.
Зависает SPI4 у меня, не сразу а через какое то время работы.
Причем зависает а биты ошибок не ставит.
Примерно на пол пути передачи ставит бит RXNE в единицу и молчит. Если в ручною сбросить его то все дальше работает. Потом проходит какое то время и снова бит RXNE в единице. Такое ощущение что не читается регистр SPI_DR.
В счетчики DMA_SxNDTR остается число, каждый раз разное.

Бит OVR не установлен. Ошибок от DMA нет. Проверял несколько раз.

Вот скриншот всех основных битов. Видно бит RXNE в нуле. Значит данные из SPI не переданы в ОЗУ. DMA2 3 канал приемник 1 канал передатчик.


Может кто подскажет в чем проблема ?

Пытался выловить ошибки DMA:

Код
void DMA2_Stream1_IRQHandler(void)
{
  /* USER CODE BEGIN DMA2_Stream1_IRQn 0 */
/* if(DMA2->LISR & DMA_LISR_TCIF1)
  {
  while(1);
  } */
  
  if(DMA2->LISR & DMA_LISR_TEIF1)
  {
  while(1);
  }
  
  if(DMA2->LISR & DMA_LISR_DMEIF1)
  {
  while(1);
  }
  
  if(DMA2->LISR & DMA_LISR_FEIF1)
  {
  while(1);
  }
  
  /* USER CODE END DMA2_Stream1_IRQn 0 */
  HAL_DMA_IRQHandler(&hdma_spi4_tx);
  /* USER CODE BEGIN DMA2_Stream1_IRQn 1 */

  /* USER CODE END DMA2_Stream1_IRQn 1 */
}


Сообщение отредактировал Alex_Golubev - Jun 27 2018, 05:14
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post



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

 


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


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