Forum: Mikrocontroller und Digitale Elektronik Verbinden zweier Prozessoren


von Malte Struebert (Gast)


Lesenswert?

Hallo,

ich möchte gerne Daten aus dem RAM eines AVRs in einen zweiten kopieren
bzw. die Daten abrufen und durch den zweiten weiter verarbeiten
lassen.

da ich keine RS232 Verbindung herstellen möchte habe ich an SPI
gedacht!

Kann mir jemand vieleicht ein minimal schaltungsbeispiel geben und mir
sagen wie das ganze dann Programmiertechnisch gelöst wird, aus dem
Datenblatt werd ich nämlich nicht so 100%ig schlau.

Das verfahren soll so ablaufen:

Prozessor 1 ermittelt z.b. über einen AD Wandler einen Sensorwert der
im ram an einer bestimmten Adresse abgelegt wird.

Prozessor 2 schickt nun Proz. 1 die nachricht das er gerne den inhalt
von speicheradresse xy haben möchte. daraufhin sendet Proz. 1 den
inhalt an Proz 2 der diese dann wieterverarbeiten kann.

Gruß
Malte.

von Stefan Peter (Gast)


Lesenswert?

Wieso kann denn der 1. Proz nicht auch gleich weiterverarbeiten? Für
mich klingt das doch sehr verschwenderisch....

von Malte Struebert (Gast)


Lesenswert?

Hi,

es geht darum das der 1.. primär mit anderen (wichtigeren) Dingen
beschäftigt ist und der zweite soll eigentlich nur die Sensordaten auf
einem externen Display anzeigen... es macht ja auch keinen Sinn
meterweise Flachbandkabel für das Display zu verlegen, dann doch lieber
einen kleinen Proz. der nur die anzeige übernimmt, zumal der ja auch
optional sein soll... also wenn kein Display dann braucht ja auch der
1. Proz nichts tun...

Gruß
Malte.

von DerDirk (Gast)


Lesenswert?

hallo!

ist gar nicht so wild.du packst einfach an den uart eines jeden
prozessors nen max232 o.ä. und verbindest die beiden,musst dann
natürlich rx/tx tauschen. wenn die strecke nicht ewig weit ist hast du
dann ne bequeme möglichkeit, daten zu schicken.
du teilst dem prozessor mit dem display dann eben nicht den zeiger auf
den ram mit, sondern schickst einfach das datum, welches du ablegst
auch gleich zusätzlich noch per uart an deinen display-prozessor. für
den display prozessor reicht schon nen at90s2313, der kostet nen appel
und nen ei und hat uart.
ich versuche mich grad an etwas ähnlichem, da habe ich mit zwei 2313
zwei terminals, jeweils mit display und drehimpulsgeber. die terminals
sind im endeffekt strohdoof und können nur tastenbedienungen
verschicken und displaydaten empfangen. die zentrale steuerung macht
der große bruder.

gruß


Dirk

von Tommy (Gast)


Lesenswert?

Hallo Dirk.

Nur zur Info - oben steht, dass keine RS232 sprich uart benutzt werden
soll und wenn dann kann man sie direkt verbinden ohne Pegelanpasser wie
MAX232 - den brauchst du nur um den TTL-Pegel (0 und 5V) des
Controllers an die Schnittstelle eines anderen Gerätes (PC; ca -12V und
+12V) anzupassen und das wär in so einem Fall die pure Verschwendung!

Gruß, Tommy

von Jörg Maaßen (Gast)


Lesenswert?

Hallo,

ich denke gerade auch über so etwas nach. Nur mit dem Unterschied, dass
ich es über I2C (TWI) lösen wollte.

Habe aber auch noch kein fertiges Programm.

Gruß Jörg

von Matthias Weißer (Gast)


Lesenswert?

Hi

hab ich erst neulich gemacht. Ein ATMEGA16 ließt aus einem anderen
ATMEGA16 Daten per TWI aus. Der TWI-Master ist in SOftware
implementiert da ich da schon was fertig hatte. der TWI-Slave wird vom
Hardware-Interface abgehandelt. Kein großes Problem.

Matthias

von DerDirk (Gast)


Lesenswert?

@tommy:

hab da wohl nicht genau genug gelesen daher die 232 geschichte erzählt.
kann ja mal passieren...

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.