DinusExperience: Unterschied zwischen den Versionen

Aus Ethersex_Wiki
Wechseln zu: Navigation, Suche
(Problem ponyseriell interface auf das Atmel Evaluations-Board mit ein usb-rs232 konverter)
(ecmd interface mit rs232)
Zeile 38: Zeile 38:
 
* avrdude -p m644 -c ponyser -P /dev/ttyS0 -U lfuse:w:0xE7:m -U hfuse:w:0xDC:m -U efuse:w:0xFF:m
 
* 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 ==
+
== ecmd interface via rs232/ USART ==
* wenn in menuconfig unter general > Enable (serial line) Debugging NICHT aktiviert ist und unter I/O support > usart ecmnd interface aktiviert ist  
+
* wenn in menuconfig unter general > Enable (serial line) Debugging NICHT aktiviert ist, jedoch unter I/O support > usart ecmnd interface aktiviert ist wird die baudrate 19200 verwendet:
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
 
  screen /dev/ttyUSB0 19200 8N1
verbindung bekommen ueber das rs232 interface
+
* wenn in menuconfig unter General > Enable (Serial Line) Debugging aktiviert ist und unter I/O support > Usart ecmd interface NICHT wird die baudrate 115200 verwendet: (Quarz > 16Mhz, kein teensy usw.)
* wenn in menuconfig unter General > Enable (Serial Line) Debugging WOHL aktiviert ist und unter I/O support > Usart ecmd interface NICHT aktiviert ist
+
screen /dev/ttyUSB0 115200 8N1
  weill dann den einstellung fuer das avr-net-io board mit ein baudrate von 115200 lauft
+
* wenn eine baurate von 19200 oder 115200 nicht passt, weil zB. anderer Quarz oder AVR, dann kann die baudrate in: /protocols/ecmd/via_usart/ecmd_usart.h bzw. /core/debug.h auf den gewuenschten Wert eingestellt werden.
  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 ==
 
== Port I/O und Ecmd ==

Version vom 16. Juni 2009, 12:42 Uhr

Ziel dieses Projekts

  • mal mit avr's anfangen und verstehen und die "closed software" von pollin durch "open source software" ersetzen

AVR hardware umgebung

  • Programmer: Atmel Evaluations-Board Version 2.0.1 ist fuer avrdude ein pony seriell also: -c ponyser
  • avr-net-io
  • atmega644
  • geliefert von http://www.pollin.de

Software umgebung

Hilfe

  • Die Community ist hier zu finden,
  • dort ist folgendes mitgeteilt/besprochen worden:

Problem mit ponyprog auf dem Atmel Evaluations-Board in Verbindung mit einem usb-rs232 konverter

  • baudrate /dev/ttyUSB0 auf 9600 8N1
avrdude -p m644 -c ponyser -P /dev/ttyUSB0 -t  (avrdude in terminal mode)
  • verbindung mit dem atmega644, kann fuse bits lesen usw. (zb. r lf gibt das low fuse aus sehe manual avrdude)
  • aber avrdude bleibt beim Versuch mit /dev/ttyUSB0 als interface zu flaschen haengen
  • 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
  • laeuft dann problemlos durch
  • Das usb-rs232 interface funktioniert jedoch mit der usart vom board tadellos.

Fuse bits

ecmd interface via rs232/ USART

  • wenn in menuconfig unter general > Enable (serial line) Debugging NICHT aktiviert ist, jedoch unter I/O support > usart ecmnd interface aktiviert ist wird die baudrate 19200 verwendet:
screen /dev/ttyUSB0 19200 8N1
  • wenn in menuconfig unter General > Enable (Serial Line) Debugging aktiviert ist und unter I/O support > Usart ecmd interface NICHT wird die baudrate 115200 verwendet: (Quarz > 16Mhz, kein teensy usw.)
screen /dev/ttyUSB0 115200 8N1
  • wenn eine baurate von 19200 oder 115200 nicht passt, weil zB. anderer Quarz oder AVR, dann kann die baudrate in: /protocols/ecmd/via_usart/ecmd_usart.h bzw. /core/debug.h auf den gewuenschten Wert eingestellt werden.

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

  • macht das steuern uebers http einfach und schoen (wenn http server ins menuconfig aktiviert ist).
  • 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 !
   

yport

  • ist ein ethernetz zu rs232 konverter.
 zu erreichen mit http unter portnummer 7970 (oder nc ethersex-ipnummer 7970)
 lauft standard mit 115200 baud
 den baudrate ist unter: ~/protocols/yport/yport.h zu aendern (#define YPORT_BAUDRATE 115200)
 zb. #define YPORT_BAUDRATE 9600 gibt ein baudrate von 9600