|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
OpenDCC Dekoder V2Nachbau und ÄnderungenWahrenkörbe bei Reichelt ElektronikAngaben ohne Gewähr
Der fertige AufbauErstinbetriebnahme (elektrisch)Hält man sich an die vorgegebene Aufbauanleitung und die hier gemachten Hinweise (TODO), so hat man in weniger als einer Stunde einen fertigen Aufbau der Dekoderplatine vor sich liegen. Bis auf die Bestückung des Prozessors bietet die Baugruppe eine sehr gute Nachbausicherheit. Ich selber habe den Prozessor bei einem professionellen Bestücker auflöten lassen und bin mit dem Resultat mehr als zufrieden – besser hätte ich es mit der Hand nicht machen können. Die Inbetriebnahme gestaltet sich ebenfals als sehr einfach. ProzessorkonfigurationNun wird der Zugriff auf den Prozessor über ISP geprüft. Hierzu empfehle ich die Nutzung des AVRISP-mkII Clone auf einem USBprog Adapter und das Programmierwerkzeug avrdude. Im ersten Schritt wird die Gerätesignatur des verbauten AVR ATMEGA 8515 ausgelesen (0x1E 0x93 0x06). Damit kann man sicherstellen, dass der Zugriff über ISP funktioniert. Auf der Kommandozeile gibt man folgendes ein: [user@host]> avrdude -c avrispv2 -P usb -B 8 -p m8515 avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.01s avrdude: Device signature = 0x1e9306 avrdude: safemode: Fuses OK avrdude done. Thank you. [user@host]> _ Zu beachten ist der Parameter -B 8. Damit wird der Firmware im USBprog mitgeteilt, dass die ISP Taktrate von etwa 125kHz eingestellt werden soll. Das ist bei Fabrik neuen Prozessoren unbedingt zu beachten, da diese immer auf eine interne Taktversorgung mit 1MHz ausgelegt sind und der ISP Takt niemals größer als 1/4 des Systemtaktes sein darf, also in diesem Fall nicht gößer als 1MHz / 4 = 250kHz.
Für die Berechnung der FUSE Bits empfehle ich den online AVR Fuse Calulator von Mark Hämmerling. Nach der Auswahl des richtigen Prozessors und Änderung der notwendigen Werte erhält man dann ganz nunten links den Wert 0x04 für die LOW und 0xD9 für die HIGH FUSE Bits. Rechts daneben steht eine fertige Parameterliste für avrdude: [user@host]> avrdude -c avrispv2 -P usb -B 8 -p m8515 \ > -U lfuse:w:0x04:m -U hfuse:w:0xd9:m avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.01s avrdude: Device signature = 0x1e9306 avrdude: reading input file "0x04" avrdude: writing lfuse (1 bytes): Writing | ################################################## | 100% 0.01s avrdude: 1 bytes of lfuse written avrdude: verifying lfuse memory against 0x04: avrdude: load data lfuse data from input file 0x04: avrdude: input file 0x04 contains 1 bytes avrdude: reading on-chip lfuse data: Reading | ################################################## | 100% 0.00s avrdude: verifying ... avrdude: 1 bytes of lfuse verified avrdude: reading input file "0xd9" avrdude: writing hfuse (1 bytes): Writing | ################################################## | 100% 0.00s avrdude: 1 bytes of hfuse written avrdude: verifying hfuse memory against 0xd9: avrdude: load data hfuse data from input file 0xd9: avrdude: input file 0xd9 contains 1 bytes avrdude: reading on-chip hfuse data: Reading | ################################################## | 100% 0.00s avrdude: verifying ... avrdude: 1 bytes of hfuse verified avrdude: safemode: Fuses OK avrdude done. Thank you. [user@host]> _ TODO: Welche Software und woher. Für einen ersten Test wird … [user@host]> avrdude -c avrispv2 -P usb -B 1 -p m8515 \ > -U eeprom:w:OpenDecoder2.eep:a avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.01s avrdude: Device signature = 0x1e9306 avrdude: verifying eeprom memory against OpenDecoder2.eep: avrdude: load data eeprom data from input file OpenDecoder2.eep: avrdude: input file OpenDecoder2.eep auto detected as Intel Hex avrdude: input file OpenDecoder2.eep contains 279 bytes avrdude: reading on-chip eeprom data: Reading | ################################################## | 100% 0.58s avrdude: verifying ... avrdude: 279 bytes of eeprom verified avrdude: safemode: Fuses OK avrdude done. Thank you. [user@host]> _ [user@host]> avrdude -c avrispv2 -P usb -B 1 -p m8515 \ > -U flash:w:OpenDecoder2.hex:a avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.01s avrdude: Device signature = 0x1e9306 avrdude: verifying flash memory against OpenDecoder2.hex: avrdude: load data flash data from input file OpenDecoder2.hex: avrdude: input file OpenDecoder2.hex auto detected as Intel Hex avrdude: input file OpenDecoder2.hex contains 7216 bytes avrdude: reading on-chip flash data: Reading | ################################################## | 100% 0.47s avrdude: verifying ... avrdude: 7216 bytes of flash verified avrdude: safemode: Fuses OK avrdude done. Thank you. [user@host]> _
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Copyright © 2000-2021 by Li-Pro.Net · info (at) li-pro (dot) net · Tel.: +49 (0) 3641 / 21 23 02 · cms: phpwcms | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||