Good to Know Database

AVR-NET-IO: SD-Kartenleser in Ethersex einbinden


Das Ethersex-Projekt enthält bereits alle notwendigen Funktionen für den lesenden und schreibenden Zugriff auf SD-Karten. Damit der unter www.gtkdb.de/index_18_1041.html beziehungsweise unter www.gtkdb.de/index_18_1045.html vorgestellte SD-Kartenleser von Ethersex genutzt werden kann, müssen Sie die folgenden Änderungen an der Ethersex Konfiguration vornehmen.

Pinning anpassen

Da bei der hier verwendeten Schaltung der Chip Select Pin des SD-Slots beziehungsweise der SD-Karte mit dem Pin PB3 des Mikrocontrollers verbunden wurde, müssen Sie dies in der Datei pinning/hardware/netio.m4 für Ethersex bekannt geben.

georg@ubuntu1004:~/ethersex-ethersex-f29e0d7$ gedit pinning/hardware/netio.m4

Suchen Sie hier den folgenden Abschnitt.

ifdef(`conf_SD_READER', `dnl
  /* port the sd-reader CS is attached to */
  pin(SPI_CS_SD_READER, PB2, OUTPUT)
')dnl

Ändern Sie den Chip Select Pin wie folgt ab.

  pin(SPI_CS_SD_READER, PB3, OUTPUT)

Ethersex konfigurieren

Dieser Abschnitt setzt voraus, dass Sie Ethersex bereits für das AVR-NET-IO Board mit einem ATmega644P konfiguriert haben (siehe AVR-NET-IO: Ethersex für das AVR-NET-IO Board kompilieren und AVR-NET-IO: Umbau vom ATmega32 zum ATmega644P).

Starten Sie im Ethersex Quellcodeverzeichnis das grafische Konfigurationsskript.

georg@ubuntu1004:~/ethersex-ethersex-f29e0d7$ make menuconfig

Öffnen Sie das Menü General Setup und anschließend das Untermenü VFS (Virtual File System) suppor. Wählen Sie jetzt den Eintrag SD/MMC-Card Access aus und drücken die Y-Taste.

General Setup  --->
        [*] VFS (Virtual File System) support  --->
                [*] SD/MMC-Card Access  --->

Beenden Sie das Konfigurationsskript über Exit und speichern die Einstellungen ab.

Ethersex kompilieren

Durch den Befehl make übersetzen Sie den Quellcode.

georg@ubuntu1004:~/ethersex-ethersex-f29e0d7$ make

Ethersex in den Flash-Speicher schreiben

Verbinden Sie den In-System Programmer (hier ein USBtinyISP) mit einem 10 poligen 1:1 Kabel mit dem ISP Connector auf dem AVR-NET-IO Board. Danach verbinden Sie den USBtinyISP mit einem USB-Port Ihres Rechners. Schließen Sie erst jetzt die Spannungsversorgung an das AVR-NET-IO Board an.

Mit dem folgenden Befehl übertragen Sie anschließend das Flash-Image in den Flash-Speicher des ATmega644P Mikrocontrollers.

georg@ubuntu1004:~/ethersex-ethersex-f29e0d7$ sudo avrdude -c usbtiny -p m644p -U flash:w:ethersex.hex

SD-Karte formatieren

Damit Ethersex die SD-Karte lesen und beschreiben kann, müssen Sie die SD-Karte mit FAT16 formatieren.

georg@ubuntu1004:~$ sudo mkfs.msdos /dev/mmcblk0p1

Für den Funktionstest sollten Sie noch eine einfache Textdatei auf der SD-Karte anlegen.

Funktionstest

Nachdem das Flash-Image erfolgreich in den Flash-Speicher des Mikrocontrollers geschrieben wurde, trennen Sie die Spannungsversorgung und den USBtiny In-System Programmer vom AVR-NET-IO Board. Anschließend verbinden Sie den SD-Kartenleser mit dem AVR-NET-IO Board, stecken die SD-Karte in den SD-Slot, verbinden das Board mit Ihrem Netzwerk und schließen die Stromversorgung wieder an.

Für einen ersten Funktionstest öffnen Sie Ihren Web-Browser, geben die IP-Adresse des AVR-NET-IO Boards und den Dateinamen Ihrer Textdatei ein (hier http://192.168.10.50/test.txt). Sie sollten jetzt den Inhalt der Textdatei angezeigt bekommen.

Alternativ können Sie eine Telnet-Verbindung zum AVR-NET-IO Board aufbauen und sich mit dem Befehl sd dir den Inhalt der SD-Karte anzeigen lassen.

georg@ubuntu1004:~$ telnet 192.168.10.50 2701
Trying 192.168.10.50...
Connected to 192.168.10.50.
Escape character is '^]'.
sd dir
                        test.txt  25
OK


Dieser Eintrag wurde am 16.08.2010 erstellt und zuletzt am 24.01.2016 bearbeitet.

Direkter Link zu dieser Seite: http://www.gtkdb.de/index_18_1042.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer