整数または10進変数を16進文字列に変換するにはどうすればよいですか?私は反対のことをすることができます(hexをintに変換する)が、私は他の方法を理解することができません。
これは、配列内のSerial.print()
16進値用です。
Arduino Stringチュートリアルを見てください ここ 。以下のコードは、その例から抜粋したものです。
// using an int and a base (hexadecimal):
stringOne = String(45, HEX);
// prints "2d", which is the hexadecimal version of decimal 45:
Serial.println(stringOne);
そのページには他にもたくさんの例がありますが、浮動小数点数の場合は自分でロールする必要があると思います。
簡単な解決策があります。使用するだけです。
Serial.print(yourVariable, HEX);
Streaming ライブラリは、これを行うための組み込みの方法を提供します。
#include <Streaming.h>
...
Serial << "45 in hex is " << _HEX(45) << endl;
ライブラリを http://arduiniana.org/libraries/streaming/ からダウンロードし、Sketchbookフォルダのサブディレクトリに配置する必要があります。メニューファイル-設定はそれがどこにあるかを示します。
このライブラリは、LCDに出力するときにも使用できます。