Pages: [1]   Go Down
Author Topic: I2C EADOG XL 160-7  (Read 1682 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 33
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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
Logged

Forum Moderator
BZ (I)
Online Online
Brattain Member
*****
Karma: 234
Posts: 20180
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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

Logged

Germany
Offline Offline
Edison Member
*
Karma: 100
Posts: 1218
If you believe something is right, you won't see what's wrong (David Straker).
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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



Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 33
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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ß
Logged

Germany
Offline Offline
Edison Member
*
Karma: 100
Posts: 1218
If you believe something is right, you won't see what's wrong (David Straker).
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Es darf nur entweder
  DOGXL160_HW_BW
oder
  DOGXL160_HW_GR
auskommentiert werden. Nicht beide auf einmal.
 
Grüße,
Oli
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 33
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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ß
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 33
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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ß
Logged

Pages: [1]   Go Up
Jump to: