Glcd aansturen

Ik probeer een glcd aan te sturen
En ik gebruik deze code

benleentje

Golden Member

Moet je niet ook de betreffende file voor je GLCD toevoegen.

Je definieert wel de pinnen van de GLCD maar niet waar de include file is.
De font file die je wel include is niet genoeg, deze is er alleen voor text weergave.

[Bericht gewijzigd door benleentje op zondag 6 augustus 2017 21:22:28 (24%)

Mensen zijn soms net als een gelijkrichter, ze willen graag hun gelijk hebben.

Hoe bedoel je? waar moet ik die file vinden en hoe moet ik die toevoegen?

Arco

Special Member

De compiler zal toch op de een of andere manier verteld moeten worden welke chip er op dat display zit, anders gaat het nooit werken...

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

het is mijn eerste keer at ik zo iets doe.
kunt u mij helpen hoe ik dit moet doen ik gebruik proton pic basic
en de lcd chips zijn HD61202FS
het lcd is MGLS12864 ( ik heb de W aangepast)

benleentje

Golden Member

Die zal je moeten opzoeken en dan ook gelijk opzoeken hoe je hem moet gebruiken.
Ik heb er ook geen ervaring mee. Maar weet wel dat je hem nodig hebt.

Mensen zijn soms net als een gelijkrichter, ze willen graag hun gelijk hebben.

Uit de Compiler manual:

Graphic LCD Declares.
Declare LCD_Type 0 or 1 or 2, Alpha or Graphic or Samsung or Toshiba
Inform the compiler as to the type of LCD that the Print command will output to. If Graphic,
Samsung or 1 is chosen then any output by the Print command will be directed to a graphic
LCD based on the Samsung KS0108 chipset. A value of 2, or the text Toshiba, will direct the
output to a graphic LCD based on the Toshiba T6963 chipset. A value of 0 or Alpha, or if the
Declare is not issued, will target the standard Hitachi alphanumeric LCD type

Je hebt met "LCD_TYPE = GRAPHIC" de KS0108 controller gedefineerd welke compatible zou zijn met de HD61202FS die op jou LCD zit.

Ook heb je "INTERNAL_FONT = On" gebruikt om aan te geven dat de font data in je code staat maar dat defineer je daarna niet met "Cdata".
Daarna staat er in de volgende regel met "FONT_ADDR = 0" dat de font data in de eerste externe I2C EEPROM staat.

Je moet kiezen waar je font staat, in je code of een EEPROM maar niet allebei.

Ik zou zeggen lees de compiler handleiding over grafische LCD's eens goed want je bent nu twee dingen door elkaar aan het doen.

Hobby, maar sample met mate. | BumbleBee plus pack | Weerstand calculator voor je PSP

Als ik de foutcode zie denk ik dat de compiler het bestand 'font.ínc' niet kan vinden.
Kijk eens in de directory van de compiler. Als het goed is staat er een in de subdir PDS\Includes.

En de opmerking van Switching Power over Font_Addr = 0 klopt, maar in hoeverre dit een probleem is weet ik niet want er staat ook al Internal_Font = on. Maar Font_Addr weghalen kan sowieso geen kwaad.

In het bestand Font.inc staan CData regels voor de tekens 0 t/m 126.

Just find out what you like and let it kill you

het probleem zit hem in de LCD_TYPE = GRAPHIC
Als ik daar LCD_TYPE = HD61202FS
dan compiled hij wel maar als ik de hex in de pic schiet
En mijn schermpje wil testen zie ik niets op het scherm
als het programma niet juist is maar de schakeling wel moet je toch al iets zien al is het een gevuld zwart scherm?
zelf moest ik nu de vdd 5v voeden en de vss on GND dan moet ik toch al iets zien? of niet?

Heb je de contrast pin aangesloten met een potmeter ?
Die moet aan de ene kant aan de ground of de Vdd en aan de andere kant aan een aansluiting die meestal V0 heet. De loper komt dan aan de pin Contrast.

Just find out what you like and let it kill you
Arco

Special Member

Je moet inderdaad wel alle benodigde pinnen aansluiten. (chipselects, data/command, contrast, reset,...)
Het display type zal wel niet kloppen, ik kan het nergens terugvinden.

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

LCD_TYPE = HD61202FS snapt de compiler waarschijnlijk niet en gaat dan uit van een standaard HD44780 controller en daar heb je geen font data voor nodig.

LCD_TYPE = GRAPHIC gaat uit van een KS0108 controller waar de HD61202 compatibel mee zou zijn.

Hobby, maar sample met mate. | BumbleBee plus pack | Weerstand calculator voor je PSP

Naar alle waarschijnlijkheid gaat het om een GCLD op basis van een KS0108 chip.

Je kunt ook nog even proberen Declare LCD_Type = Samsung.

Een plaatje van het schema zou het wellicht wat makkelijker maken.

Just find out what you like and let it kill you

ik heb de contrast via een pot aan de vdd +5v gedaan en d andere pin van de pot naar de vo

oke ik zal eens iets maken om te laten zien hoe ik alles aangesloten heb

ik heb de datasheet en de poort aansluitingen van de pic eens op foto gezet en het stukje code van de poort toewijzing er bij
ik heb alles volgens ik hier op afbeelding voorgesteld heb
zo heb ik het ook werkelijk aangesloten
is mijn code fout of is mijn aansluiting niet goed of is mijn lcd stuk
ik weet geen raad meer
jullie hebben mij wel al mooie tips gegeven en heb al its bij geleerd dank jullie daar voor
er zitten hier een aantal slimme gasten ;)

oops vergeten afbeelding bij te zetten

benleentje

Golden Member

Er zijn heel wat verschillende GLCD's en elke heeft zijn eigen specifieke aansturing nodig.
Dus kijk eens goed in de handleiding van picbasic software welke type GLCD het precies kan aansturen.

Mensen zijn soms net als een gelijkrichter, ze willen graag hun gelijk hebben.

de pic 18f4550 kan zeker een glcd aansturen je kunt de pinnen toe wijzen in je code en dan vervolgens aansluiten zoals je opgegeven hebt op de poorten.
als ik vb LCD_RWPIN op portB.0 wil zet ik dat zo in mijn code
maar nu staat LCD_RWPIN op portB.2
En Switching Power heeft ook al gezegt.
Je hebt met "LCD_TYPE = GRAPHIC" de KS0108 controller gedefineerd welke compatible zou zijn met de HD61202FS die op jou LCD zit.

Ik mis de backlight aansluitingen en een contrast aansluiting.
Deze pcb heeft 16 pinnen, mijn LM12864 (KS0108) heeft er 20.

@benleentje: HD44780, KS0108, T6963 worden standaard door de compiler ondersteund. Daarnaast zijn er voor PicBasic uitbreidingen geschreven voor bv de ILI9325

Als ik zoek op MGLS-12864 vind ik in de datasheet : T6963.

Just find out what you like and let it kill you
Arco

Special Member

Vo is de contrast aansluiting, background led zit rechts (A-K).
De T6963 is 'optional' en 'on request' volgens de datasheet...

[Bericht gewijzigd door Arco op vrijdag 11 augustus 2017 23:25:33 (34%)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

ik heb de contrast als dit schema aangesloten
ps let niet op de rest want deze heeft niets met mijn lcd te maken dat is een ander schema enkel de contrast aansluiting heb ik via deze gedaan

waar ik ook over twijfel is de RSpin op poort B1 die denk ik op mijn lcd D/I noemt alle dat nam ik toch aan omdat het eenige pin was die ik over had en deze niet rs noemde

Arco

Special Member

Dus dit is niet jouw display? Dan kun je dat schema ook niet gebruiken, kan per display heel verschillend zijn...

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

als je nu naar mijn code kijkt hans het begin van dit topic zie je dat ik nu INTERNAL_FONT = On op non actief gezet heb
Nu aanvaart hij lcd type is graphic en compiled hij maar nog steeds niets op het schem