Parity bit berekenen VB6

Status
Niet open voor verdere reacties.

Bas83

Nieuwe gebruiker
Lid geworden
30 dec 2012
Berichten
1
Hoi allen,

Ik zit met het volgende in de maag. Ik probeer een RS232 apparaat te besturen, met aan het einde van een HEX treintje een parity bit.
Als ik handmatig enkele voorbeelden verstuur reageert het apparaat prima, maar nu moet ik VB die parity bit zelf laten berekenen.

Het bericht wat ik versturen wil wordt met 1200 boud verzonden, even parity, 7 databits en 2 stopbits, en ziet er als volgt uit:

Startbit - data veld - CR - Parity bit

Voorbeeld:

7A [start] 74 74 63 63 74 [data] 0D [carriage return] 32 [parity]

Het data veld kan langer of korter zijn, de ontvanger ziet in CR en het parity bit altijd het einde. [Het data veld zelf mag dus nooit een CR bevatten].
De parity bit wordt berekend over de startbit, dataveld en CR. Alles geschied in HEX waarden.

Nu heb ik een code in C#, waarvan ik weet dat deze werkt. Alleen wil ik dit graag in VB6 doen. Gaarne help gevraagd:

Code:
        private byte[] AddParity(string _in)
        {
            byte parity = 0x7f;
            List<byte> _out = new List<byte>();
            ASCIIEncoding asc = new ASCIIEncoding();

            byte[] bytes = asc.GetBytes(_in + '\r');
            foreach (byte bt in bytes)
            {
                parity ^= bt;
                _out.Add(bt);
            }
            _out.Add(parity);
            return _out.ToArray();
        }



De input data heb ik in een textbox [text1], de uitgang [data + parity bit] moeten naar text2.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan