Hallo, mal wieder in der Kramkiste was gefunden . Das LCD könnte ja für meinen defekten Timer Verwendung finden.
Leider lassen sich nicht die selbst erstellten Font darstellen, das sieht eher wie ein QR-Code aus. Für die Font habe ich den Fondmaker von hier benutzt.
Wo steckt der Fehler ?
Hier der noch nicht fertige Code
Alles anzeigen
im Anhang die font-Datei
Leider lassen sich nicht die selbst erstellten Font darstellen, das sieht eher wie ein QR-Code aus. Für die Font habe ich den Fondmaker von hier benutzt.
Wo steckt der Fehler ?
Hier der noch nicht fertige Code
BASCOM-Quellcode
- '-------------------------------------------------------------------------------
- ' Nokia-3310 LCD Test
- ' BASCOM-AVR
- ' Mrshilov 2014
- '===============================================================================
- $regfile = "m168pdef.dat"
- $crystal = 1000000
- $hwstack = 32
- $swstack = 16
- $framesize = 32
- '*******************************************************************************
- $lib "glcd-Nokia3310.lib"
- Config Graphlcd = 128x64sed , Rst = Portb.7 , Cs1 = Portb.0 , A0 = Portd.7 , Si = Portd.6 , Sclk = Portd.5
- ' Rst & Cs1 is optional
- Dim I As Byte , N As Word , M As Byte
- Dim Text As String * 8
- '######## DS1307
- Config Sda = Portc.4 'I2C-Pins definieren
- Config Scl = Portc.5
- Const Ds1307_adresse = 208 '&HD0 I2C Adresse der Uhr DS1307
- Const Ds1307_lese_adresse = 209 '&HD1 I2C Adresse der Uhr DS1307
- I2cinit
- Dim Wochentag As Byte 'Montag=1 bis Sonntag=7
- Dim Tag As Byte
- Dim Monat As Byte
- Dim Jahr As Byte
- Dim Stunden As Byte
- Dim Minuten As Byte
- Dim Sekunden As Byte
- Dim Xsek As Byte
- 'für lcd in string wandeln
- Dim Sekstring As String * 2
- Dim Mstring As String * 2
- Dim Ststring As String * 2
- Dim Strstring As String * 8
- '***************************** Program *****************************************
- Initlcd
- Glcdcmd &H21
- Glcdcmd &HC0 'Contrast
- Cls
- Setfont Font6x8
- Lcdat 2 , 16 , "NOKIA-3310"
- Lcdat 4 , 30 , "84x48"
- Wait 2
- Cls
- Showpic 0 , 0 , Walker
- Wait 2
- Cls
- I = 20
- Do
- Setfont Roman_10x19
- Gosub Twi_uhr
- Sekunden = Makedec(sekunden)
- Sekstring = Str(sekunden)
- Sekstring = Format(sekstring , "00")
- Minuten = Makedec(minuten)
- Mstring = Str(minuten)
- Mstring = Format(mstring , "00")
- Stunden = Makedec(stunden)
- Ststring = Str(stunden)
- Ststring = Format(ststring , "00")
- Strstring = Ststring + ":" + Mstring '+ ":" + Sekstring
- Lcdat 3 , 1 , Strstring ', 1
- Setfont Font6x8
- Incr I
- If I > 59 Then I = 0
- Text = Str(i)
- Lcdat 1 , 1 , "23:" ; Text
- Waitms 500
- Lcdat 1 , 1 , "23 " ; Text
- Loop
- End
- '===============================================================================
- Walker:
- $bgf "Walker.bgf"
- $include "font6x8.font"
- $include "Roman_10x19.font"
- Twi_uhr:
- I2cstart
- I2cwbyte Ds1307_adresse
- I2cwbyte 0 'ab Register 0
- I2cstop
- I2cstart
- I2cwbyte Ds1307_lese_adresse
- I2crbyte Sekunden , Ack 'Zeit und Datum lesen
- I2crbyte Minuten , Ack
- I2crbyte Stunden , Ack
- I2crbyte Wochentag , Ack
- I2crbyte Tag , Ack
- I2crbyte Monat , Ack
- I2crbyte Jahr , Nack
- I2cstop
- Return