ШИМ

ШИМ в УАРТ

Ответить
vfear
Рядовой
Сообщения: 93
Зарегистрирован: 30.01.2019{, 14:56}
Репутация: 1
Имя: Владимир

ШИМ

#1

Сообщение vfear » 03.06.2019{, 16:15}

Всем привет :)
Имеется аппаратура и приемник FlySky.
Я так понимаю, что приемник выдает шим сигнал от аппаратуры.
Вопросы: как в flprog преобразовать этот сигнал от приемника в данные и отправить в УАРТ?
какие пины на уно подходят для чтения шим сигнала?
если питание на приемник отдельно подается, нужно объединить земли?

Отправлено спустя 5 часов 26 минут 23 секунды:
Делаю один проект, нужно через ардуино подключится к плате гироскутера по uart.
Прошу помощи по данному вопросу.
Вложения
6_ti_kanalnaya_apparatura_flysky_ct6b_r6b_m2_s_priemnikom_24g_fs_ct6br6b_5979daa27d80e_6825_big.jpg

Ingwar
Полковник
Сообщения: 1929
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 223
Откуда: Ленобласть
Имя: Игорь

ШИМ

#2

Сообщение Ingwar » 03.06.2019{, 21:49}

vfear писал(а):
03.06.2019{, 21:42}
как в flprog преобразовать этот сигнал от приемника в данные и отправить в УАРТ?
Читайте в этом направлении http://forum.rcdesign.ru/f87/thread240587.html
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

vfear
Рядовой
Сообщения: 93
Зарегистрирован: 30.01.2019{, 14:56}
Репутация: 1
Имя: Владимир

ШИМ

#3

Сообщение vfear » 04.06.2019{, 09:42}

Ingwar писал(а):
03.06.2019{, 21:49}
vfear писал(а):
03.06.2019{, 21:42}
как в flprog преобразовать этот сигнал от приемника в данные и отправить в УАРТ?
Читайте в этом направлении http://forum.rcdesign.ru/f87/thread240587.html
Да уж... не все так просто. Я думал готовое решение найти. :smile37:

Ingwar
Полковник
Сообщения: 1929
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 223
Откуда: Ленобласть
Имя: Игорь

ШИМ

#4

Сообщение Ingwar » 04.06.2019{, 13:15}

vfear писал(а):
04.06.2019{, 09:42}
Да уж... не все так просто.
Ну если особая точность не нужна, то можно примитивно http://arduino.ru/forum/apparatnye-vopr ... signal-kak
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

vfear
Рядовой
Сообщения: 93
Зарегистрирован: 30.01.2019{, 14:56}
Репутация: 1
Имя: Владимир

ШИМ

#5

Сообщение vfear » 04.06.2019{, 14:05}

Не понимаю, пока)
Видел просто подключают pwm приемник к ардуинке и отправляют данные в уарт. Без особых заморочек, как это сделать?
Если в FLprog создать аналоговый вход и его соединить с блоком "отправка в уарт" будет работать?
Вложения
20160509090148_36710.jpg

SSSergeich
Капитан
Сообщения: 708
Зарегистрирован: 06.02.2016{, 11:01}
Репутация: 37
Откуда: Ярославль
Имя: Сергей

ШИМ

#6

Сообщение SSSergeich » 05.06.2019{, 12:22}

Вот кое-что на гитхабе

Отправлено спустя 6 минут 8 секунд:
На вскидку вот еще попалось
тут, тут, тут и тут

vfear
Рядовой
Сообщения: 93
Зарегистрирован: 30.01.2019{, 14:56}
Репутация: 1
Имя: Владимир

ШИМ

#7

Сообщение vfear » 05.06.2019{, 15:10}

SSSergeich писал(а):
05.06.2019{, 12:28}
Вот кое-что на гитхабе

Отправлено спустя 6 минут 8 секунд:
На вскидку вот еще попалось
тут, тут, тут и тут
Спасибо огромное, это то, что нужно https://github.com/afiskon/pwm-ppm-deco ... WMRead.txt
и сразу еще вопрос - можно ли сделать блок для flprog под данный скетч? Например, что бы потом на основе выходных данных производить дальнейшие действия.

Аватара пользователя
Ivan_Kornege
Лейтенант
Сообщения: 342
Зарегистрирован: 29.04.2017{, 08:24}
Репутация: 27
Откуда: гАндурас
Имя: Ivan

ШИМ

#8

Сообщение Ivan_Kornege » 08.06.2019{, 06:54}

vfear, мне делал AVGN блок _не подойдет тебе ? Я его уже сохранил в 5 версии флпрог.
Reading_PWM_(CODE).ubi
(21.69 КБ) 52 скачивания
Алгоритм:
При появлении импульса срабатывает прерывание по фронту сигнала(когда он возрастает с 0 до 1).
Сохраняем текущее время и устанавливаем прерывание на срез сигнала(переключение с 1 на 0).
При срабатывании прерывания на срез сохраняем разницу между текущим временем и записанным ранее, таким образом получаем длительность импульса. Переключаем прерывание обратно на фронт. Передаём данные через Arduino.
Остается только преобразовать время в микросекундах к требуемым единицам.

Ответить

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