AT90CAN: Nur 15x senden und kein Empfang

Gast #2267276
Lesenswert?
• ▲
▼
Hallo Elektronik-Begeisterte,

ich arbeite hier mit einem AT90CAN128 und der CAN-Lib von 
kreatives-chaos.com: 
http://www.kreatives-chaos.com/artikel/universelle-can-bibliothek

Ich habe nun, wie scheinbar auch ein paar andere, das Problem, dass ich 
nur 15x senden kann und überhaupt nichts empfangen.

Eine Ursache für das Problem könnte wohl ein fehlerhafte Verbindung zum 
RXCAN-Pin des AT90CAN128 sein.

Ich habe die beiden Pins am Oszi gemessen (siehe Screenshot; gelb=TXCAN, 
magenta=RXCAN) und dies scheint nicht das Problem zu sein. Ist ist ja 
auch ein ACK zu sehen.

Ich habe auch den entsprechenden Pin PD6 (PXCAN) in einemn kleinen 
Programm erfolgreich auf Zustandsänderungen getestet. Es scheint also 
auch etwas im Controller anzukommen.

Ich betreibe den Controller an 3,3 V und benutze auch einen 3,3 V 
Bustreiber.
Da das senden geht (wenn auch nur 15x), würde ich den 3,3 V Bustreiber 
erstmal als Fehlerursache ausschließen. Die Pegal zwischen AT90CAN und 
dem Bustreiber sehen ja auch gut aus?!

Hat von euch jemand eine Idee wo das Problem liegen könnte?

Gruß
Jakob
Angehängte Dateien:
Gast #2267486
Lesenswert?
• ▲
▼
1
#include <avr/io.h>
2
#include <avr/interrupt.h>
3
#include <stdlib.h>
4
#include <util/delay.h>
5
#include <avr/wdt.h>
6
#include <string.h>
7
#include "can.h"
8

9

10

11
int main (void) {
12

13

14
  can_t msg;
15
  
16
  msg.id = 0x777;
17
  msg.flags.rtr = 0;
18
  
19
  msg.length = 4;
20
  msg.data[0] = 0xde;
21
  msg.data[1] = 0xad;
22
  msg.data[2] = 0xbe;
23
  msg.data[3] = 0xef;
24

25
can_init (BITRATE_250_KBPS);
26
can_disable_filter(0xff);
27
can_set_mode(NORMAL_MODE);
28

29
do{ 
30

31
can_send_message(&msg);
32
_delay_ms(500);
33

34
} while (1); 
35

36
return 0;
37
}

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.