www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Probleme mit MPCM / UART beim Mega8 / Tiny2313


Autor: Bart W. (flabig)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich arbeite mich in Assembler mit Atmel's Mikrocontroller ein.

Ich möchte an einem Mega8 einen Wert über ADC einlesen, den par PWM an 
eine LED übergeben und den Wert noch an 2-3 Tiny2313 per UART senden.

Das hat auch schon alles wunderbar geklappt. Wenn ich jetzt die 
MPCM-Adressierung hinzufüge funktioniert nicht mehr richtig. Egal ob ich 
dem Tiny die richtige Adresse, eine falsche, oder das MPCM ganz weg 
lasse, die Ausgabe-LED spielt verrückt. Ich habe auch leider keine 
Beispiele im WEB/Datenblatt gefunden.

Kann sich bitte jemand mein Beiden Programme ansehen und mir helfen? Ich 
schreibe mit dem AVR Studio.

Gruß Bart

Autor: jonny (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
welche Programme?

Autor: Bart W. (flabig)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ahh.. der Dateinanhang nimmt meine Daten nicht an!

Hier sind sie: http://home.arcor.de/bart.w/Code.rar

Autor: Bart W. (flabig)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, kann den mir wirklich keiner helfen?

Ich hab weiter daran gearbeitet und habe die Code's so eingestellt:

Sender:
-MPCM ein
-9 bit
-sendet TXB8=1 + Adresse im UDR
-und dann TXB8=0 + Daten im UDR  (TXB8 wird immer zuerst geschrieben)

Empfänger:
-MPCM ein
-9 Bit
-RX Complete Interrupt ein
-liest zuerst RXB8 aus und vergleicht es mit 1 (hier bin ich mir aber 
nicht                   sicher ob man das braucht)
-vergleicht dann die Adresse aus UDR
-wenn die Adresse stimmt, wird das MPCM-Bit gelöscht und Daten (TXB8=0) 
können empfangen werden.
-nach dem letzten empfangenen Daten, setze ich das MPCM-bit wieder.

So sollte doch das ganze funktionieren, oder? Ich hab schon alles 
probiert, mit 1 und 2 Stopbit, es funktioniert aber nicht.

Hier sind die zwei aktuellen Code's:

http://home.arcor.de/bart.w/code_2.rar

Gruß Bart

Autor: Bart W. (flabig)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
So, nach endlosen Versuchen, habe ich herausgefunden das ein Tiny2313 
defekt war und doch noch das Geheimnis von MPCM gelöst! (auch wenn ich 
ganz schön viele Versuche fahren musste)

Da ich keine Beipsiel im Netz gefunden habe, setze ich meine 
funktionierenden Codes hier rein.

Die Punkte die man beachten soll sind:

Sender:
- MPCM aus!
- Adresse (bei 9Bit) TXB8 = 1 (+ Adresse im UDR)
- Daten (bei 9Bit) TXB8 = 0 (+ Adresse im UDR)

Empfänger:
- MPCM ein
- bei empfang (z.B. RX-Interrupt) teste ich auf Adresse und schalte 
gegebenfalls MPCM aus
- mit ausgeschaltetem MPCM empfang der Daten
- nach dem letzten Daten-Rahmen, schalte ich MPCM wieder ein.

Beispiele: http://home.arcor.de/bart.w/MPCM.rar

Vielleicht hilft es ja jemand!
Bart

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.