Как исправить код ошибки "expected primary-expression before '%' token"?
Я пытаюсь использовать этот код, чтобы получить значения температуры и влажности от датчика DHT11 и отправить его в Python, и мне нужно написать значения температуры и влажности в одной строке. Но я продолжаю получать код ошибки
ожидаемое первичное выражение перед токеном '%'
Как я могу это исправить?
#include <dht.h>
#include <stdio.h>
int a = 0;
int b = 0;
char buffer [64];
dht DHT;
#define DHT11_PIN 7
void setup(){
Serial.begin(9600);
}
void loop(){
a = DHT.temperature;
b = DHT.humidity;
int chk = DHT.read11(DHT11_PIN);
sprintf(buffer, %d %d, a, b);
Serial.print(buffer);
delay(1000);
}
@vueenx, 👍-2
Обсуждение1 ответ
Лучший ответ:
▲ 1
Вам не хватает кавычек для второго параметра sprintf
:
sprintf(buffer, "%d %d", a, b);
,
@Eugenio Pace
пожалуйста, не отвечайте на вопросы о синтаксических ошибках. они не по теме, @Juraj
Смотрите также:
- Serial Comm. проблема синхронизации между Arduino и Pyserial
- Протокол связи Arduino с python — помимо примера pyserial и Arduino
- Каков наилучший (самый быстрый и надежный) способ отправки сообщений между Python на ПК и Arduino через последовательный порт?
- `time.sleep` в скрипте python чтение последовательного вывода вызывает неустойчивое поведение
- Последовательная связь между python и Arduino nano BLE sense 33 для запуска шести двигателей постоянного тока.
- Программирование Arduino с использованием Python, а не C/C ++
- Не удается связаться с ардуино с помощью python (Windows)
- Как заставить Arduino взаимодействовать с тремя другими Ардуино?
В ошибке упоминался номер строки. Вы смотрели на эту строчку?, @timemage