Benutzer-Werkzeuge

Webseiten-Werkzeuge


contiki:raven_board

AVR Raven Board

Das AVR Raven Board ist eines der am Besten unterstützen Hardwareboards in Contiki. Es existiert eine sehr gute Softwareunterstützung speziell für dieses Board.

Das Board besitzt 2 Mikrocontroller die über UART miteinander kommunizieren können:

  • ATmega1284P auf dieser MCU läuft Contiki und wird die Netzkommunikation abgewickelt
  • ATmega3290P für die Ansteuerung des Displays, Lautsprecher und der Joystick-Eingabe

Der ATmega3290P muss in der Regel nur einmalig programmiert werden. Nur bei größeren Versionssprüngen in des Contiki-Quellcodes ist eine Neuprogrammierung erforderlich. Der Quellcode für diese MCU befindet sich in /platforms/avr-ravenlcd und ist selbst kein Contiki Projekt!
Der Code sollte am Besten mit einem einfachen make übersetzt und dann auf die MCU geflasht werden. Beim Flashen müssen die Fuses gesetzt werden (im Code enthalten), dies ist sonst in der Regel nicht notwendig.
Details zum Code und Vorgehen finden sich hier Link1 und hier Link 2.

Will man jetzt aus einem Contikiprojekt (läuft auf dem ATmega1284P) mit dem Display kommunizieren, so muss im Makefile des Projekts der entsprechende Kommunikationsprozess hinzugefügt werden:

APPS += raven-lcd-interface
# oder, wenn weitere Prozesse aktiv sind (Trennung per Leerzeichen)
APPS += raven-webserver raven-lcd-interface

Im eignen Code muss jetzt noch die entsprechende Header-Datei eingebunden werden und dann kann man z.B. kleinere Textnachrichten direkt auf dem Display ausgeben:

#include "raven-lcd.h"
 
...
   /* Send some text to the LCD */
      raven_lcd_show_text("Hello");
...

IPv6 Adresse

Wenn mehrere Raven-Boards mit der gleichen Source Datei programmiert werden haben alle die gleiche MAC Adresse. Da die IPv6 Adresse direkt aus der MAC Adresse abgeleitet wird kommt es zu Adresskonflikten. Die MAC Adresse wird im EEPROM gespeichert und kann daher ohne erneutes Übersetzen des Projekts geändert werden. Dazu kann raven_1284.eep modifiziert werden. Anschließend kann die Datei mit

avrdude -p m1284p -c jtag2 -P usb -U flash:w:raven_1284.hex -U eeprom:w:raven_1284.eep 

neu geschrieben werden.

:!: Der Vorgang wird fehlschlagen, weil die Prüfsumme in der Datei nach der Änderung falsch ist. Avrdude wird aber die korrekte Prüfsumme mitteilen. Diese muss dann in die Datei geschrieben werden und anschließend kann die Datei erfolgreich geflasht werden.

Editieren der EEPROM-Datei

Die eep Datei kann man sich mit xxd, hexdump oder od anzeigen lassen. Folgender Link erklärt, wie sich die Datei mit vi bearbeiten lässt. http://www.kevssite.com/2009/04/21/using-vi-as-a-hex-editor/

Diese Website verwendet Cookies. Durch die Nutzung der Website stimmen Sie dem Speichern von Cookies auf Ihrem Computer zu. Außerdem bestätigen Sie, dass Sie unsere Datenschutzbestimmungen gelesen und verstanden haben. Wenn Sie nicht einverstanden sind, verlassen Sie die Website.Weitere Information
contiki/raven_board.txt · Zuletzt geändert: 2017/01/24 18:49 von 127.0.0.1