Как передать несколько переменных с пк?

Тема в разделе "Arduino & Shields", создана пользователем ALeska811, 25 апр 2020.

  1. ALeska811

    ALeska811 Нерд

    Хотелось бы узнать как можно передать с пк несколько переменных на ардуино.
    Например:
    День, погоду , год, любое число
    Как передать то понятно можно записать:
    09 27 2005 98
    но как считать это?
     
  2. NikitOS

    NikitOS Шут Администратор

    Разбивать полученную строку на массив значений?
     
    ALeska811 нравится это.
  3. parovoZZ

    parovoZZ Гуру

    создать соглашение, которое именуется "протокол передачи". В нем договориться, какая переменная за какой следует. На приемной стороне всё это сложить в массив, структуру, собственный тип данных...
     
    NikitOS нравится это.
  4. ALeska811

    ALeska811 Нерд

    а есть ссылка на гайд?
     
  5. issaom

    issaom Гуру

    То что Вам написали здесь это и есть гайд, Вы же не спрашивали, что такое массив или что такое протокол. Есть 100500 способов реализации данной задачи....
    Один из способов описан например в книге Джерми Бюма "Изучаем Ардуино" (стр 135)
     
    NikitOS нравится это.
  6. Daniil

    Daniil Гуру

    На этом форуме кучу раз приводили, я в том числе.
     
  7. AlexU

    AlexU Гуру

    Если данные сложной структуры, которая часто меняется в процессе разработки, то можно взглянуть в сторону JSON'а и потоковой обработки на стороне Arduino (есть такая библиотека: https://github.com/squix78/json-streaming-parser). Я с её помощью "гоняю" конфигурацию устройства из EEPROM на комп и обратно.
     
    ДеКодер нравится это.
  8. Navigator

    Navigator Нуб

    И не стоит забывать что с порта Ардуино считает данные в символах ACSI, т.е. если отправить 0 то в цифровом значение получите 48, 1 - 49 и тд.
     
  9. parovoZZ

    parovoZZ Гуру

    а если отодвинуть дурину в сторону, то всё дойдет пучком)))
     
  10. issaom

    issaom Гуру

    На ArduinoWiring,есть целая пачка операторов которая позволяет легко решить эту проблему даже полному чайнику в программировании. Не надо забивать голову новичкам ACSI и прочей байдой.
    Например вот:
    https://doc.arduino.ua/ru/prog/Serial/ParseInt
     
  11. Navigator

    Navigator Нуб

    А если там будут не только цифры?
     
  12. issaom

    issaom Гуру

    Тогда это уже будет другая тема, и другой вопрос! ТС спрашивал про цифры, если плохо разбираешься в программировании ParseInt самое простое и быстрое решение задачи.