У меня полнофункциональный циклический буфер uint16_t
(для 16-битной машины). Я хочу запастись строкой. Используемые функции:
void bufCirPut(buf_c_gest cbuf, uint16_t data); //put data, first argument is a pointer to circular buffer
int bufCirGet(buf_c_gest cbuf, uint16_t * data); //Retrieve data
На данный момент я попытался
char data1[10]="hello";
char *p_data1= &data1;
bufCirPut(buf_c_test, p_data1);
uint16_t donnee1;
bufCirGet(buf_c_test, &donnee1);
printf("%u\n ", donnee1);
Я получаю адрес памяти (я думаю, это как 220, 230,216 ...), как go назад в строку, пожалуйста?
РЕДАКТИРОВАТЬ: цель буфера состоит в том, чтобы датчик заполнял буфер строкой, а другие устройства считывали буфер для информации. Эти буферы также будут использоваться для передачи uint16_t
между fla sh хранилищами. Поэтому я пытаюсь найти уникальное решение для обоих случаев использования.