Как преобразовать char arr в массив uint8_t на c для arduino

#c #arrays #arduino

#c #массивы #arduino

Вопрос:

Я пытаюсь передать строку в функцию, которая принимает uint8_t * на c.

Это моя попытка, которая приводит к ошибке:

 uint8_t data[70];    
char str[70];
sprintf(str,"U,DHT;T,%d;H,%d;I,%d", (int)(ft * 100), (int)(fh * 100), (int)(fi * 100));
strcpy(data,(uint8_t*)str);
  

Я получаю эту ошибку, хотя:

 .ino: In function 'void loop()':
ClimateClient:51: error: invalid conversion from 'uint8_t*' to 'char*'
ClimateClient:51: error: initializing argument 1 of 'char* strcpy(char*, const char*)'
ClimateClient:51: error: invalid conversion from 'uint8_t*' to 'const char*'
ClimateClient:51: error: initializing argument 2 of 'char* strcpy(char*, const char*)'
  

Комментарии:

1. Используйте memcpy вместо этого.