двусторонняя синхронизация в UART

Ответить
koroleves
Рядовой
Сообщения: 26
Зарегистрирован: 30 апр 2021, 06:04
Имя: егор

двусторонняя синхронизация в UART

Сообщение koroleves »

Подскажите, пожалуйста, как организовать синхронизацию переменной между ESP и MEGA через UART. У меня получается только синхронизацию в одну сторону. При попытке в два направления - переменная "замораживается".
Такой тип отправки на двух устройствах не работает
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось koroleves 15 май 2021, 23:13, всего редактировалось 4 раза.
Serg_Grn
Лейтенант
Сообщения: 338
Зарегистрирован: 11 фев 2018, 13:07
Имя: Сергей
Благодарил (а): 5 раз
Поблагодарили: 1 раз

двусторонняя синхронизация в UART

Сообщение Serg_Grn »

Пардон, а что значит "синхронизация переменной"? :smile37:
koroleves
Рядовой
Сообщения: 26
Зарегистрирован: 30 апр 2021, 06:04
Имя: егор

двусторонняя синхронизация в UART

Сообщение koroleves »

Это чтобы одна переменная синхронно менялась на двух устройствах. На одном устройстве иземенил - она через УАРТ на втором сразу поменялась, и наоборот - на втором изменил - на первом обновилась
Serg_Grn
Лейтенант
Сообщения: 338
Зарегистрирован: 11 фев 2018, 13:07
Имя: Сергей
Благодарил (а): 5 раз
Поблагодарили: 1 раз

двусторонняя синхронизация в UART

Сообщение Serg_Grn »

А почему не использовать для этого две переменные на каждом устройстве?
Аватара пользователя
Vuktor
Сержант
Сообщения: 238
Зарегистрирован: 11 апр 2021, 14:44
Имя: Vuktor

двусторонняя синхронизация в UART

Сообщение Vuktor »

Что за блок read struct?
koroleves
Рядовой
Сообщения: 26
Зарегистрирован: 30 апр 2021, 06:04
Имя: егор

двусторонняя синхронизация в UART

Сообщение koroleves »

Vuktor писал(а): 16 май 2021, 00:06 Что за блок read struct?
Это структура - намного более удобная форма хранения переменных, но суть таже

Отправлено спустя 6 минут 44 секунды:
Serg_Grn писал(а): 15 май 2021, 23:43 А почему не использовать для этого две переменные на каждом устройстве?
Пробовал вначале с "одноименной" переменной на разных устройствах - не работает. Теперь попробовал с разными именами - переменная "замороаживается" - не меняет значения.

Отправлено спустя 4 минуты 45 секунд:
У меня создается впечатление, что при попытке отправлять в две стороны - образуется "кольцо". Т.е. блоки UART не отслеживают изменения переменной, а постоянно отправляют одно и тоже значение друг-другу, игнорируя попытки изменить ее.

p.s. В блоке отправки уарт ставил значение - отправка при изменении.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
koroleves
Рядовой
Сообщения: 26
Зарегистрирован: 30 апр 2021, 06:04
Имя: егор

двусторонняя синхронизация в UART

Сообщение koroleves »

Попробовал отслеживать не совпадают ли значения переменной - не работает :(
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Vuktor
Сержант
Сообщения: 238
Зарегистрирован: 11 апр 2021, 14:44
Имя: Vuktor

двусторонняя синхронизация в UART

Сообщение Vuktor »

koroleves писал(а): 16 май 2021, 07:00 Это структура - намного более удобная форма хранения переменных, но суть таже
Я ещё до структур не дошёл. Полезная наверное вещь :smile225: Вот бы книгу учебник по Flprog написал кто. Подробный, по всем пунктам, с примерами. Я бы купил за любые деньги :rolleyes:
koroleves
Рядовой
Сообщения: 26
Зарегистрирован: 30 апр 2021, 06:04
Имя: егор

двусторонняя синхронизация в UART

Сообщение koroleves »

нашел баг
Способ отправки через BYTE не работает см рисунки
однако если использовать промежуточную конвертацию в String и обратно - работает
Что я тут упустил?

Отправлено спустя 27 минут 21 секунду:
Попробовал промежуточную конвертацию в Integer - все работает, проблема, похоже, именно в Byte
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Ответить

Вернуться в «Помогите, а то я "нимагу"»

Кто сейчас на конференции

Сейчас этот форум просматривают: Amazon [Bot] и 2 гостя