0 / 0 / 1
Регистрация: 18.11.2018
Сообщений: 35

Как задать четность всегда 0 (ну или всегда 1) stm32

21.09.2025, 11:50. Показов 1030. Ответов 27
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно использовать бит четности как адресный бит. Если передается адрес, то бит четности в 1. Во всех остальных случаях в 0. Как это реализовать?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.09.2025, 11:50
Ответы с готовыми решениями:

Общение с барометром MS5540 на STM32 (Arduino to STM32)
Получил от китайца сей аппарат, пошел тут же гуглить что нибудь готовое, но не тут то было....

stm32 + FSMC + stm32
Доброе времени суток. Возможно ли к Ftosh памяти подцепить два Stm32F4. Один МК будет записывать...

Чем связать STM32 + STM32 в одном корпусе?
Есть 2 платы: (1) - STM32 (Вывод на LCD + запись SD) и (2) - STM32F4 (обработка сигналов +...

27
Модератор
Эксперт по электронике
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,851
21.09.2025, 15:24
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от jcxz Посмотреть сообщение
Это не "решение", а кубокодинг.
это путь к срачу в сообщениях говорю как модератор если такое появится буду безжалостно удалять такие сообщения.

Цитата Сообщение от jcxz Посмотреть сообщение
Решение, это когда сперва изучают даташит и reference manual на контроллер
ты с большим компьютерам также общаешься. Изучаешь процессор, обвязку, шины ?
0
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3376 / 2678 / 573
Регистрация: 04.09.2018
Сообщений: 8,490
Записей в блоге: 3
21.09.2025, 16:05
Паритет посылки действительно вычисляется аппаратным блоком USART. Т.е. что туда не запиши - он изменится при передаче в буфер. Но, если паритет не использовать, то 9-й бит становится свободным для своих целей. Как верно отметил ValeryS в последнем листинге настроек порта.
1
Windows must die
827 / 833 / 102
Регистрация: 23.11.2021
Сообщений: 4,840
Записей в блоге: 15
21.09.2025, 17:00
Цитата Сообщение от adiagnost Посмотреть сообщение
неупорядоченностью нам не подойдет
В чем именно выражается "неупорядоченность"? Нужны временные метки? Можно сделать. У меня многие железяки на CAN годами работают стабильно. Все красиво и здорово. Мультимастер - это все-таки круто! Не то, что какой-нибудь убогий 232 или 485, которые в оригинале, вообще-то, были рассчитаны на p2p. И только всякие извращенцы начали на них модбасы разнообразные натягивать. Хотя, году в 2009 я и сам был таким извращенцем: уже готовое устройство никто не осилил запрограммировать (то, что пытались на асме написать под PIC14, выглядело ужасно!). А там уже на одном UART'е сидело с полдесятка самодельных драйверов шаговых двигателей. Пришлось извращаться с девятым битом. Ну и еще раз я такое извращение сделал в управлении MMPP (многомодовый фотометр-поляриметр). Можно, кстати, по ссылке код посмотреть. С тех далеких пор я таким извращением больше не занимаюсь. Нафиг-нафиг! У меня уже разработаны и контроллер трех шаговиков с ОС по энкодерам, и контроллер восьми шаговиков без ОС (увы, даже у 144-ногих STM32 нет шестнадцати таймеров, 8 из которых умеют в ШИМ, а 8 - в энкодеры + еще минимум пара таймеров для служебных целей нужна).
Цитата Сообщение от adiagnost Посмотреть сообщение
давно разработана
Как говорится, нет ничего более постоянного, чем временное. Я бы посоветовал таки полностью сменить архитектуру и уйти от всяких убогих 232/485, если на линии должно быть больше одного раба. Или, тем более, если больше одного господина.

Добавлено через 1 минуту

Не по теме:

Цитата Сообщение от ValeryS Посмотреть сообщение
путь к срачу в сообщениях
Валерий, нельзя служебное положение использовать в целях уничижения людей!
И уж тем более тебе, как модератору, нельзя показывать настолько отрицательный пример! Сам ведь знаешь, кто пользуется всякими ардуинами и вот этим вот [censored]



Добавлено через 6 минут
Цитата Сообщение от Eddy_Em Посмотреть сообщение
сделал
Черт! Я наврал, сорян. Я там просто использовал подтяжку на Tx, а не пушпул. Вот, что значит 6 лет в код не заглядывать!
0
Модератор
Эксперт по электронике
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,851
21.09.2025, 17:06
Цитата Сообщение от adiagnost Посмотреть сообщение
Нужно использовать бит четности как адресный бит. Если передается адрес, то бит четности в 1. Во всех остальных случаях в 0.
почитал я про multiprocessor communication
он тоже есть на STM32 и именно в таком виде 1 это адрес а 0 это данные, но сам с ним не работал
попробуй и расскажи если получится
1
Windows must die
827 / 833 / 102
Регистрация: 23.11.2021
Сообщений: 4,840
Записей в блоге: 15
21.09.2025, 17:11
Цитата Сообщение от ValeryS Посмотреть сообщение
multiprocessor communication
Да, возможно, ТСу подойдет. Хотя, он что-то там про самопальный протокол писал.
А эта штука позволяет аппаратно "отвергать" чужие пакеты. И только по IDLE заново реагировать. Удобно: не нужно софтово парсить все, что пришло. Еще плюс - можно DMA использовать (надеюсь - я тоже не проверял это; сейчас более актуальным занят: как к STM32F303CBT6 подключить от пяти до восьми датчиков MLX90640; пока экскурсии вел на телескопе, вроде придумал).
1
Модератор
Эксперт по электронике
8978 / 6744 / 921
Регистрация: 14.02.2011
Сообщений: 23,851
21.09.2025, 17:17
вот одно из описаний, на другом форуме
Если есть только один главный, то можно ещё использовать UART, но запараллелить всех ведомых. Многие МК поддерживают так называемый Multiprocessor communication mode для UART. Если его включить, то все ведомые слушают свои RX, а TX находится в состоянии Hi-Z. В режиме MPCM slave игнорируются все байты, которые приходят на RX, кроме специального, адресного байта. Как правило это 9-битный байт, когда основной обмен выполняется в 8-битном режиме, а когда приходит адресный байт вызывается специальный обработчик прерывания (либо сравнение с нужным значением может происходить аппаратно). Если slave понравится адрес, который master послал в начале пакета данных, то он выходит из режима MPCM и работает с UART как обычно, остальные продолжают всё игнорировать. Slave должен определить, когда посылка закончилась (это уже надо предусмотреть в структуре пакета данных) и уйти обратно в MPCM, когда обмен закончен. Таким образом можно тоже обойтись только 2-мя проводами, но не потребуется контроллер с поддержкой CAN, а UART пихают практически везде.
2
0 / 0 / 1
Регистрация: 18.11.2018
Сообщений: 35
21.09.2025, 17:44  [ТС]
Цитата Сообщение от ValeryS Посмотреть сообщение
multiprocessor communication
он тоже есть на STM32 и именно в таком виде 1 это адрес а 0 это данные, но сам с ним не работал
попробуй и расскажи если получится
Да, надо поизучать..

Добавлено через 19 минут
В рефиренсе искал что-то про 9-ый бит, четность и прочее. А надо было по address поискать. И хотя там много всяких адресов, но среди них и вот это:
Address mark detection (WAKE=1)
Idle frame detected
In this mode, bytes are recognized as addresses if their MSB is a ‘1’ else they are
considered as data. In an address byte, the address of the targeted receiver is put on the 4
LSB. This 4-bit word is compared by the receiver with its own address which is programmed
in the ADD bits in the USART_CR2 register.
The USART enters mute mode when an address character is received which does not
match its programmed address. In this case, the RWU bit is set by hardware. The RXNE flag
is not set for this address byte and no interrupt nor DMA request is issued as the USART
would have entered mute mode.
It exits from mute mode when an address character is received which matches the
programmed address. Then the RWU bit is cleared and subsequent bytes are received
normally. The RXNE bit is set for the address character since the RWU bit has been cleared.
0
22.09.2025, 00:08

Не по теме:

Цитата Сообщение от ValeryS Посмотреть сообщение
ты с большим компьютерам также общаешься. Изучаешь процессор, обвязку, шины ?
У компа есть ОС с API и нет прямого доступа к железу (если только вы не пишите дрова, но это другой уровень). Поэтому нужно учить API.
А у контроллера это нет и при этом полный доступ к железу. Так что сравнение некорректное.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.09.2025, 00:08
Помогаю со студенческими работами здесь

STM32 - STM32 I2C
*****ПРОБЛЕМА ИСПРАВЛЕНА****ОТВЕТ НИЖЕ , НЕ ВЧИТЫВАЙТЕСЬ В КОД ПРОГРАММЫ,УТОНЕТЕ)), НУ ЕСЛИ ТОЛЬКО...

stm32 подвисание или перезагрузка от запуска или отключения пускателя
Как решить эту проблему.Что нужно выполнить ? Добавлено через 32 минуты Ау спецы вы где?

Как войти в разработку STM32 бесплатно? Или подешевле
Добрый день! Я наверное не оригинален со своим вопросом. Не смог найти бесплатный путь к изучению...

МК51 (аналог intel 8051): как добавить бит четности?
Здравствуйте! В массиве 20Н-27Н РПД микроконтроллера МК51 подготовлены для передачи семиразрядные...

Как мне вычислить бит чётности у байта в CodeVisionAVR?
Здравствуйте. Помогите пожалуйста кодом. Есть переменная unsykned char (байт), как мне вычислить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
28
Ответ Создать тему
Опции темы

Новые блоги и статьи
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru