schieberegister
-
hi all
Ich möchte einen über die RS232 schnittstelle einen eine Wert abfragen und in einer message box ausgebe.
Mit dem untenstehenden Code kann ich das erste Bit des strings abfragen und in einer messagebox ausgeben:
BYTE data=0; int a=RS232.OpenPort("COM1"); RS232.ConfigurePort(115200,8,0,NOPARITY ,ONESTOPBIT); RS232.WriteByte(1); RS232.ReadByte(data); CString str; str.Format(_T("%d"), data); AfxMessageBox(str);Nun möchte ich aber mehrere Bits nacheinander auslesen, in einer Variabel zusammen setzen und in der messagebox ausgebe.
Tipps, Codeschnipsel?thanks
-
ungetestet
// pseudocode int value = 0; for(int i=0;i<10;++i) { SetBit(value,i); } SetBit(int& value,int bitIndex) { value |= (0x01<<bitIndex) } ClearBit(int& value,int bitIndex) { value &= (~(0x01<<bitIndex)); }