Bascom Ansteuern eines Nokia7110-GLCD

Kokusnuss

Neues Mitglied
09. Jan. 2011
41
0
0
Sprachen
  1. BascomAVR
Hallo zusammen, :hello:

hat schon einmal jemand Erfahrung mit dem Ansteuern von GLCD’s via einen SED1565-Controller, oder KS0713 (der fast identisch sein soll) gemacht? Ich habe Probleme etwas auf dem Display darzustellen. Ich schaffe nicht einmal einen einzelnen Pixel „high“ zu setzen. :banghead:Ich würde mich sehr über eure Hilfe freuen.

Hier ein Link zu dem Display:
http://serdisplib.sourceforge.net/ser/sed1565.html
Hier das Datenblatt von dem SED1565:
http://serdisplib.sourceforge.net/ser/doc/sed1565.pdf

Vielleicht noch kurz zu meinem Hardwareaufbau:
DSC02187.jpgDSC02188.jpg

Mein bisheriger Quellcode
Code:
$regfile = "m8def.dat"
$crystal = 800000

'Betriebsspannung des Nokiadisplays = 2,8 VDC über LM317T
'alle Eingänge zur Anzeige sind über 1kOhm Widerstände verbunden mit den Ports des Atmega8
'die Hintergrundbeleuchtung wird geschaltet von Portd.3  über einen 100 Ohm Widerstand  (funktioniert)

'- - - - - - - - - - - - - - - - - - - - -
'    Ein- und Ausgänge deklarieren
'- - - - - - - - - - - - - - - - - - - - -

 Config Portb.0 = Output                                    'Nok_Reset
 Config Portb.2 = Output                                    'Nok_CS
 Config Portb.3 = Output                                    'Nok_Dat
 Config Portb.5 = Output                                    'Nok_SCKL

 Config Portc.0 = Output                                    'LED
 Config Portc.4 = Output                                    'Nok_D_C

 Config Portd.3 = Output                                    'Nok_Bel

 Nok_reset Alias Portb.0                                    'reset (active_low)
 Nok_cs Alias Portb.2                                       'data enable
 Nok_dat Alias Portb.3                                      'data
 Nok_sckl Alias Portb.5                                     'clock
 Nok_d_c Alias Portc.4                                      'low = controldata/high = displaydata [A0]
 Nok_bel Alias Portd.3

 Led Alias Portc.0

 Nok_dat = 0
 Nok_sckl = 0
 Nok_d_c = 0
 Nok_cs = 0
 Nok_reset = 1
 Nok_bel = 1

 Dim Datenmerker As Byte

 Do

   'Display ON
   Nok_d_c = 0
   Datenmerker = &B10101111
   Shiftout , Nok_dat , Nok_sckl , Datenmerker , 0 , 0
   nop

   'Display all points ON
'   Nok_d_c = 0
'   Datenmerker = &B10100101
'   Shiftout , Nok_dat , Nok_sckl , Datenmerker , 0 , 0
'   nop


   'Display start line set
   Nok_d_c = 0
   Datenmerker = &B01010000
   Shiftout , Nok_dat , Nok_sckl , Datenmerker , 0 , 0
   nop

   'Page adress set
   Nok_d_c = 0
   Datenmerker = &B10110100
   Shiftout , Nok_dat , Nok_sckl , Datenmerker , 0 , 0
   nop

   'Column adress H-Byte set
   Nok_d_c = 0
   Datenmerker = &B00010001
   Shiftout , Nok_dat , Nok_sckl , Datenmerker , 0 , 0
   nop

   'Column adress L-Byte set
   Nok_d_c = 0
   Datenmerker = &B00001000
   Shiftout , Nok_dat , Nok_sckl , Datenmerker , 0 , 0
   nop

   'Display data set
   Nok_d_c = 1
   Datenmerker = &B11110000
   Shiftout , Nok_dat , Nok_sckl , Datenmerker , 0 , 0
   nop

   Wait 1

   Toggle Led                                               'Lebensbit

 Loop
End

Ich hab es auch schon ohne shiftout probiert und dafür eine for-to-Schleife geschrieben, doch das bringt auch keinen Erfolg.
Ich freue mich über eure Anregungen.:eek::)

Liebe Grüße
Kokusnuss
 
Hallo !

Ich kenne das Display nicht und weiß auch nicht ob sich in 2012 der Aufwand zum Betrieb noch lohnt, aber......

zur Ansteuerung mit Text und Grafik wird dein Mega8 etwas knapp werden und.....
vielleicht hilft dir ja DIESER BEITRAG aus dem "Nachbaruniversum" weiter.

Es ist zwar kein Nokia 7110 Display, aber es geht dort auch um den SED1565 Controller.


Grüße,
Cassio
 
So ich habs jetzt erstmal hinbekommen ein schwarzes Bild zu erzeugen und das Kontrastverhältnis leicht zu beeinflussen. :D
Ich muss noch ein wenig tüffteln, aber das wird schon.
Hier nur noch kurz der Quellcode, der vollständigkeit halber ;-D

Code:
 Nok_res Alias Portb.0                                      'reset (active_low)
 Nok_cs Alias Portb.2                                       'data enable
 Nok_dat Alias Portb.3                                      'data
 Nok_sckl Alias Portb.5                                     'clock
 Nok_d_c Alias Portc.4                                      'low = controldata/high = displaydata [A0]
 Nok_bel Alias Portd.3

 Dim Datenmerker As Byte
 Dim I As Byte

'++++++++++++++++++++++++++++
'          Initial
'          -------
   Nok_cs = 1
   Nok_res = 0
   Wait 1
   Nok_res = 1
   Wait 1
'+++++++++++++++++++++++++++++

'+++++++++++++++++++++++++++++
     'LCD in normal mode
'     ------------------
   Datenmerker = &B10100110
   Nok_d_c = 0
   Nok_cs = 0
   For I = 7 To 0 Step -1
      Nok_sckl = 0
      Nok_dat = Datenmerker.i
     Nok_sckl = 1
   Next I
   Nok_cs = 1
'+++++++++++++++++++++++++++++

'+++++++++++++++++++++++++++++
         'set bias
'         --------
   Datenmerker = &B10100011
   Nok_d_c = 0
   Nok_cs = 0
   For I = 7 To 0 Step -1
      Nok_sckl = 0
      Nok_dat = Datenmerker.i
     Nok_sckl = 1
   Next I
   Nok_cs = 1
'+++++++++++++++++++++++++++++

'+++++++++++++++++++++++++++++
         'ADC select
'         ----------
   Datenmerker = &B10100001
   Nok_d_c = 0
   Nok_cs = 0
   For I = 7 To 0 Step -1
      Nok_sckl = 0
      Nok_dat = Datenmerker.i
     Nok_sckl = 1
   Next I
   Nok_cs = 1
'+++++++++++++++++++++++++++++

'+++++++++++++++++++++++++++++
  'Common output mode select
'  -------------------------
   Datenmerker = &B11000000
   Nok_d_c = 0
   Nok_cs = 0
   For I = 7 To 0 Step -1
      Nok_sckl = 0
      Nok_dat = Datenmerker.i
     Nok_sckl = 1
   Next I
   Nok_cs = 1
'+++++++++++++++++++++++++++++

'+++++++++++++++++++++++++++++
       'V5 voltage set
'       --------------
   Datenmerker = &B00100010
   Nok_d_c = 0
   Nok_cs = 0
   For I = 7 To 0 Step -1
      Nok_sckl = 0
      Nok_dat = Datenmerker.i
     Nok_sckl = 1
   Next I
   Nok_cs = 1
'+++++++++++++++++++++++++++++

'+++++++++++++++++++++++++++++
' Electronic Volume mode set
' --------------------------
   Datenmerker = &B10000001
   Nok_d_c = 0
   Nok_cs = 0
   For I = 7 To 0 Step -1
      Nok_sckl = 0
      Nok_dat = Datenmerker.i
     Nok_sckl = 1
   Next I
   Nok_cs = 1
'+++++++++++++++++++++++++++++

'+++++++++++++++++++++++++++++
'       Power control set
'       -----------------
   Datenmerker = &B00101110
   Nok_d_c = 0
   Nok_cs = 0
   For I = 7 To 0 Step -1
      Nok_sckl = 0
      Nok_dat = Datenmerker.i
     Nok_sckl = 1
   Next I
   Nok_cs = 1
'+++++++++++++++++++++++++++++

'+++++++++++++++++++++++++++++
'  Power control set_booster
'  -------------------------
   Datenmerker = &B00101110                                 'boost = &B00101111
   Nok_d_c = 0
   Nok_cs = 0
   For I = 7 To 0 Step -1
      Nok_sckl = 0
      Nok_dat = Datenmerker.i
     Nok_sckl = 1
   Next I
   Nok_cs = 1
'+++++++++++++++++++++++++++++

'+++++++++++++++++++++++++++++
'           NOP
'           ---
   Datenmerker = &B11100011
   Nok_d_c = 0
   Nok_cs = 0
   For I = 7 To 0 Step -1
      Nok_sckl = 0
      Nok_dat = Datenmerker.i
      Nok_sckl = 1
   Next I
   Nok_cs = 1
'+++++++++++++++++++++++++++++

'+++++++++++++++++++++++++++++
'       set start adress
'       ----------------
   Datenmerker = &B01000000
   Nok_d_c = 0
   Nok_cs = 0
   For I = 7 To 0 Step -1
      Nok_sckl = 0
      Nok_dat = Datenmerker.i
     Nok_sckl = 1
   Next I
   Nok_cs = 1
'+++++++++++++++++++++++++++++

'+++++++++++++++++++++++++++++
'          Display ON
'          ----------
   Datenmerker = &B10101111
   Nok_d_c = 0
   Nok_cs = 0
   For I = 7 To 0 Step -1
      Nok_sckl = 0
      Nok_dat = Datenmerker.i
     Nok_sckl = 1
   Next I
   Nok_cs = 1
'+++++++++++++++++++++++++++++

'+++++++++++++++++++++++++++++
'    Display all points ON
'    ---------------------
   Datenmerker = &B10100101
   Nok_d_c = 0
   Nok_cs = 0
   For I = 7 To 0 Step -1
      Nok_sckl = 0
      Nok_dat = Datenmerker.i
     Nok_sckl = 1
   Next I
   Nok_cs = 1
'+++++++++++++++++++++++++++++

Wait 2

Liebe Grüße
Kokusnuss
 
Hallo zusammen :wavey:

ich wollte euch nur noch weiter mitteilen, dass ich es jetzt geschafft :victory: habe, mit einem Atmega8 einen Text auf meinem Nokia-7110-display
darzustellen, zu shiften (bisher nur horizontal hoch und runter), zu invertieren, zu spiegeln und auf den Kopf zu stellen. :dance3::dance3:
Das Darstellen von Bildern ist auch möglich, aber bisher für mich noch zu umständlich.:hmmmm:

Vom Arbeitsaufwand habe ich in der Umsetzung nun mit Pausen etwa 2 Wochen gesessen. Ich denke der Arbeitsaufwand ist ok. Für den Atmega8 stellt der Darstellungsprozess kein Problem dar. Ich habe genügend Speicher frei um ein komplexeres Programm zu schreiben als nur Text darstellen.
Nun da das funktioniert, möchte ich damit eine Art einfaches Osziloskop bauen.
Mal sehen wie weit ich komme.:confused:

Hier noch Bildchen vom Display:
DSC02200.jpgDSC02201.jpg

Liebe Grüße
Kokusnuss
 
Hallo!

Gratuliere, zur gelungenen Arbeit. :flowers:

Damit erhalten vielleicht einige alte Handys wieder einen Nutzen und fristen nicht länger in dunklen Ecken ein Schattendasein. :wink:


Grüße und weiterhin viel Erfolg,
Cassio
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)