SDCard, SPI, ATMega - Geschwindigkeit

OP #2682852
Lesenswert?
• ▲
▼
Hi,

ich habe gestern meine Schaltung mit einer SD-Card an einem ATMega1284P 
fertig gestellt. Ich setze als Software aktuell die Software von 
http://www.roland-riegel.de/sd-reader/ ein. Ich habe mal mithilfe des 
TCNT0 (Vorteiler 8) die Ausführungsgeschwindigkeit gemessen, 10MB in 
512Byte Blöcken von der SD-Card zu lesen (CMD_READ_SINGLE_BLOCK). Also 
raw - ohne FAT. Die CPU läuft mit 18.432MHz.
Ich komme auf eine Lesegeschwindigkeit von 271,69 KB/Sek.

Ist das in etwa so das was man erreichen kann, oder geht noch wesentlich 
mehr? Der Code ist recht modular aufgebaut was sicherlich auch zu Lasten 
der Performance geht. Was erreicht Ihr so mit Eurem ATMega bei ungefähr 
gleicher Taktfrequenz?
OP #2682895
Lesenswert?
• ▲
▼
Ich hatte in der Vergangenheit auch meine eine Seite im Netz gefunden, 
wo jemand mit dem LA und den compilierten C Quellen seines Programmes 
die Abarbeitung auf dem SPI Bus untersucht hat, und dann den C-Code so 
umgestellt hat, das der Compiler Assembler Code erzeugt hat welcher 
wesentlich performanter in der SPI-Kommunikation war (die Schleifen 
anders angeordnet usw usw....) Leider finde ich die Seite nur nicht mehr 
:(

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.