-         

Ergebnis 1 bis 6 von 6

Thema: BASCOM 2te UART oder software UART

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    30.01.2007
    Beiträge
    17

    BASCOM 2te UART oder software UART

    Anzeige

    Hallo

    so wie ich das laut der Suchfunktion in den Beiträgen gelesen habe kann Bascom keine 2te UART ansprechen (zb beim ATMega 162)
    Oder geht das jetzt doch mit neueren Versionen?

    Was ich brauche ist folgendes. 2 serielle Schnittstellen. Beide Endgeräte senden und empfangen mit 9600 Baud.
    Allerdings haben die Daten die hin und hergeschickt werden einen overhead den ich jeweils abschneiden muss oder hinzugefuegt werden muss. Mehr soll der Atmel nicht machen.

    Im Endeffekt heisst das ein par Zeichen vor dem senden hinzufuegen und ein par Zeichen vor dem Empfang "abbeissen"

    Wie kann ich das am besten machen?

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Jaecko
    Registriert seit
    16.10.2006
    Ort
    Lkr. Rottal/Inn
    Alter
    35
    Beiträge
    1.987
    Ich hab bei Bascom noch die 1.11.9.1; und da kann ich von nem ATMega2560 eigentlich alle 4 UARTs verwenden.

    Zum Empfangenen Text lässt sich mit Bascom mit + ein Text anfügen, zum Abschneiden von Textteilen gibts LEFT, MID, RIGHT, TRIM.
    #ifndef MfG
    #define MfG

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    30.01.2007
    Beiträge
    17
    Hallo

    danke fuer die antwort. ich haette mein problem besser formolieren muessen.
    soweit ich weiss kann ich in Bascom nur eine UART mittels interupt abfragen. die zweite,dritte,vierte muss ich mit open befehl oeffnen und in den stream lesen und schreiben.
    dann besteht aber die gefahr bytes zu verlieren bzw ist "unschoen" zu programieren.
    es waere schoener wenn ich beide schnittstellen per interupt programieren koennte.
    wenn ich das richtig nachgelesen habe geht das nicht.
    stimmt das oder liege ich falsch?
    das reine zerstuecklen eines strings ist mir klar wie das geht.

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.112
    Die Hardware UARTs kannst du mit dem Bytematch usw abfragen. Von denen hat dein 162er doch 2, also kein Problem.

    Gruß

    Rolf

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    30.01.2007
    Beiträge
    17
    Ich habe mir die neue Testversion von Bascom runtergeladen.
    dort gibt es eine anweisung das auch der 2te UART ueber einen interupt ausgeloesst wird. siehe mein beispielcode.

    allerdings habe ich nichts gefunden wie ich in den 2ten port etwas schreiben kann (analog zu dem befehl print) und wie ich ein zeichen von der zweiten schnittstelle einlesen kann (anlog zu udr)

    ueberlese ich da etwas oder gibt es da tatsaechlich keine befehle?
    wenn nein warum gibt es dann ueberhaupt die moeglichkeit den UART 2 ueber interupt abzufragen?


    Code:
    $regfile = "m162def.dat"
    $crystal = 3684000
    $hwstack = 42
    $swstack = 40
    $framesize = 40
    
    $baud = 9600
    $baud1 = 9600
    
    
    On Urxc Onrxd
    On Urxc1 Onrxd1
    Enable Urxc
    Enable Urxc1
    
    Enable Interrupts
    
    
    Do
    
    
    
    
    Loop
    
    End
    
    Onrxd:
    Print "1"
    Return
    
    Onrxd1:
    Print "2"
    Return

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.112
    Ab und zu kommt man auch weiter, wenn man mal in der Hilfe nachsieht.
    Du hast doch schon $baud1 gefunden. Wenn du genau dazu die Hilfe öffnest, siehst du, wie es geht.

    Gruß

    Rolf

Berechtigungen

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