AT91SAM7X CAN und Clock

OP #1397255
Lesenswert?
• ▲
▼
Hallo Leute,

ich habe folgendes Problem. Und zwar benutze ich einen AT91SAM7X mit 
einem Oszillator von 18,432 MHz und möchte damit eine CAN-Schnittstelle 
auf 10kBaud betreiben. Als Masterclock habe ich ungefähr 48MHz und kann 
damit auch ohne Probleme eine CAN-Baudrate von 50kBaud fahren aber 
tiefer komme ich damit nicht.

Zuerst dachte ich der CAN-Transceiver TJA1050 wäre das Problem aber wie 
sich auch nach einer Diskussion hier im Forum herausgestellt hat, liegt 
es wohl am Register des Vorteilers zur Berechnung der Baudrate. D.h. das 
Register ist nur 7Bit breit und wenn ich halt so eine kleine Baudrate 
berechnen will, dann wird der Vorteiler zu groß und das Register läuft 
über.

Jetzt habe ich bereits mit einem Beispielprojekt von Atmel mal etwas 
rumexperimentiert und den Masterclock mal auf 24MHz runter gesetzt und 
komme so auf eine Baudrate von 20kBaud für CAN. Da lag die Idee nahe den 
Masterclock weiter runter zu setzen um so auf 10kbaud für CAN zu kommen. 
Funktioniert so leider nicht, da ich mir dann den Rest der Applikation 
zerschieße und z.B. die serielle Schnittstelle nicht mehr funktioniert.

Hat jemand von euch eine Idee oder kennt die Lösung für mein Problem??? 
Also das optimale wäre, wenn man zur Baudratenberechnung nicht zwingend 
auf den Masterclock angewiesen wäre sondern das über einen anderen Clock 
gehen würde. Zum Einen damit der Controller mit der schnellstmöglichen 
Taktrate laufen kann und zum anderen ich keine Änderungen am Rest der 
Applikation vornehmen muss und trotzdem eine CAN-Baudrate von 10kbaud 
fahren kann. Ich habe im Datenblatt schon gesehen, dass es mehrere 
Clocks bei dem AT91 gibt aber hatte leider noch nicht die Zeit mich 
damit intensiv zu beschäftigen. Und wenn von euch jemand schon mal einen 
Ansatzpunkt für mich hätte auf den ich mich dann konzentrieren kann, 
dann wäre ich euch sehr dankbar.

Ich hoffe auf baldige Tips.....

Gruss
Rafael

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.