Forum: Mikrocontroller und Digitale Elektronik Kleine Attinys mit Atmega verbinden


von Oliver. A. (Gast)


Lesenswert?

Schönen Tag!

Ich suche nach einer Möglichkeit einen der kleinen attinys. Zb. Attiny13 
mit einem AtMega zu verbinden. Die sollen miteinander kommunizieren, da 
der Attiny13 aber kein Hardware UART hat, fällt das schonmal aus.

Soweit ich weiß hat der Attiny13 garkeine Hardwareseitige möglichkeit zu 
kommunizieren, ist das richtig?
Muss ich also jegliche Kommunikation in Software ausprogrammieren? Ich 
denke UART wäre dabei ungeeignet aufgrund des hohen Programmieraufwands 
( großer Speicherbedarf ) und erhöhte Störanfälligkeit.

Schonmal ein danke an die Profis

Grüße
Oliver

von 2ter Gast (Gast)


Lesenswert?

1) Atmel hat zu einer Software Uart auf einem avr ein pdf. Soweit ich 
mich erinnere; war ein kurzer code und benötigt nur 2 I/Os.

2) Software I2C oder SPI Slave empfinde ich ich als aufwändiger (min. 3 
I/O).

3) Wenn du kannst, nimm ATTinys mit Hardware spi, i2c usw.

von Oliver. A. (Gast)


Lesenswert?

Hallo!

1) Danke, werds mir mal anschauen

2) mehr als 2 I/Os kann ich sowieso ned opfern leider.

3) Attiny13 liegen schon hier, deshalb eher nicht möglich.

Auch an One-Wire habe ich gedacht problem ist aber, dass ich es 
Potentialfrei übertragen möchte, mit Optokopplern und das macht gewisse 
Probleme, da selbige eben nicht bidirektional arbeiten können.

Gruß
Oliver

von avion23 (Gast)


Lesenswert?

Schau dir auch noch den 124-Bus von peter dannegger an.

von Oliver. A. (Gast)


Lesenswert?

Hallo avion!

Den Kenne ich, aber damit habe ich ja auch das Problem des one - wires 
oder? Weil ich eben eine galvanische Trennung per Optokoppler brauche.

Grüße
Oliver

von Sam .. (sam1994)


Lesenswert?

Oliver. A. schrieb:
> Den Kenne ich, aber damit habe ich ja auch das Problem des one - wires
> oder? Weil ich eben eine galvanische Trennung per Optokoppler brauche.

Warum denn das? Wenn beide mit den selben Pegeln arbeiten einfach 
verbinden.

von Oliver. A. (Gast)


Lesenswert?

Hallo!

Ich muss mehrere kleine Attinys zu dem Atmega verbinden, die Attinys 
sind aber auf unterschiedlichem Niveau, also nicht alle auf der selben 
Masse. Aus diesem Grund ist die galvanische Trennung essentiell.

Grüße
Oliver

von Sam .. (sam1994)


Lesenswert?

Deswegen verbindet man auch alle Massen miteinander.

von Peter D. (peda)


Lesenswert?

Oliver. A. schrieb:
> Den Kenne ich, aber damit habe ich ja auch das Problem des one - wires
> oder? Weil ich eben eine galvanische Trennung per Optokoppler brauche.

Der Empfang erfolgt über Pin-Change-Interrupt, also kannst Du nen 
beliebigen anderen Pin nehmen. Es muß nicht der Sendepin sein, kann 
aber.


Peter

von Oliver. A. (Gast)


Lesenswert?

Hallo Peter!

Heißt also, ich kann es genauso auftrennen wie bei UART, Beidseitig 
einen Sende, und einen Empfangspin richtig?

Hat der 124BUS Vorteile gegenüber UART bzw. Nachteile?

Wäre es eventuell Schaltungstechnisch auch möglich über einen I/O Port 
des µC das 124 BUS System galvanisch getrennt zu übertragen.? einfach 2 
Optokoppler geht natürlich nicht, das ist mir klar.

Grüße
Oliver

von Lukas K. (carrotindustries)


Lesenswert?

Oliver. A. schrieb:
> 124BUS Vorteile gegenüber UART

Einer ist, dass die Taktfrequenz von Sender und Empfänger nicht allzu 
genau sein muss.

von Oliver. A. (Gast)


Lesenswert?

Hallo!

Stimmt, zumal ich keine Quarze verwenden möchte.

Hat er auch Nachteile?

Grüße
Oliver

von pegel (Gast)


Lesenswert?

Hier noch etwas zu one-wire:
http://www.atrox.at/1wire/opto/
Komlette Trennung, eine Pin - aber ob ein Quarz nötig ist hängt von der 
Datenrate ab....

von Oliver. A. (Gast)


Lesenswert?

Hallo!

Danke für den Link, sieht auch nicht schlecht aus, interessant wäre es 
hald wies mit der Einfachkeit bzw. Störsicherheit und Nachteile 
aussieht.
Was meint ihr da ? 124Bus oder UART, oder was würd da besser sein?

Grüße
Oliver

von Lehrmann M. (ubimbo)


Lesenswert?

Oliver. A. schrieb:
> Stimmt, zumal ich keine Quarze verwenden möchte.

Das ist eine schlechte Idee ...

Oliver. A. schrieb:
> Hat er auch Nachteile?

- langsam
- störanfällig
- übersteht keinen EMV Test

von Oliver. A. (Gast)


Lesenswert?

Hallo!

Störanfälliger als der UART? Wieso soll der weniger EMV beständig sein 
wie der UART?

Langsamer ist eine Auslegungssache oder? Denn Störungsfreier ist doch 
der 124Bus ( Mit Störungsfrei meine ich jetzt wegen des Timings ) und 
somit kann ich höhere Datenraten verwenden. Oder bin ich komplett am 
falschen weg ?

Grüße
Oliver

von Peter D. (peda)


Lesenswert?

Lehrmann Michael schrieb:
> - langsam
> - störanfällig
> - übersteht keinen EMV Test

Schönes Beispiel für pauschale Aussagen, vollkomen wertlos.


Peter

von Oliver. A. (Gast)


Lesenswert?

Hallo Peter.

Eine Begründung dazu wäre schon immer schon :D

Kannst du mir diese Fragen (Vor/Nachteil) eventuell beantworten ( mit 
Begründung)
wär super!

Danke dir.

Grüße
Oliver

von Peter D. (peda)


Lesenswert?

Oliver. A. schrieb:
> Hallo Peter.
>
> Eine Begründung dazu wäre schon immer schon :D

Ja, die fehlt eben.
Da mußt Du schon den Lehrmann Michael fragen, wie er darauf kommt.

EMV ist hauptsächlich eine Hardwaresache (Schaltplan, Layout). Mit SW 
kann man bestenfalls Störungen abfangen (CRC, Retry, Timeout).


Peter

von Oliver. A. (Gast)


Lesenswert?

Hallo!

Dachte ich mir auch.

Aber Peter was ist deines erachtens besser, und eventuell auch leichter 
zu realisieren?

Grüße
Oliver

von Christian B. (casandro)


Lesenswert?

Wenn die kleinen Controller mit RC-Oszillator laufen kann es sinnvoll 
sein, die Daten über eine Art "Morsecode" zu übertragen. Sprich man 
überträgt kurze und lange Pulse. Mit einer Schleife, oder einem Timer 
kann man die Länge sehr einfach bestimmen, und dann mit Grenzen 
vergleichen. Ganz kurze Pulse ignoriert man, längere sind beispielsweise 
0-en, ganz lange sind zum Beispiel 1-en, und wenn sie noch länger sind, 
so sind das Startbits. (oder ähnlich)

RC-Oszillatoren können durchaus mal 10% "Fehler" haben, eine normale 
serielle Schnittstelle kommt da an ihre Grenzen. Das oben beschriebene 
Verfahren funktioniert auch noch bei deutlich größeren Fehlern. Da man 
auch die Länge der Pulse bestimmt kann man sogar den Frequenzfehler 
bestimmen.

von Lukas K. (carrotindustries)


Lesenswert?

Christian Berger schrieb:
> "Morsecode"
Genau das ist PeDas 124-Code. Wo ist eigentlich der Ursprungsbeitrag 
dazu?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.