Sari la conținut
ELFORUM - Forumul electronistilor

LCD Grafic 128X64


nickrvl

Postări Recomandate

Am incercat doar scris:

$regfile = "m16def.dat"$crystal = 16000000$baud = 19200 ' use baud rate$hwstack = 32       ' default use 32 for the hardware stack$swstack = 10       ' default use 10 for the SW stack$framesize = 40       ' default use 40 for the frame space$lib "glcdKS108.lbx" Waitms 200Config Graphlcd = 128 * 64sed , Dataport = Portb , Controlport = Portc , Ce = 3 , Ce2 = 4 , Cd = 0 , Rd = 1 , Reset = 5 , Enable = 2 , Mode = 8'  Exemplu                               Pinii mei'CE =CS1  Chip select                     CS1 - C3'CE2=CS2  Chip select second chip         CS2 - C4'CD=Data/instruction                      D/I - C0'RD=Read                                  R/W - C1'RESET = reset                            RST - C5'ENABLE= Chip Enable                        E - C2 Waitms 500ClsDoLocate 1 , 5Lcd "Proba "LoopEnd

Am incercat doar o linie

$regfile = "m16def.dat"$crystal = 16000000$baud = 19200 ' use baud rate$hwstack = 32       ' default use 32 for the hardware stack$swstack = 10       ' default use 10 for the SW stack$framesize = 40       ' default use 40 for the frame space$lib "glcdKS108.lbx" Waitms 200Config Graphlcd = 128 * 64sed , Dataport = Portb , Controlport = Portc , Ce = 3 , Ce2 = 4 , Cd = 0 , Rd = 1 , Reset = 5 , Enable = 2 , Mode = 8'  Exemplu                               Pinii mei'CE =CS1  Chip select                     CS1 - C3'CE2=CS2  Chip select second chip         CS2 - C4'CD=Data/instruction                      D/I - C0'RD=Read                                  R/W - C1'RESET = reset                            RST - C5'ENABLE= Chip Enable                        E - C2 Waitms 500ClsLine(1 , 1) -(100 , 50) , 255End

Ecran alb in ambele cazuri.......

 

O sa incerc sa cer ajutor la cei de la TME, de acolo l-am luat, daca nu or fi mai "plopisti" ca mine.....

Link spre comentariu
  • Răspunsuri 43
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • nickrvl

    18

  • vasile eugen

    8

  • nico_2010

    7

  • Mircea

    5

Top autori în acest subiect

Imagini postate

In postul polonez din linkul dintr-un post anterior sunt cateva diferente de implementare:

- $lib "glcdKS108.lib"  - biblioteca pentru controllerul KS-108. Tu folosesti alta (ai zis c-ai folosit-o si pe asta, asa ca nu stiu ce sa zic)

- $eeprom - daca nu folosesti eepromul probabil o poti ignora

- Setfont Font8x8 - pe-asta as folosi-o, ca sa stie ce set de fonturi folosesti

- Lcdat - tu folosesti Lcd. Nu stau acum sa vad care-i diferenta intre ele

- $include "font8x8.font" - daca n-ai probleme de compilare, probabil ca nu e asa importanta, dar probabil nici nu incura.

 

Si intrebare aiurea - frecventa oscilatorului si frecventa din program sunt la fel, da?

LE Ce-i cu

Mode = 8

?

E prima data cand apare in discutii...

Link spre comentariu

In font8x8 sunt definite doar cifrele.Poate ma insel, dar tu poti sa deschizi fisierul si sa verifici daca este asa sau nu.Mode 8 sau 6 se foloseste in alta librarie(T6963C), nu este cazul sa  folosesti aici.Incearca cu fisierul atasat, eventual seteaza un pin de pe portul d ca iesire,da-i 0 si 1 cu delay de 500ms, pune pe el un led sa afli daca functioneaza oscilatorul .Trebuie sa te asiguri ca fisierul font este in directorul de lucru.Daca folosesti versiunea demo trebuie sa stii ca aceasta nu contine  glcdKS108.lib ci doar glcdKS108.lbx.Inceraca cu codul atasat. 

$regfile = "m16def.dat"                                   $crystal =  16000000 $include "font8x8.font"                                      $lib "glcdKS108.lbx"Config Graphlcd = 128 * 64sed , Dataport = Portb , Controlport = Porta , Ce = 3 , Ce2 = 4 , Cd = 0 , Rd = 1 , Reset = 5 , Enable = ClsWaitms 100Setfont Font8x8Lcdat 1 , 1 , "123"          Lcdat 2 , 1 , "123" , 1                                    Line(5 , 5) -(120 , 55) , 1  'deseneaza o linie, o stergi cu Line(5 , 5) -(120 , 55) , 0   

 

Editat de Elison
Link spre comentariu

Va rog sa nu va simtiti ignorati daca nu indic nume, discutia este de foarte mare interes pentru mine si fiecare post e citit..

 

Postul lui "cilibiu" il stiu...., cu Bascom am programat si programez aproape exclusiv cu un usbasp, este adevarat ca e primul Atmega16 programat cu el dar la vazut "din prima", direct din Bascom, initial am mers pe oscilatori intern 1Mhz, dupa 8Mhz si actualmente cu 16Mhz extern (ca in schema), programarea se face clar si-l pot citi etc etc, nu am incercat cu un led sa vad daca il "misca" o sa incerc si asta.....

 

Despre Mode = 8 din ce i-mi amintesc din ce am citit (vorbesc din memorie) seteaza coloane/linii implicite, ceva de genul 128 / 8 = 16 coloane, se poate si fara, momentan nu-mi dau seama daca intradevar este asa........

 

 

Sint la servici si deabia dupa ora 17 cred ca o sa pot din nou incerca cite ceva inclusiv softul propus de "elison" cu mentiunea pentru cifre.

Am ambele librarii, atit "glcdKS108.lbx" cit si "glcdKS108.lib", cel putin asta i-mi amintesc acum.....

Editat de nickrvl
Link spre comentariu

Foarte tare, cit pe aici sa declar Mc-ul decedat, i-am dat sa aprinda un led pentru ca in disperare de cauza trebuie sa incerc si asta si nu a mers!!!

Iarasi verificat schema, legaturi, pini, oscilatoare, fise tehnice etc....totul OK, "de vina" este linia de program care declara afisajul!!

 daca rulez programul cum e mai jos ledul "lucreaza", daca intercalez si declararea lCD-ului

Config Graphlcd = 128 * 64sed , Dataport = Portb , Controlport = Portc , Ce = 3 , Ce2 = 4 , Cd = 0 , Rd = 1 , Reset = 5 , Enable = 2

 nu mai merge nimic!!

$regfile = "m16def.dat"$crystal = 16000000$lib "glcdKS108.lib"Config Pind.6 = OutputLed Alias Portd.6Led = 1DoWaitms 500Toggle LedloopEnd

Sa fie totusi librariile, am doua cu acelasi nume *.lib si *.lbx cu amindoua se manifesta identic.

Editat de nickrvl
Link spre comentariu

... i-am dat sa aprinda un led pentru ca in disperare de cauza trebuie sa incerc si asta si nu a mers!!!

Asta se numeste: sanity check! E ceea ce te aduce cu picioarele pe pamant.

 

Ceva traducere de pe un forum german zicea de acest display SED unde o casuta trebuie bifata. Pe Google images se refera la Graphic Converter, dar poate o mai fi altundeva ceva de bifat. O biblioteca... sa fie activa...

 

Vad ca mai sunt si altii cu aceeasi problema unde controllerul se opreste cand citeste "Config Graphlcd = 128 * 64sed".

Poate trebuie sters acel sed de dupa 64?

Exemplu de pe AVR projects, dar nu difera de al tau:

'-----------------------------------------------------------------------------------------'name                     : glcd_chr.bas'copyright                : (c) www.avrprojects.net'purpose                  : demonstrates the KS108 based graphical display support'                         ; shows the characterset on the graphical display'microcontroller          : Mega16'-----------------------------------------------------------------------------------------$regfile = "m16def.dat"                                     ' specify the used micro$crystal = 10000000                                         ' used crystal frequency$lib "glcdKS108.lbx"'First we define that we use a graphic LCDConfig Graphlcd = 128 * 64sed , Dataport = Portb , Controlport = Portd , Ce = 0 , Ce2 = 1 , Cd = 4 , Rd = 3 , Reset = 2 , Enable = 5Setfont Font16x16Dim Char As Byte , L As Byte , C As ByteClsLcdat 1 , 1 , "Hello"Lcdat 3 , 1 , "World"Lcdat 5 , 1 , "How are"Lcdat 7 , 1 , "you?"End$include "font16x16.font"

Intreb si eu: sigur CS1/2, CD, RD, RST si EN sunt conectati dupa cum i-ai declarat?

Link spre comentariu

Daca sterg acel SED nu-mi compileza softul, eroare.......

 

O sa re testez corectitudinea pinilor diseara cu toate ca am mai facut-o dar poate i-mi scapa totusi ceva....

Schema e aceasi, dupa ce am modificat semireglabilul....

sch.pdf

 

 

 

Link spre comentariu

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări