Hex to dec и обратно

По кан шине ловлю данные с авто. собираю свой canbus.
в переменную byte сохраняю данные. далее, необходимо представить их в dec виде, и последние 2 значения записать в переменную уже в hex значении, оставшиеся 2 (перые два) в другую, все значения byte.
вот пример.
byte var1 = 0x5BE это в dec 1470, теперь в одной переменной byte присвоить var2=0xE (это 14 в dec), второй var3=0x46 (это 70 в dec).
толкните куда читать смотреть

Ничего не понял из каши, приведённой в посте, но “толкнуть” могу.

Запомните, никаких dec и hex видов не существует в природе. Это только для удобства чтения человеком. Компьютеру абсолютно фиолетово в каком виде Вы запишете данные - пишите как Вам удобно читать

// Три строки ниже абсолютно эквиваленты.
// переменная n в них получает ровно одно и то же значение
// между ними нет НИКАКОЙ разницы, кроме читабельности человеком
//
n = 321;     // десятичное
n = 0x0141; // шестнадцатеричное
n = 0501; // восьмеричное
4 лайка

Вы уверены в написанном?

2 лайка

Я не понял смысла. Все калькуляторы говорят - 1470 (даже на листочке ручкой такой же ответ получился). Разъяснишь?

Ошибка не в вычислениях. В byte нельзя впихнуть невпихуемое 0x5BE

2 лайка

Ааааа, да-да-да… :slight_smile:

1 лайк

А я не обратил внимания :frowning:

я на php в int32 умудрился впихнуть int64, на выходе получилась такая фигня, что понять КАК? невозможно )))

Что КАК?

2 лайка

Непонятно зачем… и непонятное задание …
Ну как понял …

uint16_t t = 0x5be;

void setup () {
   Serial.begin(9600);
   Serial.println("Start");
   Serial.println(t, HEX);
   uint8_t z=t%100;
   uint8_t x=(t-z)/100;
   Serial.print("Первый  0x");
    Serial.println(x,HEX);
     Serial.print("Второй  0x");
   Serial.println(z,HEX);
}

void loop() {
}

Simulation
Start
5BE
Первый 0xE
Второй 0x46

а я вот не понял, что за способность поднимать такие темы

1 лайк

ХЗ а у меня высветилась как новая… Сорри тогда

ESP32 к примеру отдаёт в качестве серийного номера MAC адрес, теперь понятно?
PS функция всегда пригодится

вот @ЕвгенийП к чему приводят ваше нежелание помочь форуму))
одни столбы кругом))

1 лайк

Там вообще то 2 MAC адреса. Второй у блютуса