Gast
#790955
Hallo, hat schon mal jemand von euch Erfahrungen mit dem uAlfat von GHI-electronics gemacht? Dies ist ein SD-Karten-Interface, das einen eigenen Kontroller besitzt. Man mus z.B. nur "I" und "CR" senden, um die Initialisierung zu starten. Dies ist die SD-Init Funktion, die als Bibliothek mitgelierfert wird. Der Link befindet sich hier: http://www.ghielectronics.com/details.php?id=1&sid=2 Folgende Pin-Belegung habbe ich zwischen uART und uC 1: an UART-Empfangs-pin des uC angeschlossen (Der uC hat eine eigene UART-Funktionalität) 2: An UART-Sende-Pin angeschlossen (SD-Init wird korrekt gesendet, am Oszi verfolgt) 3: - 4: GND (wäre nicht nötig, Fehler im Layout) 5: GND 6: RTS, Port als Eingang konfiguriert 7: Portpin, benutze ich aber nicht 8: GND (Pin 8 und Pin 5 stellen UART -Kommuikation ein, möglich ist auch IIC und SPI) 9: - 10: - 11: - 12: 3,3V 13: 3,3V 14: Portpin als Ausgang 15: GND 16: - Die Baudrate ist auf 9613 eingestellt, nötig wären 9600, da dies die Werkeinstellung vom UALFAT ist, der uC kann aber nicht genauer. Folgenden Fehler habe ich: Die Initialisierung wird korrekt gesendet durch den uC, der uART solte dies durch vier Zeichen, die einen Error-Code darstellten, quittieren. Die Antwort vom uART schau ich mir auch auf dem OSzi an. Machmal sendet er den korrekten Code "!" "0" "0" "RC", dies bedeutet, er hat alles initialisiert. Manchmal kommt der Code mit der Aussage "TimeOut-Error", ein anderes mal kommt eine vielzhl an Zeichen, die deutlich mehr als die erwarteteten 4 sind, die Baudrate scheint auch größer zu sein. Mein Programmablauf sieht folgedermaßen aus: UART-Einstellungen des uC Dann Reset des uART durch toggeln des Reset-Pins Dann folt einigen Sekunden Code, der nichts mit SD-Kommuikation zu tun´hat. Dann Einschalten der UART-Kommuikation des uC (ich benutze den V850 von NEC) Dann initialisiere ich die UART-Transimit-Unit des uC Dann sende ich ein Zeichen und warte bis es den Transcieve-Buffer verlassen hat (Das erste Zeichen wird aus irgendeinem Grund zweimal gesendet, deshalb schalte ich danach den Sende-Pin des uC erst auf UART-Funktion um) Dann kommt der Befehl zum Initialisierung des SD-Interfaces durch zwei Zeichen, die nacheinander gesendet werden.(Diese werden korekt ausgesendet) Wie gesagt, manchmal kommt nur Müll zurück vom uALFAT, selten kommt die richtige Antwort, was mache ich falsch? Ich tippe auf irgendeine Fehlerhafte Beschaltung des uALFAT. Spannungsversorgung ist korekt, danaben benutze ich noch den RESET-Pin und den SendePin. Hat schon mal jemand mit dem Ding gearbeitet? WElcher kontroller dabei der Gegenpart war spielt ja keine Rolle. mfg Daniel