www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PIC SD Card Initialisierung


Autor: Martin Domke (eric_arthur_blair)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

In der Initialisierungsphase der SD-Karte darf nach Spezifikation
maximal eine SCL-Frequenz von 400 kHz verwendet werden. Ich arbeite mit
einem PIC18F6680 und einem externen 10 MHz Quartz. Desweiteren verwende
ich den HS-PLL-Modus, bei dem die Oszillator-Frequenz durch einen PLL
vervierfacht wird. Die effektive Systemfrequenz Fosc ist also 40 MHz.
Wenn ich nun den größtmöglichen Prescaler für das MSSP-Modul (64)
wähle, bekomme ich für die SCL-Frequenz 40MHz/64 = 625 kHz. Kennt
jemand von euch einen eleganteren Weg dieses Problem zu umschiffen, als
die Systemfrequenz erst nach der SD-Karten-Initialisierung in den
HS-PLL-Modus zu versetzen?

Gruß,

Martin

Autor: Martin Domke (eric_arthur_blair)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok. Zwei Lösungsvorschläge:

1. Man verwendet statt dem HS-PLL-Modus, in dem die Systemfrequenz
statisch durch den PLL vervierfacht wird den HS-SPLL-Modus, in dem man
den PLL in Software an- und abschalten kann. Weiß ich nicht, ob ich das
so gut finde, weil man dort wiederum die Übergangszeiten bei der
Frequenzumschaltung beachten muss.

2. Man verwendet Timer2 als Clock-Input für das MSSP-Modul. Wenn ich
das alles richtig verstehe, dann bekommt der Timer2 Fosc/4 als Input,
kann dann einen Prescaler von 1,4 oder 16 bemühen und leitet seinen
Output geteilt durch zwei an das MSSP-Modul weiter. Also wäre dann

Fscl = 40 MHz / (4  16  2) = 312,5 kHz .

Kann das jemand bestätigen?

Autor: Martin Domke (eric_arthur_blair)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da ich mich hier ja schon prima alleine unterhalte noch eine Frage, die
ich dann vielleicht in zwanzig Minuten wieder selber beantworte:

Um mit dem Timer2 für die Shift-Clock des MSSP-Moduls eine genaue
Frequenz einstellen zu können muss man die Menge der Clock Cycles
wissen, die der Timer zum inkrementieren des Zählers und vergleichen
der Werte benötigt. Weiß da jemand irgendwelche Angaben?

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.