того чтоб segger_rtt_printf выводил все 64 бита переменной типа uint64_t в шестнадцатиричной форме? %016x выводит 8 нулей и потом последние 32 бита. если хранится условно значение pow(2,32), то выведет 16 нулей, а не единицу вместо девятого нуля.
Попробуйте использовать %016lx, предварительно прикастовав аргумент к unsigned long
А почему не lx или llx?
Обсуждают сегодня