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

.

Ответить
koroleves
Рядовой
Сообщения: 26
Зарегистрирован: 30.04.2021{, 06:04}
Репутация: 0
Имя: егор

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

#1

Сообщение koroleves » 15.05.2021{, 22:30}

Подскажите, пожалуйста, как организовать синхронизацию переменной между ESP и MEGA через UART. У меня получается только синхронизацию в одну сторону. При попытке в два направления - переменная "замораживается".
Такой тип отправки на двух устройствах не работает
Вложения
2021-05-15_23-08-03.png
Последний раз редактировалось koroleves 15.05.2021{, 23:13}, всего редактировалось 4 раза.

Serg_Grn
Лейтенант
Сообщения: 333
Зарегистрирован: 11.02.2018{, 13:07}
Репутация: 36
Имя: Сергей

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

#2

Сообщение Serg_Grn » 15.05.2021{, 23:07}

Пардон, а что значит "синхронизация переменной"? :smile37:

koroleves
Рядовой
Сообщения: 26
Зарегистрирован: 30.04.2021{, 06:04}
Репутация: 0
Имя: егор

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

#3

Сообщение koroleves » 15.05.2021{, 23:16}

Это чтобы одна переменная синхронно менялась на двух устройствах. На одном устройстве иземенил - она через УАРТ на втором сразу поменялась, и наоборот - на втором изменил - на первом обновилась

Serg_Grn
Лейтенант
Сообщения: 333
Зарегистрирован: 11.02.2018{, 13:07}
Репутация: 36
Имя: Сергей

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

#4

Сообщение Serg_Grn » 15.05.2021{, 23:43}

А почему не использовать для этого две переменные на каждом устройстве?

Аватара пользователя
Vuktor
Сержант
Сообщения: 237
Зарегистрирован: 11.04.2021{, 14:44}
Репутация: 12
Имя: Vuktor

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

#5

Сообщение Vuktor » 16.05.2021{, 00:06}

Что за блок read struct?

koroleves
Рядовой
Сообщения: 26
Зарегистрирован: 30.04.2021{, 06:04}
Репутация: 0
Имя: егор

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

#6

Сообщение koroleves » 16.05.2021{, 06:49}

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

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

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

p.s. В блоке отправки уарт ставил значение - отправка при изменении.
Вложения
2021-05-16_06-52-57.png
2021-05-16_06-52-57.png (9.59 КБ) 247 просмотров
2021-05-16_06-52-28.png
2021-05-16_06-52-28.png (10.22 КБ) 247 просмотров

koroleves
Рядовой
Сообщения: 26
Зарегистрирован: 30.04.2021{, 06:04}
Репутация: 0
Имя: егор

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

#7

Сообщение koroleves » 16.05.2021{, 07:16}

Попробовал отслеживать не совпадают ли значения переменной - не работает :(
Вложения
2021-05-16_07-13-17.png
2021-05-16_07-12-56.png

Аватара пользователя
Vuktor
Сержант
Сообщения: 237
Зарегистрирован: 11.04.2021{, 14:44}
Репутация: 12
Имя: Vuktor

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

#8

Сообщение Vuktor » 16.05.2021{, 07:36}

koroleves писал(а):
16.05.2021{, 07:00}
Это структура - намного более удобная форма хранения переменных, но суть таже
Я ещё до структур не дошёл. Полезная наверное вещь :smile225: Вот бы книгу учебник по Flprog написал кто. Подробный, по всем пунктам, с примерами. Я бы купил за любые деньги :rolleyes:

koroleves
Рядовой
Сообщения: 26
Зарегистрирован: 30.04.2021{, 06:04}
Репутация: 0
Имя: егор

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

#9

Сообщение koroleves » 16.05.2021{, 09:39}

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

Отправлено спустя 27 минут 21 секунду:
Попробовал промежуточную конвертацию в Integer - все работает, проблема, похоже, именно в Byte
Вложения
2021-05-16_09-31-54.png
2021-05-16_09-30-59.png
2021-05-16_09-19-07.png
2021-05-16_09-18-38.png

Ответить

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