Forum: Mikrocontroller und Digitale Elektronik uAlfat (SD-Interface mit eigenem Kontroller) über UART anst


von Daniel (Gast)


Lesenswert?

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

von Rudolph R. (rudolph)


Lesenswert?

Bist Du sicher, dass Dein V850 die 9600 nicht bringt?
Und hast Du schonmal probiert, das auf einen Wert hochzuschrauben bei 
dem der V850 dichter dran ist?

von Rudolph R. (rudolph)


Lesenswert?

Hast Du das Ding eigentlich mal ein einen PC geklemmt?

von Kornelius (Gast)


Lesenswert?

Hast du auch Vbat angeschlossen? Das war mal mein Problem an dem ich 
ewig gesessen habe...

von Kornelius (Gast)


Lesenswert?

So wie es aussieht hast du VBAT an GND angeschlossen...das könnte es 
sein...

von Rudolph R. (rudolph)


Lesenswert?

Wie es aussieht ist Pin 12 VBat und das liegt an 3,3V.

von Kornelius (Gast)


Lesenswert?

Ist das die Pinbelegung vom µALFAT die da oben aufgelistet wurde? Weil 
es ja nur 16 Pins sind...

von Rudolph R. (rudolph)


Lesenswert?

Im Schaltplan vom uALFAT-SD gibt es nur 16 Pins an SV1.

von Kornelius (Gast)


Lesenswert?

Aaaahhhso...er hat das Board...ich dachte nur den Chip...dann fällt die 
Vermutung mit VBAT natürlich flach...

von Daniel (Gast)


Lesenswert?

Beim V850 gibt es im Datenblatt eine Beispielseite für die 
Baudrateneistellung. Dort sind für die nötigen 9600 Baud als Alternative 
9613 angeben. Ich bin mir ziemlich sicher, dass man ganau 9600 Baud 
nicht einstellen kann. Bisher hab ich den Fehler noch nicht gefunden, 
ich arbeite aber dran.

von christian (Gast)


Lesenswert?

sry für's wiederbeleben dieses alten threads.
kann mir jemand sagen, ob es einen deutschen reseller für die 
ghi-electronics-produkte gibt? hab stundenlang gesucht und keinen 
hinweis gefunden. der niederländische reseller scheint irgendwie nur 
nach NL und BE zu versenden. sieht auch alles sehr nach 
großkundenverkauf aus.

danke für die mühen.

von dl9mwe (Gast)


Lesenswert?

Wer den uALFAT via UART verwendet und keinen Hardware-Handshake mit RTS 
und CTS macht, muss CTS auf 0 legen.

Es gibt inzwischen einen Nachfolger des uALFAT-SD, nämlich das ALFAT SD 
Board. Wer zusätzlich zur SD-Karte noch einen USB-Anschluss haben 
möchte, kann zum ALFAT OEM-Board greifen.

Distributor für GHI-Produkte ist z.B. Watterott.

von DL9MWE (Gast)


Lesenswert?

Ein Problem mit dem uALFAT-SD ist, dass dass Teil keinen Unterschied 
macht zwischen busy (der User muss warten, bis die angeforderten Daten 
fertig zur Ausgabe sind) und wenn keine weiteren Daten verfügbar sind 
(dann kann man ewig warten). In beiden Fällen sendet das Board nämlich 
0xFF.
Hier hilft nur ein abgestimmtes timeout.
Und vielleicht ein Firmware-update???

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.