Разбор строки принятой по UART для GRBL
Разбор строки принятой по UART для GRBL
Пытаюсь разобрать строку <Idle|MPos:0.000,0.000,0.000|FS:0,0|WCO:0.000,0.000,0.000>
для начала внутри скобок <>
навалял такую конструкцию, но она работает как то странно, через раз, а что я сделал не так, непонятно.
Что я сделал не так?
для начала внутри скобок <>
навалял такую конструкцию, но она работает как то странно, через раз, а что я сделал не так, непонятно.
Что я сделал не так?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- Sancho
- Полковник
- Сообщения: 4066
- Зарегистрирован: 25 дек 2015, 17:32
- Откуда: Ярославль.
- Имя: Александр
- Поблагодарили: 5 раз
- Контактная информация:
Разбор строки принятой по UART для GRBL
[ref]shura2[/ref], Совет.
Сначала примите строку, посимвольно, когда закончите - один раз разберите.
Пример приёма 100500 раз был на форуме.
Ок, 100501 Вариант 2, идеи
Сначала примите строку, посимвольно, когда закончите - один раз разберите.
Пример приёма 100500 раз был на форуме.
Ок, 100501 Вариант 2, идеи
У вас нет необходимых прав для просмотра вложений в этом сообщении.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Разбор строки принятой по UART для GRBL
разбирал я эти примеры, и их на сайте не так уж много. Так как строка все равно заполняется по одному символу из уарта, мне показалось логичным разобрать строку по мере приема. и работать уже предварительно обрезанной и проверенной стройкой.
А мой пример рабочий, ошибка была в отсылке результатов обратно в уарт - если нет изменений, то ничего не посылает, а я посылал строку одну и туже.
А мой пример рабочий, ошибка была в отсылке результатов обратно в уарт - если нет изменений, то ничего не посылает, а я посылал строку одну и туже.
- DrMario
- Лейтенант
- Сообщения: 378
- Зарегистрирован: 07 ноя 2016, 13:11
- Откуда: Камень-на-Оби
- Имя: Евгений
- Контактная информация:
Разбор строки принятой по UART для GRBL
Проще и надежнее не бывает, я так всегда делаю.
После приема раскладывайте строку как угодно, индикатором прихода данных будет сброс приемного буфера.
После приема раскладывайте строку как угодно, индикатором прихода данных будет сброс приемного буфера.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Разбор строки принятой по UART для GRBL
Да, делал похоже, но как-то не был уверен, что символ конца строки совпадает с концом передачи. В моем варианте это более наглядно.DrMario писал(а): 29 сен 2020, 06:22 Проще и надежнее не бывает, я так всегда делаю.
После приема раскладывайте строку как угодно, индикатором прихода данных будет сброс приемного буфера.
Мне в контроллер надо посылать символы типа 0x18, '\n', '\0' Если \n и \0 еще понятно, то как послать все три одной строкой не доходит.
- AlexCrane
- Капитан
- Сообщения: 903
- Зарегистрирован: 20 окт 2017, 13:22
- Откуда: Ульяновск
- Имя: Александр
- Поблагодарили: 12 раз
Разбор строки принятой по UART для GRBL
[ref]shura2[/ref], Ну так и пошли всё вместе одной строкой \x18\n\0
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....
Если нет возможности отблагодарить материально, хотя бы оцени пост....
Разбор строки принятой по UART для GRBL
Спасибо, заработало. Только не понял почему. это же вроде разные типы данныхAlexCrane писал(а): 30 сен 2020, 06:45 [ref]shura2[/ref], Ну так и пошли всё вместе одной строкой \x18\n\0
доделал разбор строки. Можно ли эту конструкцию упростить?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- AlexCrane
- Капитан
- Сообщения: 903
- Зарегистрирован: 20 окт 2017, 13:22
- Откуда: Ульяновск
- Имя: Александр
- Поблагодарили: 12 раз
Разбор строки принятой по UART для GRBL
[ref]shura2[/ref], Для начало хотелось бы увидеть что за строку парсите... Парсить каждый цикл одну и туже строку нет смысла, можно только при изменении строки. После блока детектора изменения строки RTrig не нужен. Это так что первое увидел.
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....
Если нет возможности отблагодарить материально, хотя бы оцени пост....
Разбор строки принятой по UART для GRBL
Это строка получаемая из контроллера ЧПУ станка с прошивкой GRBL - состояние, координаты. приходит в виде строки <Idle|MPos:0.000,0.000,0.000|FS:0,0|WCO:0.000,0.000,0.000>. Из которой мне пока нужен только статус IDLE и координаты MPOS. Планирую же сделать автономное (без компа) управление с экраном. Из хотелок: тачскрин, графическое меню, энкодер и чтение файлов с усбфлешек.AlexCrane писал(а): 03 окт 2020, 20:05 shura2, Для начало хотелось бы увидеть что за строку парсите... Парсить каждый цикл одну и туже строку нет смысла, можно только при изменении строки.
Спасибо, поправлюAlexCrane писал(а): 03 окт 2020, 20:05 После блока детектора изменения строки RTrig не нужен. Это так что первое увидел.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 5 гостей