mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Hilfe ATMega8515 programm schreiben


Autor: Bast (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
hallo!
kann mir jemand ein programm für einen ATMega8515 schreiben?
Ich bekomme von einem Programm daten über den rs485 bus und möchte das 
der
mikrocontroller darauf reagiert!
wenn auf dem Bus z.B ein Bit 3 kommt soll der
mikrocontroller einen ausgang auf high schalten

falls mir jemand helfen könnte wäre das super!!!

DANKE

Autor: Magnus M. (magnetus) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bast schrieb:
> wenn auf dem Bus z.B ein Bit 3 kommt

Kannst Du das ein wenig näher erläutern?

Gruß,
Magnetus

Autor: Bast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe eine Alarmanlage da sind die Bits defin. z.B Bit1 unscharf Bit 2 
Scharf Bit 3 Alarm und auf diesen Bit soll der Binärausgang geschaltet 
werden

Autor: Magnus M. (magnetus) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gibts ein Manual zu der Anlage, welches Du evtl. hier posten könntest?

Autor: Bast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Leider nicht, geht auch ein Datenblock bzw. ein Kommando?

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Leider nicht, geht auch ein Datenblock bzw. ein Kommando?

Geht auch ein Auto oder ein Raumschiff?

Autor: Bast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hardware:
RS 485 halbduplex 9600 Baud, 8 Datenbit, 1 Stopbit, keine Parität.
Die Daten werden in ASCII-Hex Format übertragen.

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>RS 485 halbduplex 9600 Baud, 8 Datenbit, 1 Stopbit, keine Parität.
>Die Daten werden in ASCII-Hex Format übertragen.

Dann nimmst du den UART und popelst die ASCII-Hex Daten
zu einem dir passenden Wert zusammen. Wo ist jetzt das Problem?

Autor: beninho (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier mal ein Vorschlag, ist vielleicht nicht alles perfekt.

Du musst die Taktfrequenz Deines Controllers angeben. Das Programm ist 
für einen Mega32, ich hoffe die Registerbezeichnungen unterscheiden sich 
nicht vom 8515. Außerdem wird nicht nur ein einzelner Pin geschaltet, 
sondern ein ganzer Port. Die Feinheiten musst Du selber machen oder Dich 
nochmal melden. Ich hoffe, es sind sonst keine Fehler drin.

Autor: beninho (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zu beachten wäre vllt. auch nocht, dass bei jedem empfangenen Zeichen 
außer der 3 der Port auf Low geschaltet wird. Wie gesagt, um die 
Feinheiten musst Du dich noch kümmern, aber als grobe Hilfe taugts, 
hoffich.

Autor: beninho (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Noch was: Da Du ASCII-Zeichen hast, muss es in der if-Abfrage '3' statt 
3 heißen, oder auf was für ein Zeichen Du halt reagieren willst.

Außerdem taugt das nur zum Empfang von Zeichen und nicht von Strings, 
aber laut Deiner Beschreibung reicht das ja.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
beninho schrieb:
> Noch was: Da Du ASCII-Zeichen hast, muss es in der if-Abfrage '3' statt
> 3 heißen, oder auf was für ein Zeichen Du halt reagieren willst.

Da bin ich mir nicht so sicher.
Siehe
Beitrag "Re: Hilfe ATMega8515 programm schreiben"

Wie das mit RS485 funktioniert hab ich jetzt im Datenblatt auch nicht 
nachgesehen. Aber der receive-enable Pin des Schnittstellenchips will 
mit Sicherheit auch bedient werden :-)

Autor: Bast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Komme mir der anpassung der Feinheiten nicht klar kann es dann nicht 
simulieren, kann mir das bitte noch jemand anpassen?

DANKE

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.