RR2021 1 20 июля, 2023 Опубликовано 20 июля, 2023 · Жалоба вообщем нужно шестнадцатиричный код преобразовать в текст условно получить из 0x0F два символа 0x30 0x46 т.е. '0' 'F' uint8_t crc3 ; uint8_t buf[132]={0}; //№1 crc3 = 0xF0; sprintf ( (char *) buf ,"%2X,", crc3 ); uart_write( 5, buf, 4); //№2 crc3 = 0x00; sprintf ( (char *) buf ,"%2X,", crc3 ); uart_write( 5, buf,4); //№3 crc3 = 0x0F; sprintf ( (char *) buf ,"%2X,", crc3 ); uart_write( 5, buf, 4); //№4 crc3 = 0xFF; sprintf ( (char *) buf ,"%2X,", crc3 ); uart_write( 5, buf, 4); в №1 всё получается как надо 0x46 0x30 0x2C (запятая ) в №2 получается 0x20 0x30 0x2C (запятая ), а хотелось бы чтобы получалось 0x30 0x30 0x2C в №3 получается 0x20 0x46 0x2C (запятая ), а хотелось бы чтобы получалось 0x30 0x46 0x2C в №4 всё получается как надо 0x46 0x46 0x2C (запятая ) вообщем что применить вместо %2X Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 143 20 июля, 2023 Опубликовано 20 июля, 2023 · Жалоба %02X https://cplusplus.com/reference/cstdio/printf/: 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RR2021 1 20 июля, 2023 Опубликовано 20 июля, 2023 · Жалоба 25 минут назад, Сергей Борщ сказал: %02X https://cplusplus.com/reference/cstdio/printf/: спасибо!!! то что надо Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться