Arduino - Как прочитать строку из последовательного порта
Я только недавно начал работать с Arduino
, У меня просто быстрый вопрос, я пытался найти ответ, но потерпел неудачу в течение нескольких дней. По сути, я хочу спросить, есть ли способ прочитать целую строку из последовательного порта. Как линия, выделенная на картинке ниже.
Я пытаюсь использовать Bluesmirf Silver Rn-42
поиск в области устройства Bluetooth и запуск сигнала, если найден соответствующий адрес. Я просто не могу понять, как читать сообщения, которые уже находятся на последовательном порту.
2 ответа
Использование .readString()
Пример кода:
String myString;
void setup()
{
Serial.begin(9600);
}
void loop()
{
while (Serial.available())
{
myString = Serial.readString();
//do stuff with the string
}
}
Если вы хотите прочитать что-то, что уже находится в последовательном порту с конца Arduino, то вам нужно переосмыслить свой код. Все, что вы создадите в своем коде для печати на последовательном мониторе, уже будет в вашей программе готово к доступу, если вы сделаете его доступным правильно. Предоставленная вами примерная строка - это просто массив символов, которые вы можете сохранить в элементе массива, делая его доступным в любое время.
подсказки:
- Никогда не читайте обратно с последовательного монитора, это очень медленно.
- Сделайте все ресурсы, которые вам требуются, доступными и доступными в памяти в то время, когда вам это нужно, для экономии ресурсов и вычислительной мощности.
- Никогда не совершайте одну и ту же ошибку дважды.
Однако, если вы хотите прочитать из COM
порт, к которому подключен Arduino в Windows, тогда вам нужно будет работать с библиотеками Libusb, найденными здесь: http://www.libusb.org/
для C. Любой другой язык будет зависеть от библиотеки или импорта.