Bluetooth: прочитайте предоставленное пользователем значение, а затем получите время с телефона Android.

Я новичок в Arduino и пытаюсь выполнить следующие две вещи (через модуль Bluetooth, подключенный к телефону Android):

  1. считывать целочисленное значение, предоставленное пользователем.
  2. получить текущее время с телефона (сама плата Arduino не имеет модуля часов).

Что касается № 1, я могу печатать на терминале Bluetooth следующим образом: Serial.println("Введите время ожидания (в миллисекундах): ");. Я вижу эту строку на своем телефоне. Однако мне не удается прочитать значение с терминала, используя timeToWait = Serial.read();. Я пробовал много возможных комбинаций, но в лучшем случае я получаю это в виде значений символов ASCII. Итак, как я могу правильно прочитать целочисленное значение с терминала Bluetooth?

Что касается № 2 - возможно ли это вообще, и если да, то как? Если невозможно получить текущее время через BT с телефона Android - возможно ли получить его через BT с ноутбука Linux? Как?

, 👍-1


1 ответ


-1

По последовательному порту вы передаете данные байт за байтом. Если вы хотите интерпретировать их как числа, вам придется самостоятельно анализировать данные и собирать числа.

Вместо этого вы можете прибегнуть к BLE, там вы можете передавать строки и числа.

,

не могли бы вы создать ссылку с «BLE», указывающую на то, что это такое? (Документы, возможно)... Для меня и будущих читателей. Спасибо!, @user1876484

BLE расшифровывается как Bluetooth Low Energy, также известный как Bluetooth 4.0. Официальные руководства можно найти, например, по адресу [ссылка](https://devzone.nordicsemi.com/nordic/short-range-guides/b/bluetooth-low-energy/posts/ble-characteristics-a-beginners-tutorial). Более простым подходом было бы изучение примеров для ESP32 в Arduino IDE., @imalipusram

Я нашел это: https://www.arduino.cc/en/Tutorial/ReadASCIIString, который выглядит многообещающе., @user1876484

а также https://www.arduino.cc/en/Tutorial.StringToIntExample, @user1876484