私は8051MCのピンのいくつかのスイッチとプッシュボタンからデータを取得するプロジェクトを行っています。今、私はシリアルに、このデータをポートピンでPCに送信する必要があります。PC側では、シリアルポートクラスを使用してC#シャープ.netアプリケーションでデータを受信しています。ここで問題となるのは、Cシャープアプリケーションで受信するデータをASCIIではなくビット文字列の形式にしたいということです。
誰かがそれを達成する方法を教えてもらえますか?
私は8051MCのピンのいくつかのスイッチとプッシュボタンからデータを取得するプロジェクトを行っています。今、私はシリアルに、このデータをポートピンでPCに送信する必要があります。PC側では、シリアルポートクラスを使用してC#シャープ.netアプリケーションでデータを受信しています。ここで問題となるのは、Cシャープアプリケーションで受信するデータをASCIIではなくビット文字列の形式にしたいということです。
誰かがそれを達成する方法を教えてもらえますか?
このようなもの?
byte b = 23;
var str = Convert.ToString(b, 2).PadLeft(8,'0');
文字は通常、C#では2バイトのセットで格納されます。したがって、16ビットごとに、バイナリのセットをchar型にキャストします。
char c = (char)myBinary;
編集:これはもちろん、プロジェクトが各文字に割り当てるビット数によって異なります。1バイトである可能性があります。その場合は、以下のリンクで文字の構造を調べる必要があります。
参照:http://msdn.microsoft.com/en-us/library/vstudio/x9h8tsay.aspx