www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik BASCOM INPUT-Befehl Fehler


Autor: Moritz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich hab mit BASCOM ein Programm geschrieben mit dem ich Servos vom PC 
aus steuern kann ( via RS232 ) , das hat auch anfangs gut funktioniert , 
aber ganz plötzlich geht garnichts mehr. Ich hab einen Fehler gefunden , 
an dem ich aber verzweifel :

Ich sende immer einen String : z.B.: "1 1000" (Servo 1 , Wert 1000)
das lass ich dann splitten und verarbeiten.
Ich lese den UART Buffer mit dem INPUT Befehl aus, lass ich ihn mir nun 
aber
printen zeigt er mir immer ein Symbol an erster stelle an , ein Viereck 
oder ein Smiley =/.

Quelltext :

Dim input_value As String*8      'maximal "12 1000"
Dim value_array(3) As String*4
Dim Akt As Byte
Dim Takt As Byte

Function servo_pc() As Byte
   Local X As Byte
   if ischarwaiting() = 1 then
     INPUT input_value
     Print input_value           'Nur jetzt zur Überprüfung
     X = Split(input_value;value_array(1), " ")
     servo_pc = 1
   else
     servo_pc = 0
   endif

   If X >= 2
      Akt  = Val(value_array(1)
      Takt = Val(value_array(2)
      X = 0
   endif

End Function

Kann mir jemand sagen woran das liegen kann ?

mfg Moritz

Autor: weinbauer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Input Befehl an der Stelle ist eh Murks.
Für Zeichenempfang gibts den URXC Interrupt.

Wenn falsche Zeichen empfangen werden liegt das zu 99%
daran, dass die Baudrate nicht genau stimmt ... vermutlich
nen Quarz mit "runder Taktung" 8MHz 4MHz 1MHz oder dergleichen.
Es gibt Baudratenquarze die für die UART-Kommunikation besser
passen. Suchbegriff Baudratenquarz

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.