Общение Ардуино с компом по UART.
-
- Лейтенант
- Сообщения: 355
- Зарегистрирован: 12 окт 2016, 19:03
- Откуда: Краснодар
Общение Ардуино с компом по UART.
Всем доброго!
Продолжаю свой старый проект Антенного ротатора. Перековырял проект убрав много лишнего дабы облегчить поиск неисправности. Суть проблемы в том, что комп отправляет "задание" Ардуине в формате W000"000\r где 000 это координаты которые нужно записать в переменную в качестве уставки. Но оно как то не стабильно пишется, может 2-3 раза нормально пройти, на 4-й вместо допустим 100 и 45 записывает 2 и 9... Смотрю логическим анализатором на порту - строка уходит как и положено, без сбоев но контроллер видимо как то не так её отлавливает. Подскажите пожалуйста решение, может как то по маске отлавливать или ещё какие варианты?
Отправлено спустя 12 минут 58 секунд:
Вот пример посылки от компа для записи новых координат.
Отправлено спустя 11 минут 57 секунд:
Плюс ко всему не могу понять как заставить контроллер отвечать без задержки на запрос, подозреваю что в этом может крыться корень проблемы!
Продолжаю свой старый проект Антенного ротатора. Перековырял проект убрав много лишнего дабы облегчить поиск неисправности. Суть проблемы в том, что комп отправляет "задание" Ардуине в формате W000"000\r где 000 это координаты которые нужно записать в переменную в качестве уставки. Но оно как то не стабильно пишется, может 2-3 раза нормально пройти, на 4-й вместо допустим 100 и 45 записывает 2 и 9... Смотрю логическим анализатором на порту - строка уходит как и положено, без сбоев но контроллер видимо как то не так её отлавливает. Подскажите пожалуйста решение, может как то по маске отлавливать или ещё какие варианты?
Отправлено спустя 12 минут 58 секунд:
Вот пример посылки от компа для записи новых координат.
Отправлено спустя 11 минут 57 секунд:
Плюс ко всему не могу понять как заставить контроллер отвечать без задержки на запрос, подозреваю что в этом может крыться корень проблемы!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Александр_Светлый 09 ноя 2018, 22:18, всего редактировалось 1 раз.
Я не флудер , просто мне есть что сказать =)
-
- Лейтенант
- Сообщения: 355
- Зарегистрирован: 12 окт 2016, 19:03
- Откуда: Краснодар
Общение Ардуино с компом по UART.
Вот что происходит
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Я не флудер , просто мне есть что сказать =)
-
- Лейтенант
- Сообщения: 355
- Зарегистрирован: 12 окт 2016, 19:03
- Откуда: Краснодар
Общение Ардуино с компом по UART.
А вот как надо, всё чётко, запрос - ответ. Это серийное устройство. Запрос-Ответ в увеличенном виде, хорошо видно что МК отвечает незамедлительно! И общая картинка запросов и ответов. У меня же ни как не выходит систематизировать передачу данных. Комп сам себе спрашивает а ардуина сама себе отвечает.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Я не флудер , просто мне есть что сказать =)
-
- Лейтенант
- Сообщения: 355
- Зарегистрирован: 12 окт 2016, 19:03
- Откуда: Краснодар
Общение Ардуино с компом по UART.
Дело в том, что Ардуина будет использоваться с конкретной программой, под неё и подгоняю.
Отправлено спустя 2 минуты 33 секунды:
Мне кажется первостепенно нужно её заставить незамедлительно отвечать на запросы а не тогда когда ей моча в голову стукнет.
Отправлено спустя 2 минуты 33 секунды:
Мне кажется первостепенно нужно её заставить незамедлительно отвечать на запросы а не тогда когда ей моча в голову стукнет.
Я не флудер , просто мне есть что сказать =)
Общение Ардуино с компом по UART.
тогда все хуже
весь код работает в суперцикле и он не всегда успевает отработать вовремя или может быть у тебя происходит переполнение стека и часть данных теряется
операции с юартом жрут очень много памяти
и что за прога такая?
весь код работает в суперцикле и он не всегда успевает отработать вовремя или может быть у тебя происходит переполнение стека и часть данных теряется
операции с юартом жрут очень много памяти
и что за прога такая?
-
- Капитан
- Сообщения: 861
- Зарегистрирован: 17 ноя 2015, 20:36
- Имя: Сергей
- Благодарил (а): 41 раз
- Поблагодарили: 9 раз
- Sancho
- Полковник
- Сообщения: 4066
- Зарегистрирован: 25 дек 2015, 17:32
- Откуда: Ярославль.
- Имя: Александр
- Поблагодарили: 5 раз
- Контактная информация:
Общение Ардуино с компом по UART.
[ref]Александр_Светлый[/ref], Архив не открывается (
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Общение Ардуино с компом по UART.
это я в курсе, положил в корзину на 11.11, а то давно хотел купить 8 каналов, но сейчас есть 16 каналов с защитой
я имел в виду прогу для антенн
может быть там есть протокол модбас?
-
- Лейтенант
- Сообщения: 355
- Зарегистрирован: 12 окт 2016, 19:03
- Откуда: Краснодар
Общение Ардуино с компом по UART.
Хм, странно, не прицепился наверное, на компе в норме... Сейчас перезалью...
Отправлено спустя 3 минуты 39 секунд:
Перезалил архив в первом сообщении, проект очень большой получился, не грузился на сайт, по этому в архиве. Вообще общение с компом началось с вот этого примера который мне набросал rw6cm, с ним происходит абсолютно то же самое.
Отправлено спустя 7 минут 24 секунды:
А по анализатору, да, весьма не плох для своей цены. Есть подороже на 16-18 портов но есть ли в них необходимость? Я реально никогда больше 4 портов не подключал ибо некуда, мне бы лучше пару аналоговых. За то вот тут пришёлся как нельзя кстати.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Я не флудер , просто мне есть что сказать =)
Общение Ардуино с компом по UART.
дело не в количестве каналов, а в их скоростиАлександр_Светлый писал(а): 09 ноя 2018, 22:28Я реально никогда больше 4 портов не подключал ибо некуда
спи может на 16мгц работать с индикаторами, да и в новых схемотехника улучшена
вот только в них есть одна большая жопа - они не могут воспроизводить записанный сигнал или генерировать
такие девайсы называются pattern generator и стоят сотни баксов
я думаю селаевцы запилят скоро новую версию с генератором, когда продажи этих упадут
-
- Лейтенант
- Сообщения: 355
- Зарегистрирован: 12 окт 2016, 19:03
- Откуда: Краснодар
Общение Ардуино с компом по UART.
Ну так что, есть сведущие в делах портовых? Можете помочь с решением данной задачи?
Я не флудер , просто мне есть что сказать =)
Общение Ардуино с компом по UART.
скинь весь проект и название проги той
а то непонятно, в чем тебе помочь
а то непонятно, в чем тебе помочь
- Sancho
- Полковник
- Сообщения: 4066
- Зарегистрирован: 25 дек 2015, 17:32
- Откуда: Ярославль.
- Имя: Александр
- Поблагодарили: 5 раз
- Контактная информация:
Общение Ардуино с компом по UART.
Через что и как подключена ардуинка к компу?Александр_Светлый писал(а): 10 ноя 2018, 15:30Ну так что, есть сведущие в делах портовых? Можете помочь с решением данной задачи?
Отправлено спустя 12 минут 48 секунд:
Архив пишет - повреждён. Попробуйте зазиповать...
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
-
- Лейтенант
- Сообщения: 355
- Зарегистрирован: 12 окт 2016, 19:03
- Откуда: Краснодар
Общение Ардуино с компом по UART.
[ref=#ff8000]Sancho[/ref], К компу подключена как обычно, напрямую кабелем. Программа с которой она по задумке должна работать называется PSTrotator скачать можно по ссылке. Как программа общается с контроллером подсмотрел в этом проекте, загрузил в ардуину, сконектил с PSTrotator и подсмотрел лог. анализатором как происходит обмен.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Я не флудер , просто мне есть что сказать =)
-
- Лейтенант
- Сообщения: 355
- Зарегистрирован: 12 окт 2016, 19:03
- Откуда: Краснодар
Общение Ардуино с компом по UART.
Во, после "зачистки" загрузился проект, раньше непролазил по размеру видимо...
Выше есть пример парсинга который набросал мне rw6cm, я попытался встроить его. Но даже в голом виде как то нестабильно работает, не всегда обновляются данные.
Выше есть пример парсинга который набросал мне rw6cm, я попытался встроить его. Но даже в голом виде как то нестабильно работает, не всегда обновляются данные.
Я не флудер , просто мне есть что сказать =)
-
- Лейтенант
- Сообщения: 355
- Зарегистрирован: 12 окт 2016, 19:03
- Откуда: Краснодар
Общение Ардуино с компом по UART.
Какой именно протокол Вас интересует?
Отправлено спустя 6 минут 5 секунд:
Я пытаюсь эмитировать протоколы Yaesu GS-232A / B и Easycom (в о-о-очень урезанном варианте). Но если по протоколу Yaesu GS-232A /B в сети есть исчерпывающая информация с описанием команд то по Easycom ничего не нашлось.
Yaesu GS-232A /B это односторонняя связь, комп отправляет в порт координаты куда должно следовать устройство а вот последовало ли должен ответить Easycom.
Отправлено спустя 6 минут 5 секунд:
Я пытаюсь эмитировать протоколы Yaesu GS-232A / B и Easycom (в о-о-очень урезанном варианте). Но если по протоколу Yaesu GS-232A /B в сети есть исчерпывающая информация с описанием команд то по Easycom ничего не нашлось.
Yaesu GS-232A /B это односторонняя связь, комп отправляет в порт координаты куда должно следовать устройство а вот последовало ли должен ответить Easycom.
Я не флудер , просто мне есть что сказать =)
Общение Ардуино с компом по UART.
это же костыли лютыеАлександр_Светлый писал(а): 10 ноя 2018, 20:09комп отправляет в порт координаты куда должно следовать устройство а вот последовало ли должен ответить Easycom.
Отправлено спустя 8 минут 2 секунды:
вот что там пишут
For those commands that require a response, the response is an echo of
the command followed by the response. If the command specifies a field
number (eq. AN or IP), then the two numbers are delimited with a comma.
т.е. протокол один и он подтверждает команды, так что непонятно зачем там езу протокол
вот все данные и так есть
https://www.mustbeart.com/software/easycomm.txt
нужно написать модуль парсера и всего-то делов
-
- Лейтенант
- Сообщения: 355
- Зарегистрирован: 12 окт 2016, 19:03
- Откуда: Краснодар
Общение Ардуино с компом по UART.
Комп спрашивает Ардуину c2\r (это видимо означает "где ты?") тут же она ему отвечает AZ=000EL=000\r\n (то-есть азимут 000° элевация 000°). Если в окне программы ввести новые координаты, например - азимут 90°элевация 90° компьютер отправляет в порт W090"090\r на что Ардуина отвечает \r\n. Далее запросы/ответы повторяются, комп С2\r ардуина ему в ответ AZ=090EL=090\r\n.
Тоесть сам этот обмен до смешного прост.
Эти данные были считаны с порта на действующем устройстве от k3ng
Вы можете это сделать т.к. для меня это тёмный лес...
Или может быть подскажите где можно посмотреть как это сделать.
То что мне удалось слепить тоже работает но не стабильно, периодически"посылки" в контроллер теряются и вместо них приходит какой то мусор.
Последний раз редактировалось Александр_Светлый 10 ноя 2018, 20:51, всего редактировалось 3 раза.
Я не флудер , просто мне есть что сказать =)
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость