Гость Анатолий Опубликовано 14 апреля, 2021 Поделиться Опубликовано 14 апреля, 2021 Добрый день. Пытаюсь работать с spi на stm32h743. Режим full duplex master. Длина 16 бит. Данные уходят и приходят. Отправляю слово и жду флага RXP. В отладчике видно, что в регистре RXDR, после поднятия флага RXP лежат мои данные. Далее я пытаюсь прочитать этот регистр в переменную. Регистр опустошается, флаг сбрасывается, но в переменную ничего не записывается. В чем может быть проблема? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
mail_robot Опубликовано 14 апреля, 2021 Поделиться Опубликовано 14 апреля, 2021 проблема может быть в том, что переменная не определена как volatile 0 Нужно делать то, что нужно. А то, что не нужно, делать не нужно. (С) Винни Пух Ссылка на комментарий Поделиться на другие сайты Поделиться
20% скидка на весь каталог электронных компонентов в ТМ Электроникс!Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!Перейти на страницу акции Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849
Гость Анатолий Опубликовано 14 апреля, 2021 Поделиться Опубликовано 14 апреля, 2021 Писал в память следующим образом: *(volatile uint32_t*)0x30020000 = *(volatile uint32_t*)&SPI3->RXDR Заметил, что если пытаться прочитать регистр входных данных spi и записать в какую либо ячейку SRAM, то данные в ячейке всегда обнуляются. При записи обычного числа запись работает корректно 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>> Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
MasterElectric Опубликовано 15 апреля, 2021 Поделиться Опубликовано 15 апреля, 2021 Возможно связано с FIFO и упаковкой пакета. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
AVI-crak Home Опубликовано 15 апреля, 2021 Поделиться Опубликовано 15 апреля, 2021 14.04.2021 в 19:40, Гость Анатолий сказал: *(volatile uint32_t*)0x30020000 = *(volatile uint32_t*)&SPI3->RXDR SPI3->RXDR Имеет атрибуты const volatile - данные изменяются за пределами видимости. Это означает что он всегда будет читаться заново, в любом месте программы. И GCC не имеет права оптимизировать это чтение. Атрибуты регистра влияют на переменную, она не становится volatile - но значение своё меняет. А вот причин отсутствия данных может быть множество: алгоритм чтения не из этого мира (вечный бан в google), данные не готовы (нет флага), данных много (FIFO заполнен пустотой), данные прочитал отладчик (любителям смотреть живые переменные), данные прочитал дма (любителям подсматривать), ваш модуль не имеет связи с внешним миром (ноги мк не настроены), ваш модуль вообще не работает (не включен, и не настроен), этого модуля вообще нет в этом мк (для понаехавших аурдинщиков), модуль сгорел физически (220в - это много). 0 RtoS Ссылка на комментарий Поделиться на другие сайты Поделиться
MasterElectric Опубликовано 16 апреля, 2021 Поделиться Опубликовано 16 апреля, 2021 @AVI-crak Home А const там каким боком? Давай лучше опыт поставим над SWD. А то на ютубе неудобно. Как может быть то что ты писал если на шине происходит обычная транзакция, она такая же как и любая другая. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Анатолий Опубликовано 17 апреля, 2021 Поделиться Опубликовано 17 апреля, 2021 Благодарю всех за помощь. Данные читал отладчик. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.