Добрый день. Побитово (т.е. либо 0 либо 1) принимаю от датчика данные, длинна посылки 32 бита = 4 байта, Serial.print(digitalRead(buttonPin)); посылку в терминале отображает корректно. Внимание вопрос, как отобразить посылку в HEX виде, не в двоичном, а так же, в переменной какого типа рекомендуется хранить такие данные. Подскажите в какую сторону копать, или что прочитать для реализации данного функционала с наименьшей нагрузкой на проц? p.s. я знаю как преобразовывать числа между системами счисления с помощью математических операций, на мой взгляд это будет очень громоздко. p.p.s. arduino uno если это важно.
Код (C++): // print it out in many formats: Serial.print(x); // print as an ASCII-encoded decimal - same as "DEC" Serial.print("\t"); // prints a tab Serial.print(x, DEC); // print as an ASCII-encoded decimal Serial.print("\t"); // prints a tab Serial.print(x, HEX); // print as an ASCII-encoded hexadecimal Serial.print("\t"); // prints a tab Serial.print(x, OCT); // print as an ASCII-encoded octal Serial.print("\t"); // prints a tab Serial.println(x, BIN); // print as an ASCII-encoded binary // then adds the carriage return with "println" https://www.arduino.cc/en/Serial/Print
Спасибо, тогда следующий вопрос, как корректно в эту переменную занести данные? if (digitalRead(buttonPin)) {val=val*10+1} else {val=val*10} это в принципе операция над десятичными числами получается, и на вскидку работать не будет Ну или ткните носом, в теорию.