www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AT91SAM7X CAN und Clock


Autor: Rafael L. (excalibur)
Datum:

Bewertung
0 lesenswert
nicht 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

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.