DinusExperience

Aus Ethersex_Wiki
Wechseln zu: Navigation, Suche

Ziel dieses Projekt

  • mal mit avr's anfangen und verstehen

AVR hardware umgebung

  • Programmer: Atmel Evaluations-Board Version 2.0.1
  • avr-net-io
  • atmega644
  • geliefert von http://www.pollin.de

Software umgebung

Hilfe

Problem ponyseriell interface auf das Atmel Evaluations-Board mit ein usb-rs232 konverter

  • baudrate /dev/ttyUSB0 auf 9600 8N1
  • avrdude -p m644 -c ponyser -P /dev/ttyUSB0 -t (avrdude in terminal mode)
  • verbindung mit den atmega644 kan fuse bits lesen usw. (zb. r lf gibt das low fuse aus sehe manual avrdude)
  • aber avrdude bleibt haengen bei flaschen mit /dev/ttyUSB0 als interface
  • ersatz durch ein kabel an /dev/ttyS0
  • baudrate /dev/ttyS0 auf 9600 8N1
  • avrdude -p m644 -c ponyser -P /dev/ttyS0 -U flash:w:ethersex.hex -v
  • lauft dann problemlos durch
  • usb-rs232 mit den rs232 von board gibt keine problemen.

Fuse bits

  • lese avr manual fuer atmega644 seite 284
  • folgende fuse bits sind es bei mir geworden:
  • lfuse E7
  • hfuse DC
  • efuse FF
  • avrdude -p m644 -c ponyser -P /dev/ttyS0 -U lfuse:w:0xE7:m -U hfuse:w:0xDC:m -U efuse:w:0xFF:m

ecmd interface mit rs232

  • wenn in menuconfig unter general > Enable (serial line) Debugging NICHT aktiviert ist und unter I/O support > usart ecmnd interface aktiviert ist
weil dann den standard einstellung fuer das avr-net-io board mit ein baudrate von 19200 lauft
kann mann mit 
screen /dev/ttyUSB0 19200 8N1
verbindung bekommen ueber das rs232 interface
  • wenn in menuconfig unter General > Enable (Serial Line) Debugging WOHL aktiviert ist und unter I/O support > Usart ecmd interface NICHT aktiviert ist
 weill dann den einstellung fuer das avr-net-io board mit ein baudrate von 115200 lauft
 kann mann mit
 screen 115200 /dev/ttyS0 115200 8N1 
 verbindung bekommen ueber das rs232 interface
  • wenn ein baurate von 19200 oder 115200 nicht passt dann den baudrate in: /protocols/ecmd/via_usart/ecmd_usart.h die gewuenschte baudrate einstellen. Und in menuconfig I/O support > usart ecmd interface aktivieren und General > Enable (Serial Line) Debugging nicht aktivieren.

Port I/O und Ecmd

  • atmega644 hat 4 ports PA PB PC PD
  • PORTNUM ist dan PA=0 PB=1 PC=2 PD=3
  • zb io get port 0 gibt dann die werten von port PA aus

Named Pins und Ecmd

  • in /core/portio/config gibts du pins symbolische namen.
 bsp: PD7 OUTPUT HIGH Verstaerker
 dan kannst du den ecmnd
 pin set Verstaerker on
 an das Ethersex senden, um den pin PD7 zu aktivieren
 pin set Verstaerker off
 schaltet den Verstaerker, bzw. pin PD7, wieder aus

Einstellung von netzwerk aendern

 zb mit
 ip 10.0.0.180
 das ip aendern
 netmask 255.255.0.0
 das netmask aendern
 gw 10.0.0.222
 das gw aendern
 und dann ein
 reset
 eingeben
 dann werden erst die aenderungen uebernommen !