- 3D-Druck Einstieg und Tipps         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 18 von 18

Thema: Controller verschluckt 4. Zeichen

  1. #11
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    18.05.2007
    Ort
    Berlin
    Alter
    52
    Beiträge
    765
    Anzeige

    Praxistest und DIY Projekte
    Wenn der Code kleiner wird, dafür aber ein Zeichen mehr ankommt, dann würde ich mal auf Eingangsbufferüberlauf tippen. Es könnte sein, dass durch den LCD Befehl eine Pause mit eingebracht wird. Wie sieht es denn ohne ausgabe auf dem LCD aus? Lässt sich der Eingang evtl per Interrupt abfragen?
    Wenn das Herz involviert ist, steht die Logik außen vor! \/

  2. #12
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    28.05.2007
    Ort
    Mannheim
    Alter
    37
    Beiträge
    270
    Ja, das Problem bei Bascom ist das man keine Bufferlänge für die RS232 einstellen kann.

    Aber peterfido hat recht:
    Das "schreiben" auf dem LCD nimmt generell sehr viel Zeit in Anspruch. Es kann sein das er durch das lange schreiben dann ein Zeichen am RS232 verschluckt.

    Also probiers doch mal mit dieser Schleife:

    Code:
    Do 
       B = Inkey(#4) 
       If B <> 0 Then Print #4 , Chr(b) 
    Loop
    Ach ja, und tu uns mal den gefallen: Teste das ganze doch auch mal mit längeren Zeichenketten. Mit 10 Zeichen am Stück oder so. Dann sieht man sowas auf einem Blick obs immer das vorletzte Ist oder immer das 4. und immer jedes 4. oder ob der Fehler immer in unregelmäßigen Abständen auftritt.
    Also ruhig mal mit 10 Zeichen und 11 und 12 und 13 und so probieren.

    Gruß Robodriver
    Wer aufhört besser zu werden, hat aufgehört gut zu sein

    Jeder I/O Port kennt drei Zustände: Input, Output, Kaputt

  3. #13
    Neuer Benutzer Öfters hier
    Registriert seit
    07.12.2007
    Beiträge
    18
    Ersteinmal vielen Dank für eurer Bemühungen.

    Wenn ich das LCD Display nicht anspreche, dann reagiert der Controller viel schneller.

    Folgendes kann ich dann übertragen, aber auch hier sind noch Fehler vorhanden. Das kann doch net sein oder ?
    Wir haben mittlerweile auch schon eine 2. Platine versucht, aber bei dieser tritt der gleiche Effekt auf.
    Ist der Quellcode an sich schlecht oder liegt es an Bascom ?


    start1 start1
    starte1 start1
    rrrssstttt rrrsstt
    123456789ab 123458b
    123456789abc 123458bc
    123456789abcdefghijkl 123458behkl

  4. #14
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    28.05.2007
    Ort
    Mannheim
    Alter
    37
    Beiträge
    270
    Hm, also der Fehler scheint doch recht unregelmäßig zu kommen.

    Vielleicht schauen wir nochmal kurz auf die Hardware:
    Bitte miss mal die Spannung am MAX232 Baustein nach. Vielleicht reichen die Pegel nicht ganz aus.

    Und ansonsten würde mir jetzt nur noch eins einfallen:
    Schick den empfangenen String mal erst dann zurück wenn er vollständig übertragen wurde (erfordert ein <Enter> am Ende des Strings (chr10 und chr13):

    Code:
    dim str as string * 15
    dim Buchstabe as string * 1
    str=""
    Do 
       B = Inkey(#4) 
       buchstabe = chr(b)
       If b = 13 then
         Print #4 , str
         str = ""
       Else
         str = str + buchstabe
       End If
    Loop
    Probier dann mit diesem Code nochmal die Zeichenketten die du oben schonmal probiert hast. Wenns dann immer noch net klappt muss es eigentlich an der Hardware liegen.

    Gruß Robodriver
    Wer aufhört besser zu werden, hat aufgehört gut zu sein

    Jeder I/O Port kennt drei Zustände: Input, Output, Kaputt

  5. #15
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    18.05.2007
    Ort
    Berlin
    Alter
    52
    Beiträge
    765
    Max232 bei USB? Ich nutze für USB den FTDI und habe bei 57600 keine Probleme. Der Fehler muss irgendwo anders sein. Evtl mal die Hardware überprüfen und die Kondensatoren an der Versorgunsspannung nicht weglassen.
    Wenn das Herz involviert ist, steht die Logik außen vor! \/

  6. #16
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    28.05.2007
    Ort
    Mannheim
    Alter
    37
    Beiträge
    270
    Hm, das angesprochene Board hab ich hier leider noch nicht gefunden.
    Und da ich in einer Schaltung auch Daten über USB übertrage und das ganze über FT232 --> MAX232 läuft, dachte funktioniert das hier genauso (oder halt über den FTDI)
    Irgend eine Wandlung muss drinne sein, denn im Programm spricht er ja RS232 an.
    Und da ist immer das Problem das der Controller mit TTL-Pegel arbeitet aber RS232 immer erst auf den +12/-12V Pegel gewandelt werden muss.
    5V ist für RS232 ein undefinierter zustand. Desshalb ist es immer wichtig das die 12 Volt vernünftig erzeugt werden
    Wer aufhört besser zu werden, hat aufgehört gut zu sein

    Jeder I/O Port kennt drei Zustände: Input, Output, Kaputt

  7. #17
    Neuer Benutzer Öfters hier
    Registriert seit
    07.12.2007
    Beiträge
    18
    Also wenn das vion Interesse sein könnte, wir haben dieses Board:
    http://<br /> <a href="http://www.s...=162</a><br />

  8. #18
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    28.05.2007
    Ort
    Mannheim
    Alter
    37
    Beiträge
    270
    okay, das ist ein fetiger USB treiber. Welcher genau steht leider nicht drinne. Aber offensichtlich wird dort mit keinen echten RS232 Pegeln sondern nur mit den TTL Pegeln gearbeitet. Also meine Vermutung ist damit schonmal zunichte.

    Aber ich habe gesehen dass das Board auch noch eine echte RS232 Schmittstelle mit echten Pegeln hat (MAX232).
    Kannst ja mal versuchen diese an deinen PC anzuschließen und das ganze nochmal zu versuchen.


    Bitte vergiss aber nicht mal das von gestern 15:39 Uhr mal um zu setzen. Denn damit müsste es eigentlich dann funktionieren. Wenn nicht muss es ein Hardware fehler sein.
    Wer aufhört besser zu werden, hat aufgehört gut zu sein

    Jeder I/O Port kennt drei Zustände: Input, Output, Kaputt

Seite 2 von 2 ErsteErste 12

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress