-
        

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: Zeichen empfangen

  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    14.06.2004
    Alter
    36
    Beiträge
    232

    Zeichen empfangen

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    Moin Moin!

    Mein kleines Proggi funktioniert immer noch nicht so richtig:
    Code:
    $regfile = "m8def.dat"
    $crystal = 4000000
    $baud = 9600
    
    
    Dim Zeichen As Byte
    Zeichen = 0
    
    Do
    
      Zeichen = Inkey()
      If Zeichen > 0 Then Print "Habe Zeichen " & Zeichen & " empfangen!"
    
    Loop
    End
    Auf http://www.mikrocontroller.net/tutorial/uart hab ich etwas zu dem Thema gefunden:
    beim ATmega8 gibt es für UBRR zwei Register: UBRRL (Low-Byte) und UBRRH (High-Byte). Im Normalfall steht im UBRRH 0, da der berechnete Wert kleiner als 256 ist und somit in UBRRL alleine passt.
    Fehlt diese Anweisung in meinen Programm noch, oder hat das damit überhaupt nichts zu tun?
    Bisher mach oben genanntes Programm folgendes: wennn ich mit dem Terminal Emulator vom Bascom auf "Send ASCII character" klicke und dann eine beliebige Zahl eintippe, wird diese gesendet und kurz darauf auch was empfangen (hab da so eine kleine Ststus LED)...
    Leider wird dann im Terminal nix angezeigt!

    Wo liegt der Fehler?

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836

    Re: Zeichen empfangen

    Zitat Zitat von king-sixXx
    Print "Habe Zeichen " & Zeichen & " empfangen!"
    Das ergibt mal nicht das, was du wahrscheinlich möchtest, sondern ganz einfach den String
    Habe Zeichen " & Zeichen & " empfangen!
    Daß er das syntaktisch überhaupt akzeptiert, ist erstaunlich

    Mehrere Werte mit print:
    PRINT "text";variable;"noch'n Text"

    Mit $baud= und $crystal= hast du alles Notwendige definiert, das muß aber auch stimmen.
    Mach erst mal einen einfachen Test dann siehst du, ob sich das Terminal überhaupt mit dem Controller veträgt
    Code:
    $regfile = "m8def.dat" 
    $crystal = 4000000 
    $baud = 9600 
    
      Print "Hello, World!" 
    
    End
    Wenn das nicht klappt, brauchst erst garnicht mehr ins Programm reinzuschreiben




    [/fade]
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von Andree-HB
    Registriert seit
    10.12.2004
    Ort
    Bremen
    Alter
    47
    Beiträge
    2.564
    War fast Alles richtig, so geht es auf jeden Fall :

    Code:
    Dim Zeichen As Byte
    Zeichen = 0
    
    Do
      Zeichen = Inkey()
      If Zeichen > 0 Then Print "Habe Zeichen " ; Chr(zeichen) ; " empfangen!"
    Loop
    End

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    14.06.2004
    Alter
    36
    Beiträge
    232
    Den Syntax hatte ich aus Visual Basic übernommen ... Der alleinige print Befehl funktioniert einwandfrei!
    Ich probier nachher gleich mal die korrigierte Version!

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    14.06.2004
    Alter
    36
    Beiträge
    232
    Es passiert leider gar nichts! Das Terminal Fenster bleibt leer ....
    Muss ich sonst noch Einstellungen vornehmen?

  6. #6
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    Eventuell "Handshake" nicht richtig im Terminal ?

    soll sein "none"
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  7. #7
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    14.06.2004
    Alter
    36
    Beiträge
    232
    Handshake steht auf "none"
    Was muss ich bei Emulation und RTS einstellen?
    Zur Zeit steht bei Emulation "TTY" und RTS ist nicht aktiviert.

  8. #8
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    TTY sollt' reichen.
    Also
    Du kannst ZUM pc schicken und siehst das richtig ?
    Test, ob das terminal überhaupt was wegschickt:
    Das Verbindungskabel controllerseitig abstecken. Wenn du nun das Kabel ende nimmst und von vorn auf den Stecker schaust, breitere Seite oben, hast du oben 5 und unten 4 Stift-löcher.
    Mit einem stück blanken Draht verbindest du von den 5-en (breit) den zweiten und dritten von rechts (Rx u.Tx)
    Wenn du nun auf dem Terminal schreibst, kriegst du deine eigenen Zeichen als Echo zurück.
    Ist das nicht so, hat's was mit PC / Kabel, Controller kann nix dafür
    Das geht--> steck das Kontrollerkabel wieder dran, aber vom Board ab.
    verbinde hier Rx u. Tx (sollte beschriftet sein)
    Geht nicht ---> das kurze Kabel hat was
    Geht schon--> es wird kniffliger ohne Oszi --> rühr dich wieder
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  9. #9
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    14.06.2004
    Alter
    36
    Beiträge
    232
    Hallöchen!
    Ich hab das mal ausgetestet. Wenn ich RX und TX mit einem Kabel überbrücke wird das Echo gleich zurückgeschickt und im Terminal angzeigt. Nach dem MAX funktioniert das mit dem Kabel überbrücken nicht mehr. Es wird nichts im Terminal angezeigt. Also kann ich doch davon ausgehen, dass der MAX was abbekommen hat? Werde es mal mit einem neuen versuchen.
    Vielen Dank für deinen Tipp der is goldwert

  10. #10
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    Na ja, die Rx Tx Leitungen zwischen MAX und Controller kann man so nicht einfach überbrücken, da müßtest du den Controller rausnehmen.
    Aber da Bascom dein (richtiges) Programm normalerweise büffelmäßig durchzieht, MUSS es was mit der Hardware
    Controller-RX Pin ----> out MAX in ---> PC haben. Sooo kompliziert ist das Zeugs nun nicht. Und Baudrate etc. stimmt ja , da der Controller senden kann.
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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