-
        

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

Thema: komonikation zwischen 2 atmega8

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    28.05.2009
    Beiträge
    55

    komonikation zwischen 2 atmega8

    Anzeige

    hi,

    ich hab jez schon ein paar mal gesehen das µC miteinander verbunden sind, und das die iwi über bits komonizieren. ich hab zwa schon ein paar beiträge über sowas gelesen aber ich versteh kein word davon.

    mich würde interessieren wie das funktioniert, und ob das schwer zu programmieren ist.

  2. #2
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Für die VErbindung gibt es mehrere Möglichkeiten:
    SPI (3-4 Leitungen), UART (1 oder 2 Leitungen), TWI=I2C (2 Leitungen)

    Die Programmierung ist nicht besonder schwer. halt so ähnlich wie mit einem anderen HW Teil. Dabei ist der Empfänger Teil (bzw. Slave) in der Regel der schwierigere.

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    28.05.2009
    Beiträge
    55
    cool,
    welche von den beiden möglichkeiten wäre leichter für einen anfänger?
    und kennst du eventuell ein Tutorial oder ein anderes beispiel wo ich mir das mal genauer angugen könnte?

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    14.04.2008
    Ort
    Esslingen
    Alter
    29
    Beiträge
    235
    Ich persönlich würde dir zum Anfang zu einer Kommunikation über UART raten. Mit Bascom ist die Programmierung nicht allzu schwer.
    Zum Beginn würd ich erst mal ne Kommunikation zwischen µC und PC machen, wobei da noch zusätzliche Hardware notwendig ist,s. http://www.rn-wissen.de/index.php/AV...leicht_gemacht

    Ansonsten kannst du hier mal schauen
    http://www.halvar.at/elektronik/klei..._vom_computer/

    Zur Not hab ich irgendwo auch noch ein kleines Beispielprogramm in Bascom. Da Kommunizieren ein ATMEGA8 und ein ATMEGA32 miteinander
    Elektronische Bauteile funktionieren mit Rauch. Lässt man den Rauch raus, sind sie kaputt.

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    28.05.2009
    Beiträge
    55
    wen du mir das mit den ATMEGA8 und ATMEGA32 mal zu kommen lassen könntest wäre das supa. von denen hab ich noch n paar^^

  6. #6
    Erfahrener Benutzer Fleißiges Mitglied Avatar von High Light
    Registriert seit
    21.08.2009
    Ort
    Baden Württemberg
    Beiträge
    142
    Hallo zusammen,

    genau das selbe Problem habe ich auch.
    Wenn ich dieses Beispielprogramm auch mal bekommen könnte,
    wäre ich verdammt dankbar.
    Welche Verbindung wurde in diesem Beispiel benutzt?

    Gruß High Light

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied Avatar von High Light
    Registriert seit
    21.08.2009
    Ort
    Baden Württemberg
    Beiträge
    142
    Hallo zusammen,

    genau das selbe Problem habe ich auch.
    Wenn ich dieses Beispielprogramm auch mal bekommen könnte,
    wäre ich verdammt dankbar.
    Welche Verbindung wurde in diesem Beispiel benutzt?

    Gruß High Light

  8. #8
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    14.04.2008
    Ort
    Esslingen
    Alter
    29
    Beiträge
    235
    So es handelt sich um eine "einseitige" Kommunikation, also der ATMEGA32 sendet nur an den ATMEGA8. Wenn gewollt kann man das Programm ja ruhig abändern dass der ATMEGA8 ne Empfangsbestätigung zurückschickt oder was auch immer.

    Empfänger:
    Code:
    $regfile = "m8def.dat"
    $framesize = 48
    $swstack = 64
    $hwstack = 64
    $crystal = 8000000
    $baud = 9600
    
    
    Dim Empfangen As String * 3                Bei mehr Zeichen einfach die Stringzahl erhöhen
    
    On Urxc Onrxd
    Enable Urxc
    Enable Interrupts
    
    
    
    Do
    If Len(empfangen) > 2 Then       'Nur als Prüfung da ich immer 3 Zeichen gesendet habe, kann also auch weggelassen werden
    
    .           'Hier einfach den Code was passieren soll
    .
    .
    
    Empfangen = ""
    End if
    Loop
    End
    
    
    
    
    
    
    
    Onrxd:
    Empfangen = Empfangen + Chr(udr)
    Return

    Sender:
    Code:
    $regfile = "m32def.dat"
    $framesize = 54
    $swstack = 128
    $hwstack = 64
    $crystal = 8000000
    $baud = 9600
    
    On Urxc Onrxd
    Enable Urxc
    
    Enable Interrupts 
    
    Do
    .
    .
    .
    
    Gosub Senden
    Loop
    
    
    Senden:
    Print "Zu sendender Text"              
    Return
    Elektronische Bauteile funktionieren mit Rauch. Lässt man den Rauch raus, sind sie kaputt.

  9. #9
    Benutzer Stammmitglied
    Registriert seit
    07.07.2009
    Alter
    21
    Beiträge
    96
    könntest du evtl. noch nen Schaltplan dazuposten??

  10. #10
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    14.04.2008
    Ort
    Esslingen
    Alter
    29
    Beiträge
    235
    Schaltplan ist eig. nur der Standartaufbau für beide Prozessoren, sprich Spannungsversorung, Quarz und Programmieradapter s.hier http://www.rn-wissen.de/index.php/AV...leicht_gemacht
    Je nach Belieben kann natürlich gleich noch ein Display drangebastelt werden um die gesendeten Daten auch gleich anzuzeigen.


    Anschließend noch beide Prozessoren verbinden (Also RxD und TxD). Dabei muss nur drauf geachtet werden dass die Leitungen gekreuzt werden, also RxD von µC1 geht auf TxD von µC2 und umgekehrt.
    Elektronische Bauteile funktionieren mit Rauch. Lässt man den Rauch raus, sind sie kaputt.

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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