Связь Arduino по схеме «точка-точка» с RFM LoRa Shield
В < a href="https://cytrontechnologies.github.io/RFM-LoRa-Shield-Examples/Arduino-Sketches-Overview/">этом руководстве он отправляет строку из одного узла в другой узел. Но если я хочу отправить целое число вместо строки, как мне изменить код?
Serial.println("Sending to rf95_server");
// Отправить сообщение на rf95_server
String radiopacket = "Hello World #";
radiopacket += String(packetnum++);
radiopacket += " from ";
radiopacket += node_id;
Serial.print("Sending "); Serial.println(radiopacket); delay(10);
rf95.send((uint8_t*)radiopacket.c_str(), radiopacket.length()+1);
Serial.println("Waiting for packet to complete..."); delay(10);
rf95.waitPacketSent();
@Kelvin Chai, 👍1
Обсуждение0
Смотрите также:
- Как использовать SPI на Arduino?
- Как решить проблему «avrdude: stk500_recv(): programmer is not responding»?
- Как создать несколько запущенных потоков?
- Как подключиться к Arduino с помощью WiFi?
- avrdude ser_open() can't set com-state
- Как узнать частоту дискретизации?
- Что такое Serial.begin(9600)?
- Я закирпичил свой Arduino Uno? Проблемы с загрузкой скетчей на плату
Вы можете либо преобразовать его в текст (sprintf), либо отправить его в виде байтов. Как вам нравится. Как вы *хотите* его отправить?, @Majenko
Я хочу отправить данные, полученные с ультразвукового датчика. Как отправить данные в виде байта? Извините, я новичок в программировании., @Kelvin Chai
Я могу сказать... Данные — это просто данные, будь то строка или число. Это просто данные.
int
— это всего лишь два байта. Вы можете отправить его, приведя его к типу bytes (как вы уже делаете с существующим кодом) с размером 2 байта. Просто помните, что приводить его нужно с использованием адреса целого числа, а не его значения., @Majenko