Im получая три Uint8 значения, которые являются наиболее, средних и наименее значащие цифры значения участка:Присоединение шестнадцатеричные значения для создания значения 16bit
EG: Отпечатано в консоли (% C):
1 A 4
Мне нужно передать их в графический пользовательский интерфейс, который принимает uint16_t. Пока что он делает это неправильно.
uint16_t iChanI = (bgp->iChanIH << 8) + (bgp->iChanIM <<4) + bgp->iChanIL;
uint16_t iChanQ = (bgp->iChanQH << 8) + (bgp->iChanQM <<4) + bgp->iChanQL;
[self updateSView:iChanI ichanQ:iChanQ];
Могу ли я слить их правильно или просто добавить значения?
Любая помощь очень ценится,
Спасибо,
Выглядит прямо мне. Что-то еще должно быть неправильно. Выведите исходные значения ввода и вывода этого фрагмента. –
* «Я могу слить их правильно или просто добавить значения?» * - почему вы не регистрируете значения или не проверяете их в отладчике для проверки? (Если они напечатаны как «1», «A», «4», то значения равны 0x31, 0x41, 0x34, и результат, вероятно, не тот, который вы хотите.) –
Итак, я получаю шестнадцатеричные значения, и мне нужно преобразуйте их в байтовые значения. –