I2C EADOG XL 160-7

Hallo Gemeinde habe ein DOGXL 160-7 geschenkbekommen. Nach einigen Versuchen mit dem Ardu krieg ich aber nichts hin. Gibt es eine Libery für das DOGXL oder ist das die standart i2c die ich nehmen kann. Muss man einen ini string an das Display schicken? wenn ja in welcher reihen folge Gruß Jürgen

Du mußt die Pins D6 und BM0 auf H setzen um I2C zu aktivieren. Da das Display mit 3,3V funktioniert muß der I2C Bus auch mit 3,3V funktionieren (Pullupwiderstände auf 3,3V und Pegelwandlung 5V I2C Arduino auf 3,3V I2C Display oder Du nimmst eine 3,3V Version von Arduino. Die I2C adressen findest Du auf Seite 5 des http://datasheet.elcodis.com/pdf/21/73/217369/ea_dogxl160e-7.pdf

Die Initialisation und richtige Programmierung muß Du sorgen.

http://code.google.com/p/dogm128/ könnte für Dich hilfreich sein auch wenn ich verstanden habe daß SPI Interface verwendet wird.

Viele Grüße Uwe

Vor allem die Hintergrundbeleuchtung vom DOGXL160 hat mich etwas Zeit gekostet. Ansonsten würde ich persönlich die SPI Schnittstelle empfehlen. Da SPI von der genannten DOGM128 Library nur in eine Richtung benutzt wird, kann die Pegelwandlung mit einem einfachen (74HC)4050 erfolgen, siehe auch den Schaltplan hier: http://code.google.com/p/dogm128/wiki/dogxl160

Wenn man gerade keinen 4050 zur hand hat, kann man versuchen die 5V vom Arduino auch mit widerständen herunterzuspannen, das klappt aber mitunter nicht besonders zuverlässig.

Die Programmierung des DOGXL160 erfordert in der Tat einiges an Initalisierung und ist wegen des knappen RAMs im Arduino nicht ganz einfach: Das DOGXL160 hat ca 4KB Bildschirmspeicher, der gefüllt werden will. Dafür hat man dann aber auch richtig Platz auf dem Display (siehe hier: http://arduino.cc/forum/index.php/topic,71940.0.html) und die Graustufen sind auch sehr schön (siehe Schachbrett via oben genannten Link).

Oliver

So habe jetzt das problem das ich das display beim programmieren das display nicht aktivieren kann inder lib datei ist es freigegeben und trotzdem gibt es fehler beim konverteiren das ich das display kennlich machen soll. kennt da einer eine lösung. /*

dogm128.h

(c) 2010 Oliver Kraus (olikraus@gmail.com)

This file is part of the dogm128 library.

The dogm128 library is free software: you can redistribute it and/or modify it under the terms of the Lesser GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

The dogm128 library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the Lesser GNU General Public License for more details.

You should have received a copy of the Lesser GNU General Public License along with dogm128. If not, see http://www.gnu.org/licenses/.

Controller SPI Interface Selection DOG_SPI_USI Universal Serial Interface of ATTINY controller DOG_SPI_ATMEGA ATMEGA SPI Interface DOG_SPI_ARDUINO SPI Interface for ATMEGA within Arduino Environment nothing defined defaults to DOG_SPI_ARDUINO

Normal or Revers Display Mode DOG_REVERSE Display output rotated by 180 degree nothing defined No rotation of the output

Memory Usage DOG_DOUBLE_MEMORY Double size of the internal page memory. Will give some speed improvement nothing defined Minimal memory usage

Display Selection one of the following constants could be defined: DOGM128_HW DOGM128 Display DOGS102_HW DOGS102 Display DOGM132_HW DOGM132 Display DOGXL60_HW DOGXL160 Display ADA_ST7565P_HW Adafruit Graphics LCD based on the ST7565P

nothing defined error message

*/

ifndef _DOGM128_H

define _DOGM128_H

/=========================================================================/ /* Begin: User Configuration / /=========================================================================*/

//#define DOG_REVERSE /* uncomment for 180 degree rotation */

define DOG_DOUBLE_MEMORY /* uncomment for speed improvement */

//#define DOGM128_HW /* uncomment for the DOGM128 display / //#define DOGS102_HW / uncomment for the DOGS102 display / //#define DOGM132_HW / uncomment for the DOGM132 display */

define DOGXL160_HW_BW /* uncomment for the DOGXL160 display, black & white mode */

define DOGXL160_HW_GR /* uncomment for the DOGXL160 display gray level mode */

//#define ADA_ST7565P_HW /* uncomment for the Adafruit ST7565P display. / / Note: if you are using a wiring scheme different from http://www.ladyada.net/learn/lcd/st7565.html then you will need to change the pin number accordingly (lower in this same file, look for PIN_RST) */

define ES13BB0_HW /* uncomment for ES13BB0 128x64 display */

/=========================================================================/ /* End: User Configuration / /=========================================================================*/

if !defined ADA_ST7565P_HW && !defined DOGM128_HW && !defined DOGM132_HW && !defined DOGS102_HW && !defined DOGXL160_HW_BW && !defined DOGXL160_HW_GR

  • print error message, please uncomment one of the displays above */ #error LCD model is not defined. Define your LCD in dogm128.h. #endif

// prevent duplicate definition //#if defined DOGM128_HW //#if defined DOGM132_HW //#undef DOGM132_HW //#endif //#if defined DOGM128_W //#undef DOGM128_W //#endif //#endif //#if defined DOGM132_HW && defined DOGS102_HW

//#undef DOGS102_HW //#endif

include "dogmpgm.h"

include "dogmfont.h"

/* Arduino Pin assignments have been moved to dogmspi.c */

.......

Gruß

Es darf nur entweder DOGXL160_HW_BW oder DOGXL160_HW_GR auskommentiert werden. Nicht beide auf einmal.

Grüße, Oli

habe nur eins ausdokumentiert bekomme aber immer noch diesen fehler.

In file included from D:\arduino-0022\arduino-0022\libraries\Dogm1/Dogm.h:6, from Breakorino.cpp:51: D:\arduino-0022\arduino-0022\libraries\Dogm1/utility/dogm128.h:91:2: error: #error LCD model is not defined. Define your LCD in dogm128.h. In file included from D:\arduino-0022\arduino-0022\libraries\Dogm1/Dogm.h:6, from Breakorino.cpp:51: D:\arduino-0022\arduino-0022\libraries\Dogm1/utility/dogm128.h:178: error: 'DOG_WIDTH' was not declared in this scope Gruß

so habe eine andere dogm128.h datei genommen jetzt geht es. jetzt kommt die aufgabe mit dem text das der auf dem display erscheint. Gruß