{"id":225,"date":"2017-11-23T00:00:53","date_gmt":"2017-11-22T23:00:53","guid":{"rendered":"http:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=225"},"modified":"2023-03-04T23:39:24","modified_gmt":"2023-03-04T22:39:24","slug":"13-fatfs_sdio-library-stm32f4","status":"publish","type":"page","link":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=225","title":{"rendered":"13-FATFS_SDIO-Library (STM32F4)"},"content":{"rendered":"<p><div id=\"nav-below\" class=\"navigation\"><div class=\"nav-previous\"><a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=223\" title=\"12-UART-Library (STM32F4)\"><span class=\"meta-nav\">\u2190<\/span> 12-UART-Library (STM32F4)<\/a><\/div><\/div><!-- #nav-below --><div id=\"nav-below\" class=\"navigation\"><div class=\"nav-next\"><a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=227\" title=\"14-ADC_DMA-Mode (STM32F4)\">14-ADC_DMA-Mode (STM32F4) <span class=\"meta-nav\">&rarr;<\/span><\/a><\/div><\/div><!-- #nav-below --><\/p>\n<p>-mit dieser Library k\u00f6nnen SD-Karten mit einem FAT-Dateisystem per SDIO-Schnittstelle und DMA vom STM32F4 verwaltet werden.<br \/>\nHinweis : es gibt noch eine Library f\u00fcr USB-Sticks per FATFS (<a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=383\">Nr. 32<\/a>) und eine kombinierte Library SD+USB (<a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=519\">Nr. 87<\/a>)<\/p>\n<p>-ich hab die OpenSource-Lib (FATFS) eingebunden und die freien Quellcodes von STM f\u00fcr die SDIO-Funktionen benutzt.<\/p>\n<p>-die FATFS-Lib hat eine sehr gute englische Doku dabei in der alle Funktionen und die notwendigen Parameter beschrieben sind.<\/p>\n<p>-Ich hab in der dar\u00fcberliegenden Schicht ein paar Grundfunktionen zusammengestellt um ein Medium zu mounten, ein File zu \u00f6ffnen\/schlie\u00dfen und um Strings in das File zu schreiben bzw. aus dem File zu lesen. Mit dem BlockRead k\u00f6nnen Files Byteweise gelesen werden und mit BlockWrite kann ein Block Byteweise geschrieben werden.<\/p>\n<p>-Die Geschwindigkeit beim BlockRead liegt bei ca. 2,4MByte\/sec bei einem Puffer von 512 Bytes, beim BlockWrite liegt meine Karte bei ca. 500kByte\/sec.<\/p>\n<p>Ab Version 1.4 kann im File \u201cstm32_ub_sdcard.h\u201d der SDIO-Mode von 4bit auf 1bit umgestellt werden. Und falls kein Detect-Pin vorhanden ist, kann dieser hier abgeschaltet werden.<\/p>\n<p><strong>BUG HINWEIS :\u00a0<\/strong>Torsten S. aus dem Mikrocontroller-Forum hat mich auf einen Fehler hingewiesen der mit der FATFS-Funktion \u201cf_write\u201d (und vermutlich auch \u201cf_read\u201d) zu tun hat. Wenn dieser Funktion ein File \u00fcbergeben wird das gr\u00f6\u00dfer als 512 Bytes ist, kommt es zu einem Fehler und die Datei wird nicht richtig auf die SD-Karte geschrieben\/gelesen. Meine Funktionen \u201cWriteBlock\/ReadBlock\u201d lassen einen gr\u00f6\u00dferen Wert als 512 gar nicht zu also gibt es hier keinen Handlungsbedarf. Ihr solltet nur sicherstellen das, wenn ihr \u201cf_write\u201d direkt nutzt, daran denkt.<\/p>\n<p><strong>M\u00f6gliche Hardwarefehler (possible Hardware BUGs) :<\/strong><\/p>\n<p>viele berichten \u00fcber Probleme mit der SD-Karten Library aber nur wenige berichten (nach gefundener L\u00f6sung) was genau der Fehler war. Aus dem Grund hier eine Liste mit den h\u00e4ufigsten Fehlern die ich zu lesen bekomme. Bei einem Problem bitte alle Punkte pr\u00fcfen :<\/p>\n<pre>1. Wackelkontakt an den Leitungen (loose connection)\r\n2. Kurzschl\u00fcsse zwischen Pins (short circuit)\r\n3. Falsche Verdrahtung (wrong wiring)\r\n4. Defekter SD-Karten Adapter (faulty SD-Card adapter)\r\n5. SD-Karte mit falschem Filformat (wrong file system)\r\n6. SD-Karte wird nicht unterst\u00fctzt (unsuported SD-Card)\r\n7. Leitungen zu lange (too long wires)\r\n8. PullUps an den Leitungen (PullUp resistors)<\/pre>\n<p><strong>Beispielbild :<\/strong><\/p>\n<div id=\"gallery-1\" class=\"gallery galleryid-621 gallery-columns-2 gallery-size-thumbnail\">\n<dl class=\"gallery-item\">\n<dt class=\"gallery-icon\"><a title=\"sdio\" href=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2014\/05\/sdio.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-thumbnail\" src=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2014\/05\/sdio-150x150.jpg\" alt=\"Schaltplan f\u00fcr SD-Karte\" width=\"150\" height=\"150\" \/><\/a><\/dt>\n<dd class=\"wp-caption-text gallery-caption\">Schaltplan f\u00fcr SD-Karte<\/dd>\n<\/dl>\n<dl class=\"gallery-item\">\n<dt class=\"gallery-icon\"><a title=\"fatfs\" href=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/03\/fatfs.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-thumbnail\" src=\"http:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2013\/03\/fatfs-150x150.jpg\" alt=\"Inhalt einer SD-Karte\" width=\"150\" height=\"150\" \/><\/a><\/dt>\n<dd class=\"wp-caption-text gallery-caption\">Inhalt einer SD-Karte<\/dd>\n<\/dl>\n<p>&nbsp;<\/p>\n<\/div>\n<p><strong>Benutzte Pins und DMAs :<\/strong><\/p>\n<pre>1bit-Mode :\r\nPC8  : SDIO_D0  = SD-Karte DAT0\r\nPC12 : SDIO_CK  = SD-Karte Clock\r\nPD2  : SDIO_CMD = SD-Karte CMD\r\nHinweis : SD-Karte Pin CD muss an Vcc angeschlossen werden !!\r\n\r\n4bit-Mode :\r\nPC8  : SDIO_D0  = SD-Karte DAT0\r\nPC9  : SDIO_D1  = SD-Karte DAT1\r\nPC10 : SDIO_D2  = SD-Karte DAT2\r\nPC11 : SDIO_D3  = SD-Karte DAT3\/CD\r\nPC12 : SDIO_CK  = SD-Karte Clock\r\nPD2  : SDIO_CMD = SD-Karte CMD\r\n\r\nmit Detect-Pin :\r\nPC0  : SD_Detect-Pin (Hi=ohne SD-Karte)\r\n\r\nentweder  DMA2_STREAM3_CHANNEL4\r\noder      DMA2_STREAM6_CHANNEL4<\/pre>\n<p><strong><strong>Voraussetzungen :<\/strong><\/strong><\/p>\n<pre>Benutzte Module der CooCox-IDE : GPIO, MISC, SDIO, DMA\r\nBenutzte Librarys : FATFS (mehrere Files)<\/pre>\n<p><strong>Enumerationen :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">typedef enum {\r\n  FATFS_OK =0,\r\n  FATFS_NO_MEDIA,\r\n  FATFS_MOUNT_ERR,\r\n  FATFS_GETFREE_ERR,\r\n  FATFS_UNLINK_ERR,\r\n  FATFS_OPEN_ERR,\r\n  FATFS_CLOSE_ERR,\r\n  FATFS_PUTS_ERR,\r\n  FATFS_SEEK_ERR,\r\n  FATFS_RD_STRING_ERR,\r\n  FATFS_RD_BLOCK_ERR,\r\n  FATFS_WR_BLOCK_ERR,\r\n  FATFS_EOF,\r\n  FATFS_DISK_FULL\r\n}FATFS_t;<\/pre>\n<p><strong>.<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">typedef enum {\r\n  F_RD =0,    \/\/ zum lesen oeffnen (nur falls File existiert)\r\n  F_WR,       \/\/ zum schreiben oeffnen (nur falls File existiert) und Daten anh\u00e4ngen\r\n  F_WR_NEW,   \/\/ zum schreiben oeffnen (und event. neu anlegen) und Daten anh\u00e4ngen\r\n  F_WR_CLEAR  \/\/ zum schreiben oeffnen (alte Daten loeschen)\r\n}FMODE_t;<\/pre>\n<p><strong>Funktionen :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">void UB_Fatfs_Init(void);                                            \/\/ init der FATFS-Funktionen\r\nFATFS_t UB_Fatfs_CheckMedia(MEDIA_t dev);                            \/\/ check ob Medium eingelegt\r\nFATFS_t UB_Fatfs_Mount(MEDIA_t dev);                                 \/\/ um das Medium zu \u00f6ffnen\r\nFATFS_t UB_Fatfs_UnMount(MEDIA_t dev);                               \/\/ um das Medium zu schlie\u00dfen\r\nFATFS_t UB_Fatfs_DelFile(const TCHAR* name);                         \/\/ l\u00f6scht ein File\r\nFATFS_t UB_Fatfs_OpenFile(FIL* fp, const TCHAR* name, FMODE_t mode); \/\/ zum \u00f6ffnen eines Files (zum lesen oder schreiben)\r\nFATFS_t UB_Fatfs_CloseFile(FIL* fp);                                 \/\/ schlie\u00dft ein File\r\nFATFS_t UB_Fatfs_WriteString(FIL* fp, const TCHAR* text);            \/\/ schreibt einen String in ein offenes File\r\nFATFS_t UB_Fatfs_ReadString(FIL* fp, char* text, int len);           \/\/ lie\u00dft einen String aus einem offenen File\r\nuint32_t UB_Fatfs_FileSize(FIL* fp);                                 \/\/ Gr\u00f6\u00dfe vom File auslesen\r\nFATFS_t UB_Fatfs_ReadBlock(FIL* fp, unsigned char* buf, uint32_t len, uint32_t* read);   \/\/ File Byteweise auslesen\r\nFATFS_t UB_Fatfs_WriteBlock(FIL* fp, unsigned char* buf, uint32_t len, uint32_t* write); \/\/ File Byteweise schreiben<\/pre>\n<p><strong>Beispiel :<\/strong><\/p>\n<pre lang=\"c\" line=\"1\">\/\/--------------------------------------------------------------\r\n\/\/ File     : main.c\r\n\/\/ Datum    : 06.04.2013\r\n\/\/ Version  : 1.1\r\n\/\/ Autor    : UB\r\n\/\/ EMail    : mc-4u(@)t-online.de\r\n\/\/ Web      : www.mikrocontroller-4u.de\r\n\/\/ CPU      : STM32F4\r\n\/\/ IDE      : CooCox CoIDE 1.7.0\r\n\/\/ Module   : CMSIS_BOOT, M4_CMSIS_CORE\r\n\/\/ Funktion : Demo der FATFS-SDIO-Library\r\n\/\/ Hinweis  : Diese zwei Files muessen auf 8MHz stehen\r\n\/\/              &amp;quot;cmsis_boot\/stm32f4xx.h&amp;quot;\r\n\/\/              &amp;quot;cmsis_boot\/system_stm32f4xx.c&amp;quot;\r\n\/\/--------------------------------------------------------------\r\n\r\n#include &amp;quot;main.h&amp;quot;\r\n#include &amp;quot;stm32_ub_fatfs.h&amp;quot;\r\n\r\nint main(void)\r\n{\r\n  FIL myFile;   \/\/ Filehandler\r\n\r\n  SystemInit(); \/\/ Quarz Einstellungen aktivieren\r\n\r\n  \/\/ Init vom FATFS-System\r\n  UB_Fatfs_Init();\r\n\r\n  \/\/ Check ob Medium eingelegt ist\r\n  if(UB_Fatfs_CheckMedia(MMC_0)==FATFS_OK) {\r\n    \/\/ Media mounten\r\n    if(UB_Fatfs_Mount(MMC_0)==FATFS_OK) {\r\n      \/\/ File zum schreiben im root neu anlegen\r\n      if(UB_Fatfs_OpenFile(&amp;amp;myFile, &amp;quot;0:\/UB_File.txt&amp;quot;, F_WR_CLEAR)==FATFS_OK) {\r\n    \t\/\/ ein paar Textzeilen in das File schreiben\r\n        UB_Fatfs_WriteString(&amp;amp;myFile,&amp;quot;Test der WriteString-Funktion&amp;quot;);\r\n        UB_Fatfs_WriteString(&amp;amp;myFile,&amp;quot;hier Zeile zwei&amp;quot;);\r\n        UB_Fatfs_WriteString(&amp;amp;myFile,&amp;quot;ENDE&amp;quot;);\r\n        \/\/ File schliessen\r\n        UB_Fatfs_CloseFile(&amp;amp;myFile);\r\n      }\r\n      \/\/ Media unmounten\r\n      UB_Fatfs_UnMount(MMC_0);\r\n    }\r\n  }\r\n\r\n  while(1)\r\n  {\r\n\r\n  }\r\n}\r\n<\/pre>\n<p>Hier die Library zum\u00a0<strong>Download :<\/strong><\/p>\n<p><a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2014\/05\/ub_stm32f4_fatfs_sdio_v104.zip\">ub_stm32f4_fatfs_sdio_v104<\/a><\/p>\n<p>hier eine \u201cTestversion\u201d mit aktiviertem Multi-Block read\/write :<\/p>\n<p><a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2014\/09\/ub_stm32f4_fatfs_sdio_v105a.zip\">ub_stm32f4_fatfs_sdio_v105a<\/a><\/p>\n<p>Hier der komplette CooCox-Projektordner zum\u00a0<strong>Download :<\/strong><\/p>\n<p><a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/wp-content\/uploads\/2014\/05\/Demo_13_FATFS_SDIO.zip\">Demo_13_FATFS_SDIO<\/a><\/p>\n<h3 id=\"comments-title\">111 Antworten auf <em>13-FATFS_SDIO-Library (STM32F4)<\/em><\/h3>\n<ol class=\"commentlist\">\n<li id=\"li-comment-13\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-13\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/ee3a57a18bc122b090e75ce573e39621?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Major<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">3. April 2013 um 19:46<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo,<\/p>\n<p>finde ich super deine Libs!<\/p>\n<p>Ich hatte ein paar Probleme am Anfang, da es immer ein SD_DATA_CRC_FAIL gab, was wahrscheinlich an den Erratas des Mikrocontrollers lag, da ich die Revision A benutze. Es wirde immer ein CRC Fail generiert, wenn die Antwort der Karte keine CRC Summe beinhaltet. Dadurch konnte die Karte nicht gemountet werden und das Ergebniss war ein FATFS_GETFREE_ERR Fehler. Was geholfen hat, war das Auskommentieren dieser Zeile:<br \/>\nTransferError = SD_DATA_CRC_FAIL;<br \/>\nin der Funktion SD_ProcessIRQSrc(void).<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-14\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-14\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">3. April 2013 um 21:47<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>uhh\u2026.bei dem Fehler h\u00e4tte ich auch erstmal suchen m\u00fcssen. Wei\u00df gar nicht genau was ich f\u00fcr einen Chip-Typ habe. Ich werde das als Bemerkung in der n\u00e4chsten Version mit einf\u00fcgen.<\/p>\n<p>Danke f\u00fcr den Hinweis, das wird anderen vlt auch helfen. Gruss<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-60\" class=\"comment even thread-odd thread-alt depth-1\">\n<div id=\"comment-60\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/b72b46a2ea09447b6dbce632daace9d9?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Ray<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">24. April 2013 um 22:34<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>klingt interessant \u2013 wie gro\u00df war denn die Datei zum ermitteln der \u00dcbertragungsgeschwindigkeit?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-61\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-61\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">25. April 2013 um 08:47<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>ich hab aus dem Netz Testfiles mit 1k bis 10MByte runtergeladen. Der Datendurchsatz ist mit den gr\u00f6\u00dferen Files am besten. Beim schreibtest hab ich einfach einen 512Byte Block 2048mal in ein File geschrieben und die Zeit daf\u00fcr per Timer gemessen.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-266\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-266\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/f47845cfce205a858ddeb20faeea402b?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">ANVIEX<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">25. Mai 2013 um 20:26<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Datei stm32_ub_fatfs.h sollte mit __cplusplus Declaration erg\u00e4nzt. Damit Libs auch zusammen mit OOP C++ Project verwendet werden kann. Sonst h\u00e4ngt Libs auf bein Aufruf von der Funktion UB_Fatfs_Mount(MMC_0).<\/p>\n<p>#ifdef __cplusplus<br \/>\nextern \u201cC\u201d {<br \/>\n#endif<\/p>\n<p>\u2026<\/p>\n<p>#ifdef __cplusplus<br \/>\n}<br \/>\n#endif<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-269\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-269\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">26. Mai 2013 um 12:45<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>ich habe in meinen Librarys absichtlich keine Defines wie \u201c_cplusplus\u201d oder \u201c_AVR\u201d oder \u201c_PIC\u201d drinn. Weil ich nicht alle Systeme testen kann und will.<br \/>\nGruss Uwe<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-727\" class=\"comment even thread-odd thread-alt depth-1\">\n<div id=\"comment-727\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/b894d67379dd0647dd316009f47155d2?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Joerg<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">26. August 2013 um 23:35<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo Uwe,<br \/>\nich habe Probleme die Micro SD Karte zu mounten. Kann es an der Karte oder vielleicht auch an der Toolchain liegen? In deinem Tutorial zu CoIde wird ja noch eine Version vom letzten Jahr benutzt. Ich bin f\u00fcr jeden Tip dankbar.<\/p>\n<p>Gr\u00fc\u00dfe<\/p>\n<p>J\u00f6rg<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-728\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-728\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">27. August 2013 um 09:33<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hi J\u00f6rg, welche Hardware benutzt du ? (falls STM32F4 Discovery-Board) kannst du das compilierte File aus dem Ordner \u201cDemo_13\/Debug\/Bin\u201d benutzen. Dieses muss funktionieren. Ansonsten poste mal die R\u00fcckgabewerte der \u201cInit\u201d , \u201cCheckMedia\u201d und \u201cMount\u201d. Event. funktioniert der SD-Detect Pin nicht.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-729\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-729\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/b894d67379dd0647dd316009f47155d2?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Joerg<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">27. August 2013 um 12:56<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo Uwe,<br \/>\ndas R\u00e4tsel ist gel\u00f6st. Ich hatte einen Kurzschluss von D0 zu GND\u2026. Ich h\u00e4tte das besser gleich mal durch gemessen. Anstatt nur die einzelnen Verbindungen zu pr\u00fcfen\u2026<\/p>\n<p>Vielen Dank f\u00fcr deine schnelle Hilfe. Deine Seite hier ist echt super.<\/p>\n<p>J\u00f6rg<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-940\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-940\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/0683bae887fe075c6bce6340decc39a7?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Jimmy<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">5. November 2013 um 16:10<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hello Uwe,<\/p>\n<p>thanks for the Library. It is great, but I have a question.<\/p>\n<p>I\u2019m using CooCox and STM32F4 Discovery Kit connected to SD card reader and 2Gb SD card. When I try to write to the card I find out it gives me a SD_COM_CRC_FAILED(stm32_ub_sdcard\/SD_SelectDeselect\/CmdResp1Error\u2026)<\/p>\n<p>Do you have any idea why?<\/p>\n<p>Thanks a lot,<\/p>\n<p>Jimmy<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-944\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-944\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">5. November 2013 um 20:43<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>another user had a similar problem, please open the file \u201cstm32_ub_sdcard.h\u201d and change the define to \u201cRevision A\u201d<\/p>\n<pre lang=\"c\" line=\"1\">#define SDIO_STM32F4_REV     0  \/\/ 0 = Revision A\r\n\/\/#define SDIO_STM32F4_REV     1  \/\/ 1 = Revision Z\r\n<\/pre>\n<p>leave a comment when its working<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-957\" class=\"comment odd alt depth-3\">\n<div id=\"comment-957\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/0683bae887fe075c6bce6340decc39a7?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Jimmy<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">6. November 2013 um 15:21<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Thanks for advice, but there should be no problem. I tried to be more precise and I tracked the error to CmdResp7Error(UB_Fatfs_Mount-f_getfree-chk_mounted-disk_initialize-MMC_disk_initialize-SD_Init-SD_PowerON-CmdResp7Error)<\/p>\n<p>To this if statement:<\/p>\n<pre lang=\"c\" line=\"1\">if ((timeout == 0) || (status &amp; SDIO_FLAG_CTIMEOUT))\r\n{\r\n\/*!&lt; Card is not V2.0 complient or card does not support the set voltage range *\/\r\nerrorstatus = SD_CMD_RSP_TIMEOUT;\r\nSDIO_ClearFlag(SDIO_FLAG_CTIMEOUT);\r\nreturn(errorstatus);\r\n}\r\n<\/pre>\n<p>Do you have any idea what can cause this error? I&#8217;m using SanDisk SD 2GB, formated to Fat32, unit size 512 bytes.<\/p>\n<p>Thanks a lot,<\/p>\n<p>Jimmy<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-960\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-4\">\n<div id=\"comment-960\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">6. November 2013 um 15:49<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>theres a BUG in Revision-A CPUs around the CRC-Check. First, switch the define to verify thats not the same problem with your CPU. Second, try FAT16 or another card. Last, take a USB-Device <img decoding=\"async\" class=\"wp-smiley\" src=\"wp-includes\/images\/smilies\/icon_smile.gif\" alt=\":-)\" \/><\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-966\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-966\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/0683bae887fe075c6bce6340decc39a7?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Jimmy<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">6. November 2013 um 17:26<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>I\u2019m going to go through this. One more thing, is there any difference between 1b and 4b wide transfer? I built up an interface for 4b, but initialization is done in 1b mode.<\/p>\n<p>My interface STM32F4 Discovery \u2013 SD card slot:<br \/>\nPC8(D0) \u2013 pin 7<br \/>\nPC9(D1) \u2013 pin 8<br \/>\nPC10(D2) -pin 9<br \/>\nPC11(D3) \u2013 pin 1<br \/>\nPC12(CLK) \u2013 pin 5<br \/>\nPD2(CMD) \u2013 pin 2<br \/>\n3V(VDD) \u2013 pin 4<br \/>\nGND(VSS) \u2013 pins 3 and 6<br \/>\nPD0(CARD DETECT) \u2013 detection pin<\/p>\n<p>+ The D0, D1, D2, D3 and CMD pins have 47K pull up resistors<\/p>\n<p>Thanks,<\/p>\n<p>Jimmy<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-969\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-969\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">6. November 2013 um 19:48<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Pinout is ok. Init in 1bit-Mode is a standard procedure. The code ist verified the failure must be in your hardware. Check all 9 lines again if connected and not shorted. Or try a new SD-Card.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-976\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-976\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/4bafb8567cd4dc1c37166256e2b09159?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Alex<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">7. November 2013 um 09:49<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hi<br \/>\nErstmal danke f\u00fcr die grossartigen Libraries!<br \/>\nIch habe noch eine Frage zu dieser:<br \/>\nIst es wirklich n\u00f6tig vor jedem Schreibzyklus die Karte zu mounten? Wenn ich dies nicht mache wird einfach nichts auf die Karte geschrieben. Am liebsten w\u00e4re es mir am Anfang des Programms die Karte zu mounten und am Schluss zu unmounten.<br \/>\nGruss<br \/>\nAlex<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-980\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-980\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">7. November 2013 um 12:00<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>hast du \u201cUB_Fatfs_CloseFile\u201d aufgerufen nach dem schreiben ?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-990\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-990\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/0683bae887fe075c6bce6340decc39a7?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Jimmy<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">8. November 2013 um 15:36<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hi Uwe,<\/p>\n<p>thanks for all. I have finally found the error. It was in my hardware interface. Although I had the right wiring the interface did not work. I believe it was caused by the 47k resistors, because once I have removed them it works.<\/p>\n<p>Jimmy<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-992\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-992\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">8. November 2013 um 18:12<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>good to know<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-1631\" class=\"comment odd alt depth-2\">\n<div id=\"comment-1631\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/031dffa92cbe0f60d06b20e6e09f771e?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Zouzmann<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">3. Mai 2014 um 13:28<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>hi jimmy ,<br \/>\ni got the same problem that you have had and which you have fixed by removing the 47k resistors<br \/>\nNow , i\u2019m wiring my pins directly with out the pull-up resistors and i still have a fatfs_getfree-err . I know that my problem is in the hardware wiring and config but didn\u2019t know where\u2019s the problem exactly (i\u2019m working with revezion z \/ my microcontroller is stm32f40vg and i\u2019m dealing with a 4 bits mode )<\/p>\n<p>koennen sie mir helfen ?<br \/>\ndanke shon<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1633\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-3\">\n<div id=\"comment-1633\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">3. Mai 2014 um 14:27<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>the most problems are from bugy adapters (sd-&gt;micro_sd) or not supported sd_cards. Please try another card (&lt;=1GB) and double check your connections and cable length (short as possible)<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-991\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-991\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/0683bae887fe075c6bce6340decc39a7?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Jimmy<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">8. November 2013 um 16:21<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>I have got a question in my head. Does this have any limitations in SD card size (does it work with 32Gb card), file name length or any other?<\/p>\n<p>Thanks,<\/p>\n<p>Jimmy<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-993\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-993\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">8. November 2013 um 18:13<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>look at the specification from ChaN, Filesize 4GB, Volumesize 2TB, Filename 8 character or with LFN enabled (in ffconf.h) 255 character<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1017\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-1017\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/0683bae887fe075c6bce6340decc39a7?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Jimmy<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">11. November 2013 um 19:20<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hi Uwe,<\/p>\n<p>what is approximately your write speed? I don\u00b4t know if it is only my problem, but it seems quite slow to me.<\/p>\n<p>Thanks<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1023\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-1023\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">12. November 2013 um 19:36<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>write speed is about 500kByte\/sec (with WriteBlock-Function) but i have only one card to test with.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1120\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-1120\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6c929b19db4e7d312527776a115682db?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Stefan<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">7. Dezember 2013 um 04:06<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hi Uwe,<\/p>\n<p>vielen Dank f\u00fcr die super Libs <img decoding=\"async\" class=\"wp-smiley\" src=\"wp-includes\/images\/smilies\/icon_smile.gif\" alt=\":)\" \/><br \/>\nIch habe leider auch Probleme die SD-Card zu mounten.<br \/>\nChip ist Z-Revision. Habe aber trotzdem die 2 Varianten ausprobiert bzgl CRC Fails.<\/p>\n<p>Nach f_mount() bekomm ich noch ein FR_OK.<br \/>\nBei f_getfree kommt ein FR_NOT_READY zur\u00fcck.<br \/>\nDieser wird hervorgerufen durch ein SD_CMD_RSP_TIMEOUT in der Funktion static SD_Error CmdError(void)<\/p>\n<p>Hast du eine Idee woran das liegen k\u00f6nnte ?<br \/>\nHabe die Hardware Verbindungen gepr\u00fcft, die m\u00fcssten passen.<br \/>\nMacht es vlt ein Problem das die Leitungen 30 cm lang sind ?<\/p>\n<p>Gr\u00fc\u00dfe Stefan<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1122\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-1122\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">7. Dezember 2013 um 17:15<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>schwer zu sagen\u202630cm klingt mir etwas viel\u2026kannst du sie nicht k\u00fcrzer machen ? und keine PullUps einbauen, das war hier schonmal ein Problem. Evt. noch eine andere Karte probieren.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1156\" class=\"comment odd alt depth-3\">\n<div id=\"comment-1156\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6c929b19db4e7d312527776a115682db?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Stefan<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">16. Dezember 2013 um 01:59<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hi Uwe,<\/p>\n<p>danke f\u00fcr die Antwort. Die l\u00e4nge der Kabel war nicht das Problem. Habs mit k\u00fcrzeren nochmal getestet, gleiches Verhalten.<\/p>\n<p>Der Fehler war der SD Karten Sockel\u2026<br \/>\nNeuen Sockel gekauft und alles neu gel\u00f6tet, jetzt funktioniert alles bestens <img decoding=\"async\" class=\"wp-smiley\" src=\"wp-includes\/images\/smilies\/icon_smile.gif\" alt=\":)\" \/><\/p>\n<p>Falls es noch jemand interessiert , hab dann auch gleich mal ein SD-Karten Kompatibilit\u00e4tstest gemacht mit denen die ich rumliegen hatte.<\/p>\n<p>Folgende Modelle konnte ich erfolgreich testen<br \/>\nSanDisk SD Card 2 GB<br \/>\nSanDisk BE08098117240, 2GB<br \/>\nSanDisk Ultra Class 10, 16 GB<br \/>\nSony SD HC Class 4, 8 GB<\/p>\n<p>Viele Gr\u00fc\u00dfe<br \/>\nStefan<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1121\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-1121\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/a65489bc1ec3e4efa9a93a99508b7b0a?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">sisa<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">7. Dezember 2013 um 16:17<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Thank you very much. Your code was very helpful for my project.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-1139\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-1139\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/f2cb9a36a7597a4418c1d14d26cb3552?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Simon<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">12. Dezember 2013 um 11:42<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo Uwo,<br \/>\nich hab heute mal deine Bibliothek getestet,<\/p>\n<p>bei UB_FATFS_CHECKMEDIA bekomme ich noch ein FATFS_OK zur\u00fcck,<br \/>\ndas ist ja schonmal gut, in der n\u00e4chsten Funktion<br \/>\nbei UB_FATFS_MOUNT bekomme ich aber ein FATFS_GETFREE_ERR<br \/>\nkann man da irgendwie den Fehler eingr\u00e4nzen??<\/p>\n<p>Vielen dank f\u00fcr die Hilfe!!<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1140\" class=\"comment even depth-2\">\n<div id=\"comment-1140\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/f2cb9a36a7597a4418c1d14d26cb3552?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Simon<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">12. Dezember 2013 um 11:44<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>if(dev==MMC_0) check=f_getfree(\u201cO:\u201d, &amp;fre_clust, &amp;fs);<\/p>\n<p>Da versteh ich noch nicht genau warum als Pfad O: angegeben wird,<br \/>\noder ist willk\u00fcrlich ausgew\u00e4hlt??<\/p>\n<p>Nochmals vielen Dank!!<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1632\" class=\"comment odd alt depth-3\">\n<div id=\"comment-1632\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/031dffa92cbe0f60d06b20e6e09f771e?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Zouzmann<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">3. Mai 2014 um 14:18<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>hallo simon ,<br \/>\nich habe das problem auch !<br \/>\nkonnen sie mich zeigen wie hast du das konfiguration gemacht ?<br \/>\nwelchem revizion und welchem bits mode (1 oder 4) zu folgen ?<\/p>\n<p>danke .<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1142\" class=\"comment even depth-2\">\n<div id=\"comment-1142\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/f2cb9a36a7597a4418c1d14d26cb3552?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Simon<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">12. Dezember 2013 um 11:57<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Ich habe es mit einer anderen SD-KArte versucht, da komme ich ein Schritt weiter:<\/p>\n<p>bei UB_FATFS_MOUNT bekomme ich jetzt FATFS_OK<br \/>\ndort bekam ich vorher FATFS_ERR<br \/>\nund bei der n\u00e4chsten Funktion<br \/>\nbei UB_FATFS_OPENFILE bekomme ich ber FATFS_OPEN_ERR<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1143\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-1143\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/f2cb9a36a7597a4418c1d14d26cb3552?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Simon<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">12. Dezember 2013 um 12:16<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Panik zur\u00fcck,<br \/>\nAlles funktioniert!<br \/>\nDANKE<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1145\" class=\"comment even depth-2\">\n<div id=\"comment-1145\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/f2cb9a36a7597a4418c1d14d26cb3552?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Simon<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">12. Dezember 2013 um 14:29<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Nur noch eine Frage <img decoding=\"async\" class=\"wp-smiley\" src=\"wp-includes\/images\/smilies\/icon_smile.gif\" alt=\":)\" \/><\/p>\n<p>kann ich auch statt reinem Text Variablen mit Zeicheninhalten in ein .txt File schreiben?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1146\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-3\">\n<div id=\"comment-1146\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">12. Dezember 2013 um 20:45<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>ja, du kannst \u201cUB_Fatfs_WriteBlock\u201d dazu benutzen. Einfach ein char Array anlegen [max 512 Byte] , mit Daten f\u00fcllen und die Funktion aufrufen. Wenn du mehr Daten speichern willst, einfach die Funktion mehrmals aufrufen.<\/p>\n<pre lang=\"c\" line=\"1\">uint32_t cnt;\r\nunsigned char data[10];\r\ndata[0]=0x12;\r\ndata[1]=0xab;\r\ndata[2]=0x5F;\r\nUB_Fatfs_WriteBlock(&amp;myFile, data, 3, &amp;cnt);\r\n<\/pre>\n<p>in einem Editor werden die Bytes halt dann nicht lesbar dargestellt, sondern mit sondernzeichen.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1147\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-1147\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">12. Dezember 2013 um 20:46<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>und was war der Fehler\u2026vlt hat jemand anderes den gleichen<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1150\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-1150\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/f2cb9a36a7597a4418c1d14d26cb3552?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Simon<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">13. Dezember 2013 um 13:05<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Ich benutzte ein SD-Karten Adapter auf MicroSD<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-1163\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-1163\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/433576b5bbf200c260d9d975b5ae8cdd?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Joerg<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">17. Dezember 2013 um 08:20<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Vielen Dank funktioniert prima, bis auf die Addressierung bei gro\u00dfen Speicherkarten. Compiler Keil MDK 5.0.<br \/>\n\u00c4nderungsvorschlag:<\/p>\n<p>int MMC_disk_read(BYTE *buff, DWORD sector, BYTE count)<br \/>\n{<br \/>\n\u2026<br \/>\nSD_ReadMultiBlocks(buff, sector &lt;&lt; 9, 512, 1);<br \/>\n\u2026<br \/>\n}<br \/>\nsollte wie folgt ge\u00e4ndert werden:<br \/>\n\u2026<br \/>\nSD_ReadMultiBlocks(buff, ((uint64_t)sector) &lt;&lt; 9, 512, 1);<br \/>\n\u2026<br \/>\ndas Gleiche gilt auch f\u00fcr die Schreibfunktion:<br \/>\nSD_WriteMultiBlocks((BYTE *)buff, ((uint64_t)sector) &lt;&lt; 9, 512, 1);<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1166\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-1166\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">17. Dezember 2013 um 18:54<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>ok\u2026da werd ich wohl ein update einplanen m\u00fcssen.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1256\" class=\"comment even thread-odd thread-alt depth-1\">\n<div id=\"comment-1256\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/389cf78cf94e9e0b8ef53398fdecf172?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Markus<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">10. Januar 2014 um 15:53<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo,<\/p>\n<p>wenn ich auf<br \/>\n#define SD_SDIO_DMA_STREAM6 6<br \/>\nstelle, dann funktioniert es leider nicht mehr.<\/p>\n<p>if (UB_Fatfs_CheckMedia(MMC_0)==FATFS_OK) {<br \/>\nUB_Uart_SendString(COM2, \u201cMedia gefunden!\u201d, LFCR);<\/p>\n<p>funktioniert,<\/p>\n<p>if(UB_Fatfs_Mount(MMC_0)==FATFS_OK) {<br \/>\nUB_Uart_SendString(COM2,\u201dMount OK!\u201d,LFCR);<\/p>\n<p>funktioniert leider nicht mehr.<br \/>\nDie CPU h\u00e4ngt sich dann auch auf.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1260\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-1260\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">11. Januar 2014 um 12:31<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>sorry, hab ich nicht getestet\u2026event. ein BUG.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1317\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-1317\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/47f328ceb51e683c7477fe37d3b7742b?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">timo<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">31. Januar 2014 um 13:37<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Ich m\u00f6chte Sector Size vergr\u00f6\u00dfen, damit Geschwindigkeit beschleunigen.<br \/>\nDeswegen 512 \u00fcberall durch 2048 ersetzt, danach funktioniert nicht mehr, und zwar kann es sich nicht mehr mounten. Das Program h\u00e4ngt bei \u201cSD_WaitReadOperation()\u201d in \u201cint MMC_disk_read(BYTE *buff, DWORD sector, BYTE count)\u201d.<\/p>\n<p>Hat jemand Erfarungen damit???<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1319\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-1319\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">31. Januar 2014 um 21:06<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>ja \u201cTorsten S\u201d aus dem Mikrocontroller-Forum (siehe BUG-Hinweis im Text oben)<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1336\" class=\"comment even thread-odd thread-alt depth-1\">\n<div id=\"comment-1336\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/47f328ceb51e683c7477fe37d3b7742b?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">timo<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">3. Februar 2014 um 14:37<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Problem gel\u00f6st !!!<\/p>\n<p>1. Sector Size der SD kann\/darf man nicht \u00e4ndern.<\/p>\n<p>2. der sogenannte Bug \u201cWenn dieser Funktion ein File \u00fcbergeben wird das gr\u00f6\u00dfer als 512 Bytes ist, kommt es zu einem Fehler und die Datei wird nicht richtig auf die SD-Karte geschrieben\/gelesen.\u201d liegt an der Function \u201cint MMC_disk_read(BYTE *buff, DWORD sector, BYTE count)\u201d in Datei \u201cstm32_ub_sdcard.c\u201d<\/p>\n<p>original war: \u201cSD_ReadMultiBlocks(buff, sector &lt;&lt; 9, 512, 1);&#8220;<\/p>\n<p>korrigiert ist nun: &#8222;SD_ReadMultiBlocks(buff, sector &lt;&lt; 9, 512, count);&#8220;<\/p>\n<p>jetzt braucht es nur 236ms um ein 480\u00d7272 Picture aus SD lesen und gleich auf TFT Dispaly anzuzeigen statt 466ms, weil ich jedesmal 4096 Bytes auslesen statt 512 Bytes.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1337\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-1337\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">3. Februar 2014 um 18:41<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Vorsicht, ich sagte doch es ist ein BUG\u2026\u201dTorsten\u201d hat auch diese \u00c4nderung gemacht und danach beim schreiben von gro\u00dfen Dateien fehlerhafte Daten erhalten !! nur zur Info.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1341\" class=\"comment even depth-3\">\n<div id=\"comment-1341\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/47f328ceb51e683c7477fe37d3b7742b?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">timo<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">4. Februar 2014 um 08:50<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>achso, weil ich bisher nur lesen gemacht habe \u2026 \u2026<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1373\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-1373\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/114cf56821f64499e52932f65d5dfa06?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Saivnct<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">10. Februar 2014 um 12:31<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>thank you very much for your libs<br \/>\ncan you help me solve this problem: I can\u2019t read block from SD card with this functions SD_ReadBlock(uint8_t *readbuff, uint64_t ReadAddr, uint16_t BlockSize);<br \/>\nSD_Error SD_ReadMultiBlocks(uint8_t *readbuff, uint64_t ReadAddr, uint16_t BlockSize, uint32_t NumberOfBlocks);<br \/>\nit gives me a error 7: SD_START_BIT_ERR<br \/>\nhelp me please <img decoding=\"async\" class=\"wp-smiley\" src=\"wp-includes\/images\/smilies\/icon_smile.gif\" alt=\":)\" \/><\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1374\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-1374\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">10. Februar 2014 um 18:52<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>please use \u201cUB_Fatfs_ReadBlock\u201d instead of \u201cSD_ReadBlock\u201d<br \/>\nif this also throw an error, double check all connections or try another SD-Card<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-1385\" class=\"comment odd alt depth-2\">\n<div id=\"comment-1385\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/c8f885e7807e61038c8bd10f67d06701?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">miros<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">14. Februar 2014 um 08:41<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hi,<br \/>\nI have the same problem. In UB_Fatfs_Mount at reading sector O with SD_ReadMultiBlocks, I always get SD_START_BIT_ERR despite CMD18 sending and response is OK. Did you find out what\u2019s wrong?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-1386\" class=\"comment even depth-2\">\n<div id=\"comment-1386\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/c8f885e7807e61038c8bd10f67d06701?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">miros<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">14. Februar 2014 um 10:18<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hi,<br \/>\ntoday, I found out it\u2019s wrong only in 4bit mode. In 1bit mode it works fine.<br \/>\nWhen the SD_START_BIT_ERR occurs? If is not start bit on all data bits(DO-D3), or only on one of them?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-1389\" class=\"comment odd alt depth-2\">\n<div id=\"comment-1389\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/c8f885e7807e61038c8bd10f67d06701?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">miros<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">14. Februar 2014 um 15:26<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>The problem is solved. Pin D1 in micro SD card holder was unconnected. I have made temporary uSD card holder from SD to micro SD card adapter and now it works fine.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1393\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-3\">\n<div id=\"comment-1393\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">14. Februar 2014 um 20:25<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>and like always\u2026a hardware bug <img decoding=\"async\" class=\"wp-smiley\" src=\"wp-includes\/images\/smilies\/icon_smile.gif\" alt=\":-)\" \/><\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1570\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-1570\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/eba279d7b4d559248e1f843ed2abb8f0?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Fraser<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">18. April 2014 um 20:57<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hello I have got this working. Although when I use it within my SPI project the<\/p>\n<p>SystemInit(); \u2013&gt; SetSysClock(); \u2013&gt; following lines<\/p>\n<p>\/* Select the main PLL as system clock source (issue)*\/<br \/>\nRCC-&gt;CFGR &amp;= (uint32_t)((uint32_t)~(RCC_CFGR_SW));<br \/>\nRCC-&gt;CFGR |= RCC_CFGR_SW_PLL;<\/p>\n<p>Interfere with my SPI1 configuration and causes it to return incorrect values. Any help would be appreciated.<\/p>\n<p>Fraser<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1572\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-1572\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">19. April 2014 um 09:38<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>what kind of \u201cinterference\u201d ?. SPI has nothing to do with the SDIO or the PLL-Settings. The SPI-Bus has its own physical Clock-Signal. Even with a wrong Clock-Speed the SPI must work (maybe slower as wanted but without failure). But you can download my SPI-LoLevel library and try this one.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1574\" class=\"comment odd alt depth-3\">\n<div id=\"comment-1574\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/eba279d7b4d559248e1f843ed2abb8f0?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Fraser<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">19. April 2014 um 18:57<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Spi 8-Bit write 2x 8-Bit return<\/p>\n<p><a href=\"..\/..\/i1215.photobucket.com\/albums\/cc520\/resarf69\/SPI\/working_zpsd8a13efe.jpg\" rel=\"nofollow\">http:\/\/i1215.photobucket.com\/albums\/cc520\/resarf69\/SPI\/working_zpsd8a13efe.png<\/a><\/p>\n<p>When SDIO is implemented the SPI clock is incorrect<\/p>\n<p><a href=\"..\/..\/i1215.photobucket.com\/albums\/cc520\/resarf69\/SPI\/notworking_zpsb0bee42b.jpg\" rel=\"nofollow\">http:\/\/i1215.photobucket.com\/albums\/cc520\/resarf69\/SPI\/notworking_zpsb0bee42b.png<\/a><\/p>\n<p>the spi initiation code is:<\/p>\n<pre lang=\"c\" line=\"1\">void mySPI_Init(void){\r\n \r\n \r\nRCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE);\r\n \r\nSPI_InitTypeDef SPI_InitTypeDefStruct;\r\n \r\n \r\nSPI_InitTypeDefStruct.SPI_Direction = SPI_Direction_2Lines_FullDuplex;\r\nSPI_InitTypeDefStruct.SPI_Mode = SPI_Mode_Master;\r\nSPI_InitTypeDefStruct.SPI_DataSize = SPI_DataSize_8b;\r\nSPI_InitTypeDefStruct.SPI_CPOL = SPI_CPOL_High;\r\nSPI_InitTypeDefStruct.SPI_CPHA = SPI_CPHA_2Edge;\r\nSPI_InitTypeDefStruct.SPI_NSS = SPI_NSS_Soft;\r\nSPI_InitTypeDefStruct.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_2;\r\nSPI_InitTypeDefStruct.SPI_FirstBit = SPI_FirstBit_MSB;\r\n \r\nSPI_Init(SPI1, &amp;SPI_InitTypeDefStruct);\r\n \r\n \r\nRCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA | RCC_AHB1Periph_GPIOE , ENABLE);\r\n \r\nGPIO_InitTypeDef GPIO_InitTypeDefStruct;\r\n \r\nGPIO_InitTypeDefStruct.GPIO_Pin = GPIO_Pin_5 | GPIO_Pin_7 | GPIO_Pin_6;\r\nGPIO_InitTypeDefStruct.GPIO_Mode = GPIO_Mode_AF;\r\nGPIO_InitTypeDefStruct.GPIO_Speed = GPIO_Speed_50MHz;\r\nGPIO_InitTypeDefStruct.GPIO_OType = GPIO_OType_PP;\r\nGPIO_InitTypeDefStruct.GPIO_PuPd = GPIO_PuPd_NOPULL;\r\nGPIO_Init(GPIOA, &amp;GPIO_InitTypeDefStruct);\r\n \r\nGPIO_InitTypeDefStruct.GPIO_Pin = GPIO_Pin_3;\r\nGPIO_InitTypeDefStruct.GPIO_Mode = GPIO_Mode_OUT;\r\nGPIO_InitTypeDefStruct.GPIO_Speed = GPIO_Speed_50MHz;\r\nGPIO_InitTypeDefStruct.GPIO_PuPd = GPIO_PuPd_UP;\r\nGPIO_InitTypeDefStruct.GPIO_OType = GPIO_OType_PP;\r\nGPIO_Init(GPIOE, &amp;GPIO_InitTypeDefStruct);\r\n \r\nGPIO_PinAFConfig(GPIOA, GPIO_PinSource5, GPIO_AF_SPI1);\r\nGPIO_PinAFConfig(GPIOA, GPIO_PinSource6, GPIO_AF_SPI1);\r\nGPIO_PinAFConfig(GPIOA, GPIO_PinSource7, GPIO_AF_SPI1);\r\n \r\nGPIO_SetBits(GPIOE, GPIO_Pin_3);\r\n \r\n \r\nSPI_Cmd(SPI1, ENABLE);\r\n \r\n}\r\n<\/pre>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1576\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-4\">\n<div id=\"comment-1576\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">21. April 2014 um 18:34<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>please check your Syclock-Setting without the SDIO.<br \/>\nWith a correct Sysclock @168MHz the APB2 is 84MHz. And with a prescaler \u201cSPI_BaudRatePrescaler_2\u2033 the SPI-Clock is 42MHz ! One SPI-Frame with 8bit has a duration of only 190ns !! But in your first picture the duration is about 1us \u2026so i think the sysclock with SDIO is ok and you should try a prescaler of 16. Then your SPI-Clock should be 5,25MHz. I hope this solves the problem.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1599\" class=\"comment odd alt depth-5\">\n<div id=\"comment-1599\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/eba279d7b4d559248e1f843ed2abb8f0?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Fraser<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">26. April 2014 um 00:00<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Thank-you! Changing the pre-scaler to slow the clock down worked.<\/p>\n<p>I am having an issue with writing more than 512 bytes to a file as mentioned earlier.<\/p>\n<p>I am doing the following (\u201cPseudocode\u201d) when I loop too many times the file has an error.<\/p>\n<p>How do I log lots of data in the .txt file?<\/p>\n<p>Thanks again<\/p>\n<p>Fraser<\/p>\n<p>main{<\/p>\n<p>Initiate system<br \/>\nInitiate Fat-FS<br \/>\nMount<br \/>\nCreate file in root<\/p>\n<p>While (x&gt;1000)<br \/>\n{<\/p>\n<p>int x<\/p>\n<p>(data)<\/p>\n<p>writeblock (data)<\/p>\n<p>x++<\/p>\n<p>}<\/p>\n<p>close file<\/p>\n<p>unmount<\/p>\n<p>}<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-1601\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-5\">\n<div id=\"comment-1601\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">26. April 2014 um 10:00<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>first check your Hardawre (short connections, no external pullups)<br \/>\nthen try this<br \/>\n[pseudocode]<br \/>\nint x=0;<br \/>\nchar data[512]<br \/>\nwhile(x&lt;1000) {<br \/>\ndata=filldata();<br \/>\nwriteblock(data);<br \/>\nx++<br \/>\n}<br \/>\nclose file<br \/>\nunmount<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1585\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-1585\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/1d57e0c63da8d407e524f2b80dd224df?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Bernhard<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">24. April 2014 um 14:19<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hey, ich bekomme immer einen FR_INT_ERR (file ff.c line 959).<br \/>\nIch kenne mich noch aus mit Files bzw. Speichermedien.<br \/>\nKann mir bitte jemand erkl\u00e4ren was das Problem ist!<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1598\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-1598\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">25. April 2014 um 19:49<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>\u201cAssertion failed\u201d \u2026 hast du irgendein File von meiner Demo abge\u00e4ndert ? Und wenn ja\u2026was und warum.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1605\" class=\"comment odd alt depth-3\">\n<div id=\"comment-1605\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/1d57e0c63da8d407e524f2b80dd224df?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Bernhard<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">26. April 2014 um 15:10<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Nein, verwende eins zu eins deinen CooCox \u2013 Projekt!<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1620\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-4\">\n<div id=\"comment-1620\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">1. Mai 2014 um 11:16<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>dann probier mal eine andere SD-Karte (&lt;=1GB)<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1621\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-1621\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/b894d67379dd0647dd316009f47155d2?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Joerg B.<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">1. Mai 2014 um 18:18<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Falls du mal lange Weile haben solltest. Ein Lib f\u00fcr die Folientastatur w\u00e4re ganz sch\u00f6n zu haben <img decoding=\"async\" class=\"wp-smiley\" src=\"wp-includes\/images\/smilies\/icon_wink.gif\" alt=\";)\" \/><\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1624\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-1624\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">2. Mai 2014 um 18:34<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>schon fertig\u2026probier sie mal aus.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1629\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-1629\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/b894d67379dd0647dd316009f47155d2?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Joerg B<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">3. Mai 2014 um 11:59<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Das war fix! Danke, ich hoffe ich komme Morgen dazu es zu testen.<br \/>\nBin ziemlich Ausgelastet die letzten Wochen. So eine Maschine, mit Mechanik und Steuerung zu bauen bringt einen ganz sch\u00f6n an seine Grenzen\u2026<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-1641\" class=\"comment even thread-odd thread-alt depth-1\">\n<div id=\"comment-1641\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6945d1237f7e6e5b3049f55eab97f30d?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Thierry<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">4. Mai 2014 um 12:13<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hi UWE,<\/p>\n<p>Very good job, but i have a problem when enter in SD_PowerON()<br \/>\nat this place :<br \/>\n\/*!&lt; CMD55 *\/<br \/>\nSDIO_CmdInitStructure.SDIO_Argument = 0\u00d700;<br \/>\nSDIO_CmdInitStructure.SDIO_CmdIndex = SD_CMD_APP_CMD;<br \/>\nSDIO_CmdInitStructure.SDIO_Response = SDIO_Response_Short;<br \/>\nSDIO_CmdInitStructure.SDIO_Wait = SDIO_Wait_No;<br \/>\nSDIO_CmdInitStructure.SDIO_CPSM = SDIO_CPSM_Enable;<br \/>\nSDIO_SendCommand(&amp;SDIO_CmdInitStructure);<br \/>\nerrorstatus = CmdResp1Error(SD_CMD_APP_CMD);<\/p>\n<p>\/*!&lt; If errorstatus is Command TimeOut, it is a MMC card *\/<br \/>\n\/*!&lt; If errorstatus is SD_OK it is a SD card: SD card 2.0 (voltage range mismatch)<br \/>\nor SD card 1.x *\/<br \/>\nif (errorstatus == SD_OK)<\/p>\n<p>errorstatus = SD_ILLEGAL_CMD<br \/>\nHave you an idea why ?<br \/>\nMy SD card is a 500MB, it is formatted in FAT type under SEVEN and i work in 1bit mode<br \/>\nBig thanks<br \/>\nThierry<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-1645\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-1645\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6945d1237f7e6e5b3049f55eab97f30d?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Thierry<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">5. Mai 2014 um 09:46<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hello,<br \/>\nnew investigation :<br \/>\nI connect an oscilloscope on CMD and CLK and i don\u2019t see modification on these pins during CmdResp1Error() !!!!<br \/>\nIt\u2019s oscillogram OK for \u201cGO_IDLE_STATE\u201d and \u201cSEND_IF_COND\u201d but nothing for \u201cCMD55\u2033 !!<br \/>\nHave you an idea ?<br \/>\nThanks<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1646\" class=\"comment even depth-2\">\n<div id=\"comment-1646\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6945d1237f7e6e5b3049f55eab97f30d?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Thierry<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">5. Mai 2014 um 09:49<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Sorry, I wrote a mistake \u2026<br \/>\nI connected an oscilloscope on CMD and CLK and i didn\u2019t see modification on these pins during SDIO_SendCommand(&amp;SDIO_CmdInitStructure); with CMD55 !!!!<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1647\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-1647\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6945d1237f7e6e5b3049f55eab97f30d?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Thierry<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">5. Mai 2014 um 09:59<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Sorry, another mistake.<br \/>\nOscillograms are OK, and like my first message, \u201cSD_ILLEGAL_CMD\u201d is returned.<br \/>\nIs it a bad SD formatting ?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1648\" class=\"comment even depth-2\">\n<div id=\"comment-1648\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6945d1237f7e6e5b3049f55eab97f30d?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Thierry<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">5. Mai 2014 um 13:12<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>My CS is connected Low.<br \/>\nYou don\u2019t use it ?<br \/>\nWhy ?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1649\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-1649\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6945d1237f7e6e5b3049f55eab97f30d?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Thierry<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">5. Mai 2014 um 16:07<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>My SD Card never response after received CMD 55 ???<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1650\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-1650\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">5. Mai 2014 um 16:52<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>in 1bit SDIO Mode the Pin DAT3\/CD should tied to Vcc not to GND !!. This Pin is ChipSelect only in SPI-Mode.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1694\" class=\"comment odd alt depth-3\">\n<div id=\"comment-1694\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6945d1237f7e6e5b3049f55eab97f30d?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Thierry<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">12. Mai 2014 um 10:38<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>OK,<br \/>\nIt\u2019s better now<br \/>\nThanks<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1653\" class=\"comment even thread-odd thread-alt depth-1\">\n<div id=\"comment-1653\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6945d1237f7e6e5b3049f55eab97f30d?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Thierry<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">6. Mai 2014 um 10:12<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>OK, Thanks.<br \/>\nIt wad an hardware error, Arduino put serial resistor in CLK and CMD.<br \/>\nNow it\u2019s ok, but i received SD_CMD_RSP_TIMEOUT \u2026<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1655\" class=\"comment odd alt depth-2\">\n<div id=\"comment-1655\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6945d1237f7e6e5b3049f55eab97f30d?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Thierry<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">6. Mai 2014 um 13:09<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hi,<br \/>\nIt\u2019s better without serial resistor in CS \u2026<br \/>\nI tried 3 SD, 2x500Mo &amp; 1x1Mo.<br \/>\nWith 1Mo, sometimes i have timeout and when it\u2019s OK i have a CRC_Failed in SD_Init()\/SD_SelectDeselect() !!!!<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1656\" class=\"comment even depth-3\">\n<div id=\"comment-1656\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6945d1237f7e6e5b3049f55eab97f30d?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Thierry<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">6. Mai 2014 um 13:42<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>In SD_Init() after that :<br \/>\n\/*!&lt; Configure the SDIO peripheral *\/<br \/>\n\/*!&lt; SDIO_CK = SDIOCLK \/ (SDIO_TRANSFER_CLK_DIV + 2) *\/<br \/>\n\/*!&lt; on STM32F4xx devices, SDIOCLK is fixed to 48MHz *\/<br \/>\nSDIO_InitStructure.SDIO_ClockDiv = SDIO_TRANSFER_CLK_DIV;<br \/>\nSDIO_InitStructure.SDIO_ClockEdge = SDIO_ClockEdge_Rising;<br \/>\nSDIO_InitStructure.SDIO_ClockBypass = SDIO_ClockBypass_Disable;<br \/>\nSDIO_InitStructure.SDIO_ClockPowerSave = SDIO_ClockPowerSave_Disable;<br \/>\nSDIO_InitStructure.SDIO_BusWide = SDIO_BusWide_1b;<br \/>\nSDIO_InitStructure.SDIO_HardwareFlowControl = SDIO_HardwareFlowControl_Disable;<br \/>\nSDIO_Init(&amp;SDIO_InitStructure);<\/p>\n<p>I have no more CLK !!<br \/>\nIs it a normal work ?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-1657\" class=\"comment odd alt depth-4\">\n<div id=\"comment-1657\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6945d1237f7e6e5b3049f55eab97f30d?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Thierry<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">6. Mai 2014 um 14:19<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hello,<br \/>\nWhen i comment these SDIO CLK Config lines, working Good with 1x1Go and 1x500Mo \u00b5SD (but not with 500Mo SD)<br \/>\nHave you an expectation about that ?<br \/>\nThanks<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-1688\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-1688\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/90c9e15cb118a9e9f69c0f697f2942b0?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Lurch<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">9. Mai 2014 um 20:34<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>wozu ist die Prozedur \u2018SD_HighSpeed\u2019?<br \/>\nWollte meine Quellen abgleichen und hatte die Prozedur \u00fcbrig.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-1708\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-1708\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/6945d1237f7e6e5b3049f55eab97f30d?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Thierry<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">14. Mai 2014 um 09:19<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hello Uwe,<br \/>\nBig thanks for your help,<br \/>\nCoOS was intrisuve in my SD configuration, now it\u2019s OK.<br \/>\nYour code is very good working without modification.<br \/>\nThanks<br \/>\nThierry<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-2147\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-2147\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/ad7de6a9533e54e9b735fe000a81fc6b?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Stefan<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">19. September 2014 um 11:13<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo<\/p>\n<p>super library! Funktioniert einwandfrei bei mir.<\/p>\n<p>Das Einzige was mich st\u00f6rt ist die sehr niedrige Schreibgeschwindigkeit.<br \/>\nIch habe das lib mit zwei SD Karten getestet:<br \/>\n&#8211; SanDisc 1G \u2013 512Byte write \u2013 30KByte\/s<br \/>\n&#8211; Panasonic SDHC 32G \u2013 512Byte write \u2013 46KByte\/s<br \/>\nwas f\u00fcr mich nicht ausreichend ist.<br \/>\nIch habe auf diverse Foren ins Internet oft die Aussage gelesen, dass die Schreibgeschwindigkeit vom Blockgr\u00f6\u00dfe abh\u00e4ngig ist.<br \/>\nWie muss, dass Lib angepasst werden, damit man Bl\u00f6cke gr\u00f6\u00dfer als 512Byte schreiben kann, zB. 16K oder sogar 32K.<\/p>\n<p>Vielen Dank!<br \/>\nStefan<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-2149\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-2149\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">20. September 2014 um 14:18<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>30 bis 40kByte\/s ist schon sehr langsam<br \/>\nbist du sicher das die Clock-Einstellungen richtig sind ?<br \/>\nprobier mal die Test-Version 1.5 aus und schreib ob es damit schneller geht.<br \/>\nIn der Version kannst du den kompletten Block der geschrieben werden soll<br \/>\n\u00fcbergeben (z.B. 150kByte)<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-2245\" class=\"comment even thread-odd thread-alt depth-1\">\n<div id=\"comment-2245\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/7bb5dd6eb4750b2f9a304a211c254b87?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Luciano<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">3. Oktober 2014 um 16:49<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo,<\/p>\n<p>hervorragendes Beispiel. Ich ging perfekt. Vielen Dank !!.<br \/>\nDerzeit muss ich auf die SD-Speicher zu schreiben ist eine Tatsache, dass in einem uint16_t variabel, wer, wie?<\/p>\n<p>Gr\u00fc\u00dfe.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-2653\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-2653\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/35f8aa5cd0574d92af536850ad27db14?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Christian<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">7. Dezember 2014 um 20:24<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo,<\/p>\n<p>auch ich bin von den Libs begeistert. Es l\u00e4uft soweit eigentlich alles. Ich m\u00f6chte einen Datenlogger betreiben. Analog\u2013&gt;SD-Karte. Wenn ich jetzt z.B. eine Sinusspannung aufnehme habe ich immer beim Schreibzyklus ( alle 512byte) einen kurzen \u201ch\u00e4nger\u201d. Obwohl ADC als auch SD beides mitDMA l\u00e4uft. Wie kann ich einen konstanten \u00e4quidistanten Datenstrom auf eine SD-Karte erzeugen? Ziel ist es eine m\u00f6glichst hohe Abtastrate zu erreichen. Wie k\u00f6nnte ich das erreichen?<\/p>\n<p>Danke und Gru\u00df<br \/>\nChristian<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-2655\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-2655\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">7. Dezember 2014 um 21:31<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>da wirst du nicht sehr weit kommen. event. mit einem RAM-Puffer als zwischenspeicher. aber das die Karte ab und zu mal eine Pause einlegt ist normal.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-2712\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-2712\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/7c5c61397942a54ccad7f4d7903e6eda?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Marcel<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">15. Dezember 2014 um 15:52<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo,<\/p>\n<p>gibt es bei der Lib auch die m\u00f6glichkeit mehrere datein mit der Gleichen endung z.B. .mp3 aufzulisten und dann nach ein anderer die liste abzuarbeiten?<\/p>\n<p>Mfg<br \/>\nMarcel<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-2716\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-2716\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">15. Dezember 2014 um 21:04<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>nein, das ist kein teil einer Library sondern einer Anwendung\u2026.die must du selber programmieren.<br \/>\ndas MP3-Projekt macht sowas \u00e4hnliches, wie das programmiert ist kannst du da nachsehen.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-2837\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-2837\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/7fa89cf356105cf1b3d066728feb37db?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">vasa<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">16. Januar 2015 um 10:02<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo!<br \/>\nK\u00f6nnen Sie mir sagen, wie Sie den freien Speicherplatz auf der SD-Karte \u00fcberpr\u00fcfen?<br \/>\nThank U.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-2841\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-2841\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">18. Januar 2015 um 10:29<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Der Quellcode ist doch komplett dabei\u2026einfach da nachlesen.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-2888\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-2888\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/a805d646ff4e89b682b386d0568ad7b7?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Rudy<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">13. Februar 2015 um 05:16<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo, gibt es eine, die ein Beispiel f\u00fcr das Lesen einer Datei geben kann?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-2891\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-2891\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">13. Februar 2015 um 19:13<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>das hier sollte gehen :<\/p>\n<pre lang=\"c\" line=\"1\">char buffer[5000];\r\nFIL myFile;\r\nuint32_t rlen;\r\nFATFS_t check_fat;\r\n\r\nUB_Fatfs_OpenFile(&amp;myFile,\"file.hex\",F_RD);\r\ndo {\r\n  check_fat=UB_Fatfs_ReadBlock(&amp;myFile,buffer,512,&amp;rlen);\r\n}\r\nwhile((check_fat==FATFS_OK) &amp;&amp; (rlen&gt;0));\r\nUB_Fatfs_CloseFile(&amp;myFile);\r\n<\/pre>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-2941\" class=\"comment odd alt thread-even depth-1\">\n<div id=\"comment-2941\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/e3cf11b000d7e149122a2a3f39911cc6?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Michel<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">5. M\u00e4rz 2015 um 22:43<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>I\u2019m getting a lot of errors like this: error: unknown type name \u2018uint64_t\u2019<br \/>\nI can\u2019t seem to resolve this problem.<\/p>\n<p>I also get an error on this line: stm32_ub_sdcard.c:774:41: error: expected \u2018)\u2019 before \u2018cardinfo\u2019<\/p>\n<p>I haven\u2019t changed anything to your code. Could you please help me?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-2948\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-2948\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">8. M\u00e4rz 2015 um 14:04<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>what kind of IDE do you use ? (and what version)<br \/>\ntry to include \u201cstdint.h\u201d<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-2951\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-2951\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/e3cf11b000d7e149122a2a3f39911cc6?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Michel<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">8. M\u00e4rz 2015 um 17:07<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>I\u2019m sorry for the missing information. I have tested with coocox 1.72 and the newer coocox 2 version. I also tried with the newest gcc. It doesn\u2019t changed my problem. I have used this library of yours earlier and it worked like a charm back then. but from my memory I thought there were no uint_64 declarations back then?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-2952\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-2952\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">8. M\u00e4rz 2015 um 17:27<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>with my version (1.7.4) i need to include \u201cstdint.h\u201d and then i can use<br \/>\n\u201cuint64_t\u201d so try to insert this include manually.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-2953\" class=\"comment odd alt depth-3\">\n<div id=\"comment-2953\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/e3cf11b000d7e149122a2a3f39911cc6?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Michel<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">8. M\u00e4rz 2015 um 23:37<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>I have re-installed coocox from 1.7.2 to 1.7.8 and now it\u2019s working again. Many thanks for your libraries. They are always of a high quality!<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-3130\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-3130\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/7fa89cf356105cf1b3d066728feb37db?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Vasa<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">17. April 2015 um 09:55<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Guten Tag!<br \/>\nWas ist die Cluster-Gr\u00f6\u00dfe sollte ich verwenden?<br \/>\nCluster 4 KB schreibt auf die Karte 2 GB, Fat.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-3135\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-3135\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">17. April 2015 um 19:26<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>please rewrite your question in english please. i dont understand your problem.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-3141\" class=\"comment even thread-odd thread-alt depth-1\">\n<div id=\"comment-3141\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/7fa89cf356105cf1b3d066728feb37db?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Vasa<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">18. April 2015 um 13:32<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>2GB Sd-card formatted in Fat FS with a cluster size of 4 KB. But there is an error reading and writing.<br \/>\nIf I use a cluster size of 16 KB, sometimes the file grows in size tenfold when adding a small line of 50 characters.<br \/>\nWhat could it be?<br \/>\nThank you!<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-3153\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-3153\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">22. April 2015 um 08:30<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>the default cluster size for 2GB is 32kB (have a look at the microsoft specs)<br \/>\n<a href=\"https:\/\/support.microsoft.com\/en-us\/kb\/140365\" rel=\"nofollow\">https:\/\/support.microsoft.com\/en-us\/kb\/140365<\/a><\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-3205\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-3205\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/ca56530a0b28cb8766eca72be56df756?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Davide<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">3. Mai 2015 um 10:50<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Incredibly good library,<br \/>\nLFN added in a snap, drop in compatibility with my little project (a room ambiental data logger + digital frame for my room) and very reliable comunication:<br \/>\n4 bit sdio works flawlessly with 1gb, 4gb, 16gb sdhc cards formatted either in fat16 and fat32!<br \/>\nI have a question, there is a way to list all the files inside the sd card, or to open something inside a folder? Right now i\u2019ve only accomplished to create\/write\/read files in the root passing \u201c0:\\file.txt\u201d to file open, no luck with \u201c0:\\dir\\file.txt\u201d for example!<\/p>\n<p>Thank you again for your work!<br \/>\nDavide<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-3207\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-3207\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">3. Mai 2015 um 11:58<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>to list all files you need a function to do this. In my \u201cuBasic-Project\u201d i have implemented this feature. And directorys are also possible in this project. So download this project and have a look at the sources. <a href=\"index3efa.html?page_id=4243\" rel=\"nofollow\">http:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=4243<\/a><br \/>\nor check the html-docu from Chan in the docu folder.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-4084\" class=\"comment even thread-odd thread-alt depth-1\">\n<div id=\"comment-4084\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/cf1740bc8559e04ade01fb793d48a1ad?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">StefanG.<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">17. August 2015 um 12:27<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hallo,<\/p>\n<p>ich versuche ebenfalls deine Lib zum laufen zu bekommen.<\/p>\n<p>Die Verdrahtung meiner Platine ist die gleiche wie du vorgibts, au\u00dfer CD(weshalb ich dies im code deaktiviert habe).<\/p>\n<p>Ich benutze einen Connector von Molex (47352-1001) und habe 2 Microsd Karten mit 2 GB und eine mit 8 Gb.<\/p>\n<p>Die Funktion UB_Fatfs_CheckMedia liefert mit FATFS_OK zur\u00fcck.<\/p>\n<p>Jedoch bekomme ich bei der UB_Fatfs_mount() immer ein FATFS_MOUNT_ERR zur\u00fcck.<\/p>\n<p>Ich habe keine Pullups verwendet. Die Fomratierung der Microsd-Card ist Fat32.<\/p>\n<p>An welchen Ecken k\u00f6nnte der Fehler sein?<\/p>\n<p>Um einen Tipp w\u00e4re ich dir sehr dankbar.<\/p>\n<p>Freundliche Gr\u00fc\u00dfe<br \/>\nStefan<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-4085\" class=\"comment odd alt depth-2\">\n<div id=\"comment-4085\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/dda154d82c3cacf3a70be81aa329ac7c?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">StefanG.<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">17. August 2015 um 22:37<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Habe es zum laufen gebracht. Hatte einen kurzen auf meiner Platine<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-4370\" class=\"comment even thread-even depth-1\">\n<div id=\"comment-4370\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/856076e504516e23ac85271b9894eccd?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Peter<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">23. November 2015 um 01:06<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Hi<br \/>\nThank for the super Lib<br \/>\nI have problem with the write speed. It is only about 40kB\/s.<br \/>\nI use the lib in my own project. F_cpu is 168 Mhz<br \/>\nI tested 3 differnd SD cards ( 2, 4 and 16 GB)<\/p>\n<p>When i call the WriteBlock() function 8 times (size set to 512) i need 90ms (4kB of data)<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-4375\" class=\"comment byuser comment-author-admin_ub bypostauthor odd alt depth-2\">\n<div id=\"comment-4375\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">23. November 2015 um 19:23<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>check sdio clock at PC12<br \/>\ninit : 400kHz<br \/>\nread\/write : 24MHz<br \/>\nuse short connections &lt; 3 cm !!<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-4383\" class=\"comment even depth-3\">\n<div id=\"comment-4383\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/856076e504516e23ac85271b9894eccd?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Peter<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">24. November 2015 um 11:50<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>I will checkthe cloks if i buy a Scope.<br \/>\nBut my connections are now 9cm Long, I has really an impact?<br \/>\nI tested another SD Card and i have 90kB\/s<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<li id=\"li-comment-4393\" class=\"comment odd alt depth-3\">\n<div id=\"comment-4393\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/856076e504516e23ac85271b9894eccd?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">Peter<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">26. November 2015 um 21:00<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>I made some measurements<\/p>\n<p>The clocks are ok i think.<br \/>\nThe problem is that<br \/>\nwhen i call UB_Fatfs_WriteBlock() then the micro wait very long in line:<br \/>\nwhile(SD_GetStatus() != SD_TRANSFER_OK);<br \/>\nin function MMC_disk_write()<\/p>\n<p>while(SD_GetStatus() != SD_TRANSFER_OK); takes over 6ms.<br \/>\nWhat does it mean ?<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-4405\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-4\">\n<div id=\"comment-4405\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">28. November 2015 um 11:53<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>mmc cards dont have a specified response time. you can incresase the \u201caverage\u201d speed, if you wrote more data.<br \/>\ncheck the write speed with 1024 * 512 bytes<br \/>\nit should more than 40 kb\/s.<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li id=\"li-comment-4440\" class=\"comment odd alt thread-odd thread-alt depth-1\">\n<div id=\"comment-4440\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/1.gravatar.com\/avatar\/7fa89cf356105cf1b3d066728feb37db?s=40&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">vasa<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">10. Dezember 2015 um 15:17<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>Guten Tag!<br \/>\nWie man die Daten von der CD Status Register und Karten status erhalten?<br \/>\nVielen Dank!<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/p>\n<ul class=\"children\">\n<li id=\"li-comment-4446\" class=\"comment byuser comment-author-admin_ub bypostauthor even depth-2\">\n<div id=\"comment-4446\">\n<div class=\"comment-author vcard\"><img loading=\"lazy\" decoding=\"async\" class=\"avatar avatar-40 photo\" src=\"http:\/\/0.gravatar.com\/avatar\/67426419ead44d5afa132e92685bb460?s=40&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D40&amp;r=G\" alt=\"\" width=\"40\" height=\"40\" \/><cite class=\"fn\">admin_ub<\/cite> <span class=\"says\">sagt:<\/span><\/div>\n<p><!-- .comment-author .vcard --><\/p>\n<div class=\"comment-meta commentmetadata\">12. Dezember 2015 um 12:44<\/div>\n<p><!-- .comment-meta .commentmetadata --><\/p>\n<div class=\"comment-body\">\n<p>ask google<\/p>\n<\/div>\n<\/div>\n<p><!-- #comment-## --><\/li>\n<\/ul>\n<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>-mit dieser Library k\u00f6nnen SD-Karten mit einem FAT-Dateisystem per SDIO-Schnittstelle und DMA vom STM32F4 verwaltet werden. Hinweis : es gibt noch eine Library f\u00fcr USB-Sticks per FATFS (Nr. 32) und eine kombinierte Library SD+USB (Nr. 87) -ich hab die OpenSource-Lib &hellip; <a href=\"https:\/\/mikrocontroller.bplaced.net\/wordpress\/?page_id=225\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":144,"menu_order":13,"comment_status":"open","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[128],"tags":[149,148,9,147,7],"class_list":["post-225","page","type-page","status-publish","hentry","category-stm32f4","tag-dma","tag-fat","tag-library","tag-sdio","tag-stm32f4"],"_links":{"self":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/pages\/225","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=225"}],"version-history":[{"count":10,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/pages\/225\/revisions"}],"predecessor-version":[{"id":3663,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/pages\/225\/revisions\/3663"}],"up":[{"embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=\/wp\/v2\/pages\/144"}],"wp:attachment":[{"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=225"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=225"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mikrocontroller.bplaced.net\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=225"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}