Benutzer-Werkzeuge

Webseiten-Werkzeuge


led_io_24

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
led_io_24 [2017/02/09 23:01] – [LED Anschluss:] gehrneled_io_24 [2017/02/24 22:53] (aktuell) – [Firmware] fichtelbahn
Zeile 1: Zeile 1:
 ====== LED-IO-24 ====== ====== LED-IO-24 ======
  
-**BiDiB-Knoten mit dem Schwerpunkt "Beleuchten""Input" und "Belegtmeldung"**+**BiDiB-Knoten mit dem Schwerpunkt "Beleuchten, Eingang und Belegtmeldung"**
  
-{{:led_io_24:led_io_24_fertigbaustein_1.jpg?200|}}+{{:led_io_24:led_io_24_fertigbaustein_1.jpg?400|}}
  
-Die **LED_IO_24** ist eine Weiterentwicklung der MoBaList.+Die **LED_IO_24** ist eine Weiterentwicklung des MoBaList.
 Die LED_IO_24 ist ausgestattet mit einem BiDiB-Interface und besitzt 24 Ausgänge/Eingänge, die frei über das BiDiB-Wizard Tool konfiguriert werden können. Die 24 Ausgänge/Eingänge erlauben den Anschluss von LEDs für Beleuchtungsaufgaben. Als Eingang konfiguriert können sie als Eingänge verwendet werden oder als Belegtmelder konfiguriert werden. Die LED_IO_24 ist ausgestattet mit einem BiDiB-Interface und besitzt 24 Ausgänge/Eingänge, die frei über das BiDiB-Wizard Tool konfiguriert werden können. Die 24 Ausgänge/Eingänge erlauben den Anschluss von LEDs für Beleuchtungsaufgaben. Als Eingang konfiguriert können sie als Eingänge verwendet werden oder als Belegtmelder konfiguriert werden.
  
Zeile 21: Zeile 21:
  
  
----- 
- 
- 
-===== LED Anschluss: ===== 
-  
-Die 24 LED Ausgänge verfügen auf dem Modul über je einen internen 100R Vorwiderstand. Die LEDs können somit direkt an die Baugruppenausgangspins der Stiftleisten K5, K6 und K7 angeschlossen werden. Dabei kommt die Kathode der LED jeweils an den zum Platinrand zeigenden Pin von K5 - 7 und die Anode zum innen liegenden Anschlusspin. 
- 
-Die LED Betriebsspannung auf der Baugruppe beträgt 4,5V. Damit lassen sich sämtliche gängigen LEDs ohne zusätzliche externe Widerstände direkt an der Baugruppe anschließen. Die internen 100R Vorwiderstände je Ausgang, schützen diesen auch bei einem direkten Kurzschluss der Ausgangspins vor Zerstörung. 
- 
-ACHTUNG, an dieser Baugruppe kann je Ausgang genau eine LED angeschlossen werden. Dabei wird die LED direkt an die beiden Ausgangspins angeschlossen. Sie darf NICHT an eine weitere externe Betriebsspannung angeschlossen werden!  
- 
-{{:led_io_24:led_io_24_leds.png?200|}} 
- 
-Alternativ lassen sich die 24 LED Ausgänge einzeln umschalten damit ein Anschluss gegen die Anode erfolgt. In diesem Fall wird die 5V Spannung des Bausteins an einer geeigneten Stelle abgegriffen (bspw. Pin 2 des ISP) und mit der Anode der LED verbunden. Die Kathode wird dann mit dem inneren Anschluss des jeweiligen Ports verbunden. Über CV 180 - 182 wird dann definiert dass die LED gegen die 5V geschaltet wird. 
 ---- ----
  
Zeile 40: Zeile 26:
 ===== Firmware ===== ===== Firmware =====
  
-Die Beschreibung zur Einstellung der Fuses des Prozessors und die Installation der Firmware ist im Unterabschnitt zu finden. Dies wird normalerweise nicht benötigt, da Updates über den BiDiB-Wizard eingespielt werden können. +Die Firmware (bestehend aus Bootloader und eigentlicher Firmware). Der SMD vorbestückte Bausatz ist vollständig vorprogrammiert, es sind keine Anpassungen an der Firmware notwendig. Ein Update der Firmware kann mit Hilfe dieser Downloaddatei in den BiDiB-Tools durchgeführt werden.
- +
-[[http://forum.opendcc.de/wiki/doku.php?id=led_io_24:led_io_24_firmwaredesc|Firmware Beschreibung]] +
- +
-Die Firmware (bestehend aus Bootloader und eigentlicher Firmware) ist im Unterabschnitt zu finden.+
  
 [[http://forum.opendcc.de/wiki/doku.php?id=led_io_24:led_io_24_firmware|Firmware Download]] [[http://forum.opendcc.de/wiki/doku.php?id=led_io_24:led_io_24_firmware|Firmware Download]]
  
 +Die Beschreibung zur Einstellung der Fuses des Prozessors und die Installation der Firmware ist im Unterabschnitt zu finden. Dies wird normalerweise nicht benötigt, da Updates über den BiDiB-Wizard eingespielt werden können und alle Einstellungen vom Hersteller vorprogrammiert sind.
  
 +[[http://forum.opendcc.de/wiki/doku.php?id=led_io_24:led_io_24_firmwaredesc|Firmware Beschreibung]]
 ---- ----
  
-=====Fuses===== 
  
-====Fuses für Atmega644====+=====CV===== 
 +Über CVs können einige Einstellungen für die LED_IO_24 vorgenommen werden.
  
-Um die MobaList64 zu flashen müssen folgende Fuses gesetzt werden (Quelle Forum): +Die CV  171-173 und 177-182 definieren mit jedem Bit eine Einstellung für einen Port.
-<code> +
-BODLEVEL : Brown-out detection at VCC=4,3V +
-SPIEN: aktiviert +
-EESAVE: aktiviert +
-CKDIV8: deaktiviert +
-BOOTSZ: Boot Flash size=4096 words Boot address=$7000 +
-SUT CKSEL: Ext.Crvstal Osc. 8.0- MHz: Start-up time: 1KCK+65ms+
  
-EXTENDED: 0xFC +^  CV  ^  Mode  ^  Beschreibung  ^ 
-HIGH: 0xD1 +|  168  | ro | Richtung für Portgruppe 1  | 
-LOW: 0xCF +|  169  | ro | Richtung für Portgruppe 2  | 
-</code>+|  170  | ro | Richtung für Portgruppe 3  | 
 +|  171  | rw | Input als Belegtmelder für Portgruppe 1  | 
 +|  172  | rw | Input als Belegtmelder für Portgruppe 2  | 
 +|  173  | rw | Input als Belegtmelder für Portgruppe 3  | 
 +|  174  | rw | Port Aktiv Low oder High für Portgruppe 1  | 
 +|  175  | rw | Port Aktiv Low oder High für Portgruppe 2  | 
 +|  176  | rw | Port Aktiv Low oder High für Portgruppe 3  | 
 +|  177  | rw | Pullup für Portgruppe 1  | 
 +|  178  | rw | Pullup für Portgruppe 2  | 
 +|  179  | rw | Pullup für Portgruppe 3  | 
 +|  180  | rw | Lichtausgang auf UB+ oder GND für Portgruppe 1  | 
 +|  181  | rw | Lichtausgang auf UB+ oder GND für Portgruppe 2  | 
 +|  182  | rw | Lichtausgang auf UB+ oder GND für Portgruppe 3  | 
 +|  183  | rw | Entprellzeit für Eingang oder Belegtmelder in 100 uS Einheit 
 +|  184  | rw | Haltezeit bei Belegtmeldung in 20 mS Einheiten  |
  
-{{:mobalist:mobalist644fuses.jpg|}}+Modero=readonly; rw=read/write
  
------ +Für den BiDiB-Wizard ist hier ein Konfigurationsfile für die CV verfügbar (ZIP entpacken und in das entsprechende Verzeichnis vom BiDiB-Wizard kopieren):
-=====Programmierung mit DIAMEX ALL-AVR===== +
-Die Programmierung der MoBaLiSt mit dem DIAMEX ALL-AVR funktioniert nur mit avrdude. Nachfolgendend sind die Schritte beschrieben:+
  
-=== libusb-win32 installieren ===  +{{:led_io_24:bidibcv-13-127.zip|}}
-Damit der DIAMEX ALL-AVR von avrdude erkannt wird muss folgendes installiert werden.: +
- +
-  * libusb-win32: libusb-win32-bin-1.2.6.0.zip   +
-    * Download unter http://sourceforge.net/projects/libusb-win32/files,  +
-    * Installationsanleitung hier: http://sourceforge.net/apps/trac/libusb-win32/wiki +
-  * avrdude-5.11:  +
-    * Download unter http://download.savannah.gnu.org/releases/avrdude,  +
-    * Manual: http://www.nongnu.org/avrdude/user-manu ... ude_4.html +
- +
-Wenn die libusb-win32 Installation funktioniert hat gibt es im DeviceManager den Eintrag libusb-win32 devices und dort drunter den AVRISP mkII. +
- +
-:!: Falls das AVR Studio nicht installiert ist muss der Jungo-Treiber installiert werden! +
- +
-Meine Schritte zum programmieren der MobaList: +
- +
-<code> +
-// erase device +
-avrdude -p m32 -c avrisp2 -P usb -e +
- +
-// flash +
-avrdude -p m32 -c avrisp2 -P usb -U flash:w:led_io_24.hex +
- +
-// eeprom +
-avrdude -p m32 -c avrisp2 -P usb -U eeprom:w:led_io_24.eep +
- +
-// serien nummer +
-avrdude -p m32 -c avrisp2 -P usb -U eeprom:w:LED_IO_24_V0D_XXXXXXXX.eep +
-</code> +
- +
- +
-Es gibt im Diamex Forum dazu eine Anleitung: +
-http://forum.diamex.de/content.php?32-ALL-AVR-ISP-Programmer +
- +
-Im Dokument erfos-isp2.pdf (http://forum.diamex.de/attachment.php?attachmentid=38&d=1343918313) stehen die Schritte auch nochmal drin. +
- +
- +
-=====Programmierung mit Ponyprog und Selbstbauadapter===== +
- +
-Diese Anleitung bezieht sich auf den seriellen Ponyprog Adapter aus dem [[https://shop.dcc-versand.de/bauteile-fuer-ponyprog-adapter-p-258.html|Opendcc Versand von Hanno Bolte]]. +
- +
- +
-Der Adapter kann natürlich auch selbst gebaut werden, notwendig sind: 3x Widerstand 1kOhm, 3x Z-Diode 4,7V, 1x Kondensator 1nF, 1x DB9 Buchse, ein kleines Stück 6-poliges Flachbandkabel und die dazu passende Pfostenbuchse 2x3 mit Rastermaß 2,54mm. +
- +
- +
-**Achtung: Dieser Adapter ist nur für Prozessoren geeignet, die mit 5V betrieben werden, die meisten Baugruppen aus dem BidiB Projekt arbeiten mit einer Prozessorspannung von 3,3V. Beim Versuch diese Prozessoren damit zu programmieren könnten sie beschädigt oder zerstört werden!** +
- +
-Nach meinem Wissen sind aus dem BidiB Projekt nur die Baugruppen Mobalist, LED_IO_24, S88 BidiB Bridge und DCC-Pola mit 5V Prozessoren ausgestattet. +
- +
-Für die Programmierung mit Ponyprog wird natürlich auch das Programm selbst benötigt. +
- +
-Windows User mit 9x/ME/NT/2000/XP können dieses direkt von der [[http://www.lancos.com/ppwin95.html|Seite des Programmierers]] herunterladen. +
- +
-Für Windows 7 (andere neue Betriebssysteme müßte jemand testen) benötigt man eine [[http://ponyprog.sourceforge.net/phorum/read.php?2,2249|inoffizielle, gepatchte 64 Bit Version mit einem eigenen Treiber für den Zugriff auf die serielle Schnittstelle]]. +
- +
-Nach der erfolgreichen Installation muß man erst ein paar Settings vornehmen. +
-Menü Setup => Interface Setup. Hier die korrekte serielle Schnittstelle einstellen, SI-Prog API auswählen und den Haken bei Invert Reset setzten. Mit ok abspeichern. Auch sollte man kurz unter Setup => Calibration eine Kalibration der Schnittstelle durchführen. Das muß nur beim 1. mal gemacht werden. +
- +
-Nun wird es interessant. +
-Der korrekte Prozessor wird im Menü Device => AVR micro => ATmega32 ausgewählt. +
-Nun den Mobalist mit dem Adapter verbinden und mit Strom versorgen. Dabei sollte die Power LED leuchten. Außer der Stromversorgung und dem seriellen Kabel sollten keine weiteren Verbindungen bestehen. +
- +
-Die Config Bits werden gesetzt: Command => Security and Configuration Bits, dort die Häkchen wie gezeigt setzen. +
- +
-{{:undefined:config_bits_mobalist_ponyprog.jpg?600|}} +
- +
-Nach doppelter Kontrolle mit Write auf den Prozessor schreiben. +
- +
-Vor dem Programmieren wird der Prozessor mit CTRL-E bzw. im Menü mit Command => Erase komplett gelöscht. +
- +
-Nun folgende Dateien bereithalten: +
- +
-1.) Firmware z.B. mobalist_MOBALED_2.01.10.000.hex +
- +
-2.) EEPROM Daten z.B. mobalist_MOBALED_2.01.10.001.hex +
- +
-3.) Seriennummer z.B. LED_IO_24_V0D_P6C00xyza.001.eep (xyza ist die eigentliche Seriennummer). +
- +
- +
-Das Firmwarefile wird als erstes eingespielt.  +
-Daten im Menü File => Open Program (FLASH) File auswählen, dann mit Command (Write Program (FLASH) schreiben. Die Sicherheitsabfrage mit Yes bestätigen. Dann etwas warten, am Ende wird die geschribene Datei noch mit der am Prozessor verglichen. +
-Als nächstes folgt das EEPROM File, da Ponyprog aber nur den ganzen EEPROM auf einmal schreiben kann muß man dort erst noch die korrekte Seriennummer eintragen.  +
-Würde man die Files nacheinander (Firmware, EEPROM, Seriennummer) schreiben, so überschreibt die Seriennummer das komplette EEPROM wieder. Ergebnis ist ein Mobalist, der sich zwar korrekt am BidiB Bus meldet, sich sont aber eigenartig verhält (alle Feature Register stehen auf 255). +
- +
-Das EEPROM File im Menü => Open Data (EEPROM) File auswählen. Evtl. muß rechts unten die Dateierweiterung *.eep ausgewählt werden. +
-Nun stellt man die Seriennummer-Config im Menü Utility => SerialNumber Config wie folgt ein: +
- +
-{{:serial_number_config_ponyprog.jpg?200 |}} +
- +
-Address: 0x83FE +
- +
-Size: 2 +
- +
-Value: Seriennummer dezimal +
- +
-Haken bei Auto Increment herausnehmen +
- +
- +
-Die dezimale Seriennummer kann man errechnen, indem man das File MobaLiSt_V0D_P6C00xyza.001.eep nimmt und im Windows Taschenrechner den Programmierer Modus auswählt. Dann links auf Hex klicken und die 4 Stellen (xyza) aus dem Dateinamen eingeben. Habe das hier exemplarisch mit der Seriennummer AAAA gemacht. Dann auf Dez klicken und schon erhält man die dezimale Seriennummer, in diesem Fall 43690. Die Nummer bei Value eingeben. +
- +
-Um die Nummer nun im EEPROM Bereich zu speichern im Menü auf Utility => Set SerialNumber oder mit CTRL-N. +
- +
-Jetzt kann das EEPROM korrekt beschrieben werden: Menü Command => Write Data (EEPROM). +
- +
-Zum Schutz des EEPROM vor Überschreiben bei einem Prozessor-Update sollte man jetzt nochmals in den Config Bits eine Änderung vornehmen: +
-Menü Command ⇒ Security and Configuration Bits, dort den Haken bei EESAVE setzen. +
- +
-FERTIG. +
-Nach dem Abstecken des Programmierkabels sollte die rote LED am Mobalist flackern, wenn das Kabel zum BidiB angesteckt wird müssen auch die grüne Bus-LED und die orange LED leuchten.+
  
 ---- ----
- 
 ===== Selbstbauanleitung ===== ===== Selbstbauanleitung =====
  
Zeile 192: Zeile 72:
  
 [[http://www.opencarsystem.de/download/files/bidib/led_io_24/LED_IO_24_Aufbauanleitung.zip|LED_IO_24_Aufbauanleitung]] [[http://www.opencarsystem.de/download/files/bidib/led_io_24/LED_IO_24_Aufbauanleitung.zip|LED_IO_24_Aufbauanleitung]]
- 
- 
led_io_24.1486677682.txt.gz · Zuletzt geändert: 2017/02/09 23:01 von gehrne

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki