Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 08.09.2016, 10:44  
TAutomatic
Временная регистрация
 
Регистрация: 18.07.2012
Сообщений: 73
Сказал спасибо: 4
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
TAutomatic на пути к лучшему
По умолчанию Модуль USART6 в STM32F407

Привет форумчанам.

Обнаружил, что при использовании модуля USART6 в STM32F407 генерируется прерывание по приему байта в буфер приемника, при этом флаг USART_SR_RXNE в регистре SR не устанавливается. Точнее говоря, видимо устанавливается, поскольку в Keil в отладчике периферии видно, что галка устанавливается. Но при попытке считать его в переменную для дальнейшего анализа причины прерывания он автоматически сбрасывается. Я вижу при входе в прерывание в окне отладчика состояние регистра 0xF0, а после присвоения переменной 0xC0.
Код:
void USART6_IRQHandler(void)
{
	unsigned long isrflags;

	isrflags = MonitorHandle -› Instance -› SR;
	if ((isrflags & USART_SR_RXNE) && (MonitorHandle -› Instance -› CR1 & USART_CR1_RXNEIE))
		{
                }
}
То есть код обработчика никогда не выполняется, поскольку не создается условия, хотя я вижу, что в регистре данных содержится именно то, что я посылаю в контроллер.
В тоже время, при аналогичном использовании модулей USART1, USART3 и USART3 все работает правильно.
Прочитал STM32F40x and STM32F41x Errata, никаких замечаний по работе USART6 не обнаружил.
Может кто-то сталкивался с подобным?
Реклама:
TAutomatic вне форума  
Непрочитано 08.09.2016, 12:33  
TAutomatic
Временная регистрация
 
Регистрация: 18.07.2012
Сообщений: 73
Сказал спасибо: 4
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
TAutomatic на пути к лучшему
По умолчанию Re: Модуль USART6 в STM32F407

Проблема решена, форумчане.

Все работает, как надо. Немного не состыковались логика работы в голове , соответственно руками написанный код, и кусок, сгенерированный CubeMX. Проверил установки в CubeMX, перегенерировал код, все заработало. Все 4 модуля USART работают идентично.
TAutomatic вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Модули для МК - связь, датчики, и т.д. picavr Микроконтроллеры, АЦП, память и т.д 11 03.02.2012 15:43


Часовой пояс GMT +4, время: 19:42.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot