Good to Know Database

AVR-NET-IO: Umbau vom ATmega32 zum ATmega644P


Das AVR-NET-IO Board wird standardmäßig mit einem ATmega32 ausgeliefert. Beim Einsatz von Ethersex auf dem AVR-NET-IO Board wird der 32KB große Flash-Speicher des ATmega32 sehr schnell zu klein. Indem Sie den ATmega32 durch den pinkompatiblen ATmega644P austauschen, können Sie den verfügbaren Flash-Speicher auf 64KB erweitern.

Umbau des AVR-NET-IO Boards

Entfernen Sie den ATmega32 vorsichtig aus dem IC-Sockel und setzen anschließend einen ATmega644P Mikrocontroller ein.

Ethersex konfigurieren

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

Starten Sie im Ethersex Quellcodeverzeichnis das grafische Konfigurationsskript.

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

Öffnen Sie das Menü General Setup und wählen darin den Eintrag Target MCU aus. In der angezeigten Liste wählen Sie den Eintrag ATmega644p aus und bestätigen die Auswahl mit Enter.

General Setup  --->
        (ATmega32) Target MCU
                (X) ATmega644p

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

Ethersex kompilieren

Durch den Befehl make übersetzen Sie den Quellcode für den ATmega644P.

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

Fuse-Bits setzen

Im Gegensatz zum ATmega32 (16 Fuse-Bits) besitzt der ATmega644P insgesamt 19 Fuse-Bits die zum High-, Low- und Extended-Fuse-Byte zusammengefasst sind. Für das AVR-NET-IO Board sollten Sie mit dem folgenden Befehl die Fuse-Bits des ATmega644P Mikrocontrollers auf die hexadezimalen Werte 0xFF (Extended-Fuse-Byte), 0xD9 (High-Fuse-Byte) und 0xFF (Low-Fuse-Byte) setzen.

georg@ubuntu1004:~/ethersex-ethersex-f29e0d7$ sudo avrdude -c usbtiny -p m644p -U efuse:w:0xff:m -U hfuse:w:0xd9:m -U lfuse:w:0xff:m

Weitere Informationen zu den Fuse-Bits finden Sie unter www.gtkdb.de/index_18_1044.html.

Funktionstest

Nachdem das Flash-Image erfolgreich in den Flash-Speicher des Mikrocontrollers geschrieben und die Fuse-Bits gesetzt wurden, trennen Sie die Spannungsversorgung und den USBtiny In-System Programmer vom AVR-NET-IO Board. Anschließend verbinden Sie das AVR-NET-IO Board mit Ihrem Netzwerk und schließen die Stromversorgung wieder an.

Für einen ersten Funktionstest können Sie jetzt entweder über einen Web-Browser auf das AVR-NET-IO Board zugreifen oder eine Telnet-Verbindung zum Port 2701 aufbauen.

georg@ubuntu1004:~$ telnet 192.168.10.50 2701
Trying 192.168.10.50...
Connected to 192.168.10.50.
Escape character is '^]'.
version
Aug  7 2010 16:55:05


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_1039.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer