マイクロコントローラー (mbed LPC1768) 用のプログラムを作成していますが、uint8_t へのシリアル入力をデコードするのにいくつか問題があります。
char ackBuffer[20];
外部デバイスからの入力がいっぱいです。たとえば、次のようになります。F040A34B6785121\r
私がやりたいことは、各数値が 2 文字の 16 進数値で記号化される uint8_t 配列を取得することです。F は外部デバイスからのメッセージが開始されたことを示し、キャリッジ リターンは各メッセージの終わりです。
したがって、uint8_t 配列に必要なものは次のとおりです。
0x04
0x0A
0x34
...
さらに困難にするために、ackBuffer のサイズが小さい可能性があります。たとえば、これをF04004A\r
簡単に修正できる場合は非常に便利ですが、この問題を自分で回避できます。
ありがとうございました!