Hallöchen
Bin gerade dabei mehrere uC ( AtMega64M1 ) über SPI zu vernetzen (
1*Master 3*Slave )
Der Master sendet Daten und die Slaves empfangen diese auch.
Aber die Slave senden keine Daten zurück ( Die Slave senden gar nichts -
laut Oszi )
Wann muss ich die Daten ins Register schreiben damit bei MISO was raus
kommt ?
Hier mein Code
if (SPSR & (1<<SPIF))
{
SendByte = 0x30 + Adresse;
SPDR = SendByte;
RecByte = SPDR;
if (RecByte == 0x85)
{
reagieren .......
}
}
Danke Euch.
mfg
Mandi
Gast
#2050951
Hi Dir ist aber bewusst, das wenn ein Slave etwas senden soll, der Takt vom Master kommen muss? MfG Spess
Hallöchen >>Dir ist aber bewusst, das wenn ein Slave etwas senden soll, der Takt vom >>Master kommen muss? Ja. Ist es nicht so, dass wenn der Slave Daten empfängt - gleichzeitig Daten ausgegeben werden ? mfg Mandi
Hallöchen Keiner da der mir einn Tip geben kann ? hmg Mandi
Gast
#2055887
Du solltest Recht haben mit deiner Annahme. Ich habe die Atmel-Datenblätter jedenfalls bisher so verstanden, dass sobald vom Master Daten und Tackt kommen, Slaves auch Daten rausschreiben. Wenn die Slaves auf einen Befahl vom Master erst Daten senden sollen, ist zu bedenken, dass der Master auch noch "Dummy-Daten" senden muss, um die Antwort des Slaves einzutackten. Evtl. musst du die SPI-Pins auch noch passend als Ein-/Ausgang konfigurieren. Ich meine die sind nicht automaitsch richtig gesetzt. mfg technikadonis
Hallöchen Es wird nix. Ich bring's nicht hin. PIN 1 und 2 MISO_A und MOSI_A PIN 3 SS_A MOSI_A wird automatisch als Input geschaltet MISO_A hab' ich aus Ausgang konfiguriert und sollte automatich Hochohmig werden wenn SS high ist. ich schreibe Daten in Register SPDR. Beim nächsten Daten empfangen sollten diese doch ausgegeben werden ? Hat sowas noch niemand gemacht ? Danke Euch. mfg Mandi
Hallöchen 's läuft. Hab' mal gemessen wieviel Strom fliest wenn ich den Ausgang gegen Masse kurzschliesse. Und es waren 0.14mA - Kann also nur ein PullUp-Widerstand sein. Ich hatte die PIN's korrekt konfiguriert. Aber in der Init-Funktion im Library wurden die Pin's dann falsch konfiguriert :-(. hmg Mandi
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.