Kommunikationsproblem zwischen ATMega32 und MCP2515 ueber ISP

Gast #2312184
Lesenswert?

Hallo Leute,

hab da ein Problem. Ich moechte eine CAN Bus mit einem AT90CAN128 und 
einen ATMega32 aufbauen. Dazu habe ich den ATMega32 mit einem CAN 
Controller MCP2515 und diesen Controller mit einem MCP2551 verbunden.
Den Bus an sich habe ich noch nicht aufgebaut, da ich erstmal den 
MCP2515 initialisieren will. Dieser ist ueber ISP mit meinem ATMega32 
verbunden.
Nach der Initialisierung lese ich in der Endlosschleife ein Register 
aus, da ich ueberpruefen moechte ob die Initialsierung erfolgreich war 
oder nicht. Leider bekomm ich aber immer nur 0x00 fuer den 
Registerinhalt CNF3,
was aber gar nicht sein kann.
Meiner Meinung nach stimmt irgendetwas mit dem SPI-Interface nicht.
Ich habe aus diesem Grund auch mal einen Pin des MCP2515 als Ausgang 
konfiguriert und mal ne LED drangehaengt um zu ueberpruefen, ob der 
MCP2515 initialisiert wurde. Leider ebenfalls ohne erfolg.

Hat jemand eine Idee was ich falsch mache?

Den Quellcode habe ich mal im Anhang angehaengt.

Gruss
Johannes
Angehängte Dateien:
Gast #2312465
Lesenswert?

Also ich bin etwas weiter gekommen. Mittlerweile bekomm ich die SPI 
Kommunikation wieder hin. (Sehe au grad das ich oben mal ISP geschrieben 
hab, sorry)

Ursache war, das ich den Vss Pin des MCP2515 auf Masse gelegt hatte. 
Ohne diese Verbindung funktioniert es. Nun frage ich mich aber warum, 
denn laut Datenblatt steht fuer diesen Pin:
Ground reference for logic and I/O pins

ausserdem habe ich in den CAN tutorial gesehen, dass er diesen Pin 
ebenfalls auf Ground gelegt hat.
Jemand ne Idee was nun richtig ist?

Gruss
Johannes

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren