- Labornetzteil AliExpress         
Ergebnis 1 bis 5 von 5

Thema: Probleme mit INPUT für µC zu PC Kommunikation

  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    14.04.2008
    Ort
    Esslingen
    Alter
    35
    Beiträge
    235

    Probleme mit INPUT für µC zu PC Kommunikation

    Anzeige

    Praxistest und DIY Projekte
    Tag zusammen,

    Ich glaube das Thema wurde schon etliche Male angesprochen aber ich weis echt nicht weiter. Ich möchte über den INPUT Befehl einen String an einen ATMEGA8 senden. Dieser kommt vom PC. Mein Programm ist folgendes:


    Dim test as String * 10

    Do
    Input test
    print test
    loop
    End


    Sobald ich jetzt mehr als 10 Zeichen sende (auch wenn ich erst 5 und dann 7 sende), kann ich nicht mehr als 10 Zeichen empfangen. Danach bekomm ich keine Meldung mehr vom µc. Wie kann ich das verhindern sodass ich ständig Befehle empfangen kann? Wenn ich "test" am ende des Programm zurücksetze (also - test = "" - bringt das auch nichts). Kann mir da jemand weiterhelfen? Bin echt schon am verzweifeln
    Elektronische Bauteile funktionieren mit Rauch. Lässt man den Rauch raus, sind sie kaputt.

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    26.05.2007
    Beiträge
    594
    Das Problem ist in dem Fall glaubich, dass der String nur 10 Zeichen hat.
    Wenn du jetzt mehr als 10 schickst, dann ist die Variable voll und der "Wagenrücklauf" -- also das Zeilenend-Zeichen - wird verschluckt.
    Dadurch wird das INPUT für den µC nicht abgeschlossen und er stellt sich dumm.

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    14.04.2008
    Ort
    Esslingen
    Alter
    35
    Beiträge
    235
    Ja nur wie kann ich das verhindern^^. Möchte danach ja fröhlich weitersenden.
    Elektronische Bauteile funktionieren mit Rauch. Lässt man den Rauch raus, sind sie kaputt.

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    26.05.2007
    Beiträge
    594
    1 - String vergrößern
    2 - Weniger Zeichen senden
    3 - UART-Interrupts / Puffer verwenden

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    14.04.2008
    Ort
    Esslingen
    Alter
    35
    Beiträge
    235
    So alles kla hat jetzt soweit funktioniert. Jetzt ist noch folgendes Problem. Ich habe eine RS232- Kommunikation zwischen einem ATMEGA8, einem ATMEGA644 und meine PC aufgebaut. Diese sieht so aus, dass der 644 und der 8 direkt über RxD und TxD gekreuzt miteinander verbunden sind. Das funktionoert auch soweit gut. Jetzt ist aber noch der PC über einen MAX232 mit dem MEGA8 verbunden. Ich sende Daten vom 644 an den 8, der führt dann Befehle aus und sendet eine Bestätigung an den PC. Nun möchte ich aber die gleichen Befehe, die der 644 sendet auch vom PC aus senden können. Das funktionoert aber nur, wenn ich den 644 von der Kommunikation entferne. Gibt es da irgendwas, auf das ich achten muss?
    Elektronische Bauteile funktionieren mit Rauch. Lässt man den Rauch raus, sind sie kaputt.

Berechtigungen

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

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad