www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik MCI am LPC23xx


Autor: Tobias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

hat vielleicht irgendjemand hier Erfahrung mit dem MCI der LPC23XX ? Ich 
versuche nun schon eine ganze Weile eine SD-Card zu beschreiben, bleibe 
aber einfach immer wieder stecken.

Viele Grüße,

Tobias

Autor: Juri (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schau doch mal beim EFSL-Projekt nach, da habe ich mal einen einfachen 
"Treiber" für den LPC2378 geposted. 
http://sourceforge.net/tracker/index.php?func=deta...

Gruß,
Juri

Autor: Tobias (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Juri,

vielen Dank für den Tip. Ich habe mir das mal alles runtergeladen und 
das efsl Verzeichnis hoffentlich richtig gepatcht. Beim Compilieren 
bekomme ich jedoch trotz längerem ausprobieren immer die folgenden 
Warnungen:
arm-elf-gcc -mcpu=arm7tdmi-s -mthumb -mthumb-interwork -g3 -Wall -Os  -Iinc -Ico
nf   -c -o src/interfaces/lpc23x8.o src/interfaces/lpc23x8.c
src/interfaces/lpc23x8.c: In function 'mci_sendcmd':
src/interfaces/lpc23x8.c:118: warning: unused variable 'count'
arm-elf-gcc -mcpu=arm7tdmi-s -mthumb -mthumb-interwork -g3 -Wall -Os  -Iinc -Ico
nf   -c -o src/efs.o src/efs.c
inc/interfaces/lpc23x8.h:184: warning: 'if_mci_init' declared 'static' but never
 defined
inc/interfaces/lpc23x8.h:185: warning: 'mci_card_init' declared 'static' but nev
er defined
inc/interfaces/lpc23x8.h:186: warning: 'mci_get_sector_count' declared 'static'
but never defined
inc/interfaces/lpc23x8.h:187: warning: 'mci_read_block' declared 'static' but ne
ver defined
inc/interfaces/lpc23x8.h:188: warning: 'mci_write_block' declared 'static' but n
ever defined
...

Diese Meldung wiederholt sich für alle Dateien aus dem src Verzeichnis. 
Ich kann damit aber leider nichts anfangen, da die Funktionen alle 
ordnungsgemäß in der lpc23x8.c definiert werden.

...
arm-elf-gcc -mcpu=arm7tdmi-s -mthumb -mthumb-interwork -g3 -Wall -Os  -Iinc -Ico
nf   -c -o src/interfaces/sd.o src/interfaces/sd.c
src/interfaces/sd.c: In function 'sd_Command':
src/interfaces/sd.c:85: warning: implicit declaration of function 'if_spiSend'

...

Die Warnung aus der sd.c bzgl. 'if_spiSend' rührt daher, dass diese 
Funktion natürlich in der lpc23x8.c gar nicht existiert. Hast Du dafür 
vielleicht einen Ersatz ?

Mein Makefile habe ich mal angehängt.

Gruss,

Tobias

Autor: Tobias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann mir vielleicht jemand helfen ? Ich komm leider einfach nicht 
weiter..
mfg, Tobias

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Siehe hier:
http://www.siwawi.arubi.uni-kl.de/avr_projects/arm...

MT hatte mal den kompletten Code, fix und fertig funktionierend auf 
seiner Seite. Ich musste nur noch ein paar IOs anpassen, dann ging das 
auch mit meinem Board. Ich glaube aus rechtlichen gründen musste er das 
wieder löschen. Vieleicht kann MT mehr dazu schreiben, wenn er das hier 
zufällig lesen sollte. (Ich nutze auch den arm-elf-gcc)

Autor: Juri Haberland (juri)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Markus:
Auf der Seite von MT ist doch noch eine Version mit meinem MCI-Code 
(http://www.siwawi.arubi.uni-kl.de/avr_projects/arm...), 
allerdings hat der noch ein paar Macken und MT hat leider keine neue 
Version veröffentlicht.

@Tobias:
Was die Funktion if_spiSend() aus der Datei sd.c angeht:
Diese Datei mußt du nicht kompilieren - aus dem interfaces-Verzeichnis 
benötigst du nur lpc23x8.c.

Möglicherweise rühren daher auch die anderen Fehler - bis auf den 
ersten, die ungenutzte Variable. Die kannst du auskommentieren - ist mir 
irgendwie durchgerutscht.
Die anderen Fehler kann ich hier nicht nachvollziehen (allerdings habe 
ich momentan keine ARM-Entwicklungsumgebung da, deshalb nur kurz mit 
einem x86-gcc getestet und -Wall).

Gruß,
Juri

Autor: Juri Haberland (juri)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Korrektur:
Ich konnte die Warnungen bezüglich der static-Deklarationen doch 
nachvollziehen. Enferne einfach in den lpc23x8.[c|h]-Dateien das Wort 
"static" vor den Funktionen.

Gruß,
Juri

Autor: Martin Thomas (mthomas) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Juri:
> Auf der Seite von MT ist doch noch eine Version mit meinem MCI-Code
> 
(http://www.siwawi.arubi.uni-kl.de/avr_projects/arm...),
> allerdings hat der noch ein paar Macken und MT hat leider keine neue
> Version veröffentlicht.

Hmm, habe wohl die Verbessungsverschläge nicht integriert. Am Besten 
einfach vorhandenes zip-Packet nehmen, Macken entfernen, wieder 
zusammenpacken und mir per e-mail zusenden. Ich lege dann die 
mackenfreie Version auf den Server auf das es anderen helfen möge. Im 
Moment auch nichts mit LPC23xx in Arbeit, um selbst gross zu testen.

@Markus:
ChaN hat in den fat-modul Beispielen inzwischen auch Treiber für 
LPC23|24xx/MCI, sicher einen Blick wert ( 
http://elm-chan.org/fsw/ff/00index_e.html ).

Autor: Tobias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank erstmal für Eure Antworten. Der Code von Martin Thomas läuft 
problemlos. Um welche Macken geht es ? Gibt es dazu vielleicht irgendwo 
eine Liste bzw. einen Thread ? Geht es um Macken in seinem Code oder in 
der efsl ?

Viele Grüße,

Tobias

Autor: Juri Haberland (juri)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es geht um Macken in meinem MCI-Interface, das in Martins Quellen 
enthalten ist. Lesen geht i.a., aber Schreiben macht Probleme und sollte 
in der neuen Version besser sein.

Ich habe dir mal ein Archiv angehangen, in dem die beiden Dateien sind. 
Sollte funktionieren, wenn du die einfach über die bestehenden 
'rüberkopierst. (habe ich aber nicht getestet...)

[edit]
Hmm, gibt es irgendeinen Trick mit den Anhängen?
[/edit]

Gruß,
Juri

Autor: Juri Haberland (juri)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Noch ein Versuch, hoffentlich diesmal mit Anhang...

Autor: Tobias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Super, vielen Dank :). Ich werde das morgen gleich mal ausprobieren.

Gruß, Tobias

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.