Доброй ночи! 29 числа научная выставка и я изо всех сил стараюсь успеть, но застрял на таком моменте: Код не судите строго, просто я много экспериментировал с ним. Код (C++): void loop() { while(Serial.available() == 0); message = Serial.readStringUntil('*'); //message = "Y135*"; uint8_t i = message.length(); Serial.println(i); //arr_message = message; for (uint8_t start = 0; start < i; start++) { message_arr[start] = message.charAt(start); Serial.println(message_arr[start]); //char simvol = message.charAt(start); } radio.write(&message_arr, sizeof(message)); Serial.println(message_arr); } Суть в том что если по COM отправить например : "#Y135*" То ответ, такой 4 # Y 1 3 #Y13* 1 Y13* Я хочу спать, а также получить значения по COM и отправить их по nrf2401, а так как получить значения я хочу больше чем спать, то сижу делаю и прошу помощи. Может есть более простой способ сделать это?
Код (C++): #include <SPI.h> #include <nRF24L01.h> #include <RF24.h> // https://github.com/maniacbug/RF24 String message; const uint64_t pipe = 0xe7e7e7e7e7; //char message_arr[6] = {'#', '#', '#', '#', '#', '#' }; RF24 radio(9, 10); // CE, CSN void setup(){ Serial.begin(9600); radio.begin(); delay(2); radio.setChannel(115); // канал (0-127) radio.setDataRate(RF24_1MBPS); radio.setPALevel(RF24_PA_HIGH); radio.openWritingPipe(pipe); // открываем трубу на передачу. } void loop() { //while(Serial.available() == 0); if (Serial.available()) { message = Serial.readStringUntil('*'); uint8_t i = message.length(); char message_arr[i]; Serial.println(i); for (uint8_t start = 0; start < i; start++) { message_arr[start] = message.charAt(start); } radio.write(&message_arr, sizeof(message)); Serial.println(message_arr); message = ""; } } Вот так работает