Atmel AVR - Kommunikation

J

Jürgen Schulz

Guest
Hallo Ihr,

Wie stelle ich mit den wenigsten Pinverbrauch und der minimalen Außenbeschaltung
die Kommunikation zwischen 3 AVR's (z.B. AT90S....) her. Was mir bisher
eingefallen ist, wäre ein I˛C-Bus mit angeschlossenen RAM worauf alle 3 ľC
zugreifen. Müßte wohl funktionieren, oder?

Jürgen
 
Am Sun, 21 Dec 2003 13:49:16 +0100 schrieb Jürgen Schulz:
Wie stelle ich mit den wenigsten Pinverbrauch und der minimalen Außenbeschaltung
die Kommunikation zwischen 3 AVR's (z.B. AT90S....) her. Was mir bisher
eingefallen ist, wäre ein I˛C-Bus mit angeschlossenen RAM worauf alle 3 ľC
zugreifen. Müßte wohl funktionieren, oder?
Warum mit Ram? Wenn Du eine Kollisions-Erkennung mit einbaust, kannst Du
den I˛C auch als Multimaster betreiben. Ist zwar glaub ich nicht Standard -
aber wenn nur Deine 3 AVRs miteinander reden, mußt Du Dich ja nicht an den
Standard halten...
Wenn Deine AVRs nebenbei nix anderes machen (bzw. Du Dir beim Timing
richtig Mühe gibst) kannst Du das sogar mit einer Leitung machen. Du kannst
dann die Baud-Rate ja fest vorgeben und brauchst dann die Clock-Leitung
nicht mehr.

gruß
Michael
 
Jürgen Schulz wrote:

Hallo Ihr,

Wie stelle ich mit den wenigsten Pinverbrauch und der minimalen Außenbeschaltung
die Kommunikation zwischen 3 AVR's (z.B. AT90S....) her. Was mir bisher
eingefallen ist, wäre ein I˛C-Bus mit angeschlossenen RAM worauf alle 3 ľC
zugreifen. Müßte wohl funktionieren, oder?

Jürgen

Neben dem I2C, der nicht in allen AVRs drinne ist, bzw. war und der
Lösung über den SPI-Bus, der dazu 4 Leitungen braucht, kannst Du auch
den seriellen Port nehmen. Der ist nämlich ebenfalls Multimaster fähig
und verfügt über ein Adressbyte, was Du für jede AVR getrennt zuordnen
kannst. Damit kämst Du wieder auf 2 Leitungen und mußt im Gegensatz zum
I2C nichts dazuentwickeln.
Siehe Datenblatt der ATmegaXX Serie, Kapitel USART, Multi-processor
Communications Mode.

Die Lösung I2C mit einem Shared-RAM ist ungünstig, weil Du damit wieder
mehrere Master an einem Bus hast, was an sich nicht verboten ist, aber
warum warten bis der eine geschrieben hat, was der andere lesen soll,
wenn er es dem anderen auch direkt sagen kann?

Gruß,

--
Ulrich Prinz
----------------------------------------------------
"But befor you connect, be advised:
you are plugging into the supply from hell."
Datasheet LTC1625, Automotive Considerations, Linear Tech.
 
Jürgen Schulz <schulle.juergen@t-online.de> wrote:
: Hallo Ihr,

: Wie stelle ich mit den wenigsten Pinverbrauch und der minimalen
: Außenbeschaltung
: die Kommunikation zwischen 3 AVR's (z.B. AT90S....) her. Was mir bisher
: eingefallen ist, wäre ein I˛C-Bus mit angeschlossenen RAM worauf alle 3 ľC
: zugreifen. Müßte wohl funktionieren, oder?

Les Dir mal im Datenblatt die Beschreibung des SPI Interfaces durch.
Da ist explizit die Kommunikation mehrerer Prozessoren miteinander
beschrieben.

Bye

--
Uwe Bonnes bon@elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik Schlossgartenstrasse 9 64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------
 
On Sun, 21 Dec 2003 13:49:16 +0100, =?iso-8859-1?Q?J=FCrgen_Schulz?= <schulle.juergen@t-online.de> wrote:
Hallo Ihr,

Wie stelle ich mit den wenigsten Pinverbrauch und der minimalen Außenbeschaltung
die Kommunikation zwischen 3 AVR's (z.B. AT90S....) her. Was mir bisher
eingefallen ist, wäre ein I˛C-Bus mit angeschlossenen RAM worauf alle 3 ľC
zugreifen. Müßte wohl funktionieren, oder?
Wie wärs mit IIC und einem Master und zwei Slaves?

Thiemo
 
In article <1104_1073033319@pc58>,
Stadtler <DerStadtler@gmx.de> writes:
On Sun, 21 Dec 2003 13:49:16 +0100, =?iso-8859-1?Q?J=FCrgen_Schulz?= <schulle.juergen@t-online.de> wrote:
Hallo Ihr,

Wie stelle ich mit den wenigsten Pinverbrauch und der minimalen Außenbeschaltung
die Kommunikation zwischen 3 AVR's (z.B. AT90S....) her. Was mir bisher
eingefallen ist, wäre ein I˛C-Bus mit angeschlossenen RAM worauf alle 3 ľC
zugreifen. Müßte wohl funktionieren, oder?

Wie wärs mit IIC und einem Master und zwei Slaves?
Wenn OP nicht einen von den zwergen verwendet geht spi mit 2 slaves sehr gut.
Die kleinen können das leider nur per softemulation.
Das währe aber immer noch besser als IIC weil die START/STOPerkennung mahr
Rechenleistung als alles vergleichbere verbraucht.

--
MFG Gernot
 

Welcome to EDABoard.com

Sponsor

Back
Top