Hallo robocat,

ich habe mal ein bischen mit dein C-Code rumgespielt und bin auf einige Probleme gestoßen, aber erstmal hier wie er jetzt bei mir aussieht:

Code:
// free code for reading gns9810 gps mouse attached to COM1 port done by robocat
// compiler: bcc32, platform: xp

#include <stdio.h>
#include <windows.h>


int main(void)
{
  HANDLE port;
  DCB dcb;
  unsigned long dwNum;
  unsigned char c, string[6];

  port=CreateFile("COM1", // hier com-port einstellen
                  GENERIC_READ | GENERIC_WRITE,
                  0,
                  NULL,
                  OPEN_EXISTING,
                  0,
                  NULL);       // serielle Schnittstelle öffnen

  if(!port)
  {
    printf("failed to open port!\n");
    getch();
    exit(1);
  }

  if(!GetCommState(port, &dcb))
  {
    CloseHandle(port);
    printf("failed to get port!\n");
    getch();
    exit(1);
  }

  dcb.DCBlength=sizeof(dcb);
  dcb.BaudRate = CBR_38400;     
  dcb.ByteSize = 8;            // 8 Datenbits
  dcb.Parity = 0;              // kein Paritätsbit
  dcb.StopBits = ONESTOPBIT;   // 1 Stoppbit
  dcb.fBinary = TRUE;
  dcb.fParity = 0;
  dcb.fNull=TRUE;

  if(!SetCommState(port, &dcb))
  {
    CloseHandle(port);
    printf("failed to set port!\n");
    getch();
    exit(1);
  }

  sprintf(string,"%c%c%c%c%c",255,86,120,120,86);
  if(WriteFile(port,string,5,&dwNum,NULL))printf("init ok!\n");

  while(run)
  {
    ReadFile(port,&c,1,&dwNum,NULL);
    printf("%c",c);
    
  }

  CloseHandle(port);           // serielle Schnittstelle schließen
  return(0);
}
Wenn ich diesen nun laufenlasse mit verbundener RxD und TxD Leitung kommen nicht wie ich dachte die zahlen 255,86,120,120,86, sonder immer nur die ganze zeit "V". Dann dachte ich das das an dem %c liegen muss und habe es durch ein %i ersetzt damit er die zahlen auch als zahlen immt und es kam nur "ö".
Jetzt weiß ich nicht wie ich da meine zahlen senden soll für das Micro-Servoboard von Robotikhardware.

kannst du mir vll nochmal weiterhelfen?

MfG Jan