AT90CAN128 SPI Datenübertragung

OP #3280209
Lesenswert?
• ▲
▼
Hallo,

ich bin neu im Forum und frisch in das Thema Mikrocontroller 
eingestiegen.

Derzeit hänge ich an einem kleinen Problem mit der SPI Verbinung 
zwischen dem Raspberry Pi(Master) und einem AT90CAN128(Slave):

Der AT90CAN empfängt mit dem angehängten Quellcode zwar alle Daten (LED 
macht blinkiblinki) aber beim Raspberry kommen keine Daten an (nur [0]).

Die SPI Schnittstelle für den Raspberry habe ich wie auf 
http://www.100randomtasks.com/simple-spi-on-raspberry-pi
beschrieben eingerichtet und programmiert.

Liegt der Fehler hier am Quellcode oder sollte mich ehr meiner 
Verkabelung widmen-*9?

1
#define F_CPU 16000000L
2

3
#include <avr/io.h>
4
#include <avr/interrupt.h>
5
#include <avr/signal.h>
6

7
volatile unsigned char data;
8

9
SIGNAL (SIG_SPI) {
10
  data = SPDR;
11
  PORTB |= (1<<7);
12
  if (data >= 0x31)  PORTB |= (1<<7);      //LEDs aus
13
  if (data == 0x00)  PORTB &= ~(1<<7);      //LEDs an
14
  SPDR = 0x34;
15
}  
16

17
int main(void)
18
{
19
  DDRB |= (1<<7);  
20
  DDRB |= (1<<4);
21
  SPCR = (1<<SPE) | (1<<SPIE);
22
  SPDR = 0x00;
23
  PORTB &= ~(1<<7);
24
  sei();
25
  
26
    while(1)
27
    {
28

29
    }
30
  return 0;
31
}

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.