-         
Ergebnis 1 bis 4 von 4

Thema: Kommunikation zwischen uP und Pc

  1. #1

    Kommunikation zwischen uP und Pc

    Anzeige

    Hallo zusammen

    Ich habe einmal eine Frage.
    Wie findet am besten die Kommunikation zwischen uP und PC statt.
    Im Moment habe ich nur einen Wert, der vom PC zum uP gesendet wird. Wenn es aber mehrere Werte sind, muss der PC ja dann Wissen welchen Datensatz er gerade empfängt.

    Ich benütze im Moment ein VB Programm mit diesem sende und empfange ich. Im Moment noch sher unelegant.

    Das senden funktioniert auch nicht richtig, da ich einen Konflikt mit den Datentypen habe.

    Mit dem Hyperterminal funktioniert alles Problemlos.

    Hat jemand Erfahrungen mit einem simplen VB-Terminal?

    Gruss
    Matthias

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    19.01.2006
    Ort
    Mönchengladbach
    Beiträge
    544
    Es gibt mehrer Möglichkeiten:
    1.) Du überträgst die Messwerte als Klartext, also etwa:
    "PortA: 0x3F, PortB: 0x7B, AIN0=0xFC"

    2.) Du denkst dir ein Protokoll aus, das du dann auf µC und PC Seite implementierst. Du könntest z.B. die Daten Paketweise übertragen und mit einer Checksumme absichern:
    Startzeichen, Wert 1, ... , Wert X, Prüfsumme

    Gruß,
    SIGINT

  3. #3
    Hallo

    Die erste Variante wäre schon meine Wahl. Ich weiss leider nur nicht, wie ich das in VB und C realisieren kann.

    Hätte jemand vileicht einen Tip'

    Gruss

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    19.01.2006
    Ort
    Mönchengladbach
    Beiträge
    544
    Hi XC866,
    die erste Variante ist optimal, wenn man die Messwerte mit Hyperterm ohne zusatzprogramm anschauen möchte.
    Ich würde alle Messwerte in einer Zeile übertragen und dann mit CR+LF abschließen... so kannst du mit der Funktion gets() die Werte Zeilenweise einlesen und bearbeiten. Mit strstr() kannst du dann z.B die Codeworte "PortA:,PortB, etc." suchen und die folgenden Messwerte ausschneiden. Die Messwerte würde ich Hexadezimal übertragen... das ist in Assembler sehr leicht umsetzbar.

    Gruß,
    SIGINT

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •