Доброго времени суток! Возникла необходимость запустить 3 ЮСАРТА на STM32, желательно через DMA. С одним каналом нет проблем. Не понятно, как запустить параллельно несколько каналов. Это вообще возможно? ПС. Собственно, на прерываниях тоже вполне устроит. Но пока не получается настроить. Код следующий:
DMA2_Stream7->CR = 0; // Отключаем поток. Нужно обеспечить, чтобы не была вызвана // функция Start_DMA_USART3_Rx, когда предыдущая передача // еще не завершилась, иначе данные будут потеряны. while(DMA2_Stream7->CR & DMA_SxCR_EN); // ждем пока поток эффективно остановится // поток готов к настройке DMA2_Stream7->PAR = (uint32_t) & USART1->DR; // устанавливаем адрес периферии DMA2_Stream7->M0AR = (uint32_t) m_data; DMA2_Stream7->NDTR = am_bytes; // количество байт
DMA2_Stream7->CR = 0; // Отключаем поток. Нужно обеспечить, чтобы не была вызвана // функция Start_DMA_USART3_Rx, когда предыдущая передача // еще не завершилась, иначе данные будут потеряны. while(DMA2_Stream7->CR & DMA_SxCR_EN); // ждем пока поток эффективно остановится // поток готов к настройке DMA2_Stream7->PAR = (uint32_t) & USART6->DR; // устанавливаем адрес периферии DMA2_Stream7->M0AR = (uint32_t) m_data; DMA2_Stream7->NDTR = am_bytes; // количество байт
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Совсем синхронно не получится, не ПЛИС всё таки. Хотя бы друг за другом - отправил посылку по USART1, следом эту же посылку отправляю по USART6. Засовывал уже даже в прерывание по окончанию передачи DMA отправку по USART6 - раз в 10 минут чё-то выкидывает.
Добавлено after 2 minutes 10 seconds: О, даже раз в 10 минут перестал выкидывать
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 27
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения