CCS C Software and Maintenance Offers
FAQFAQ   FAQForum Help   FAQOfficial CCS Support   SearchSearch  RegisterRegister 

ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

CCS does not monitor this forum on a regular basis.

Please do not post bug reports on this forum. Send them to support@ccsinfo.com

Driver for st7920 128x64 LCD
Goto page Previous  1, 2
 
Post new topic   Reply to topic    CCS Forum Index -> Code Library
View previous topic :: View next topic  
Author Message
kaem1189



Joined: 27 Dec 2011
Posts: 12

View user's profile Send private message

PostPosted: Tue Aug 13, 2013 7:11 am     Reply with quote

pmaggi wrote:
In the display there is a pin marked as NC, and if I touch it, a lot of "noise" appears on the screen. I tied it to ground by a 22k resistor and all the problems disappeared...
Very strange... Shocked

So it was a "hardware" problem and not a software one.


This isnt happening with my board though. could you manage to speed up the update speed of the driver?

This noise happens to my board when metal parts of the lcd touch another metallic component like crystal, screw, etc.

could you manage to make your serial driver work? i also have mine but screen update is soo slow.
pmaggi



Joined: 05 Jun 2013
Posts: 10

View user's profile Send private message

PostPosted: Tue Aug 13, 2013 11:53 am     Reply with quote

What caught my attention was the fact that originally the board was set to parallel mode by hardware, there was a 0 ohm resistor that pulled PSB to "1" and so it couldn't make it to work in serial mode. I took it away to be able to make it work in serial mode.
Finally I managed to make it work in serial mode and it works find.
I guess that this board had some problems with serial mode so they where hard wired in that way... you get what you paid for... just 4 bucks for this display Twisted Evil
This display gives me 4 to 5 fps in serial mode...
kaem1189



Joined: 27 Dec 2011
Posts: 12

View user's profile Send private message

PostPosted: Tue Aug 27, 2013 7:44 am     Reply with quote

pmaggi wrote:

This display gives me 4 to 5 fps in serial mode...


Mine was a little better with 8 bit parallel mode. lol. Too slow graphics lcd Twisted Evil
zghEmbedded



Joined: 03 Jan 2014
Posts: 1

View user's profile Send private message

Where is the GRAPHICS.C file?
PostPosted: Fri Jan 03, 2014 5:39 pm     Reply with quote

Hi Everyone!

I have been looking for this driver for so long now! Well, I have the same GLCD module, Digole with ST7920 controller and I wanted to port this for the Xmega. Anyway, I just couldn't manage to get the GRAPHICS.C file that was supposed to be included!

Any clues?

Thank you in advance!
psyke



Joined: 24 Oct 2016
Posts: 1

View user's profile Send private message

PostPosted: Thu Oct 27, 2016 1:31 am     Reply with quote

Hi, i am simulating in isis proteus the library that kaem uploaded, also the sample code he did. But I can't get it to work fine with the module with ST7920 i found on internet for simulating (the GLCD library for proteus works fine because where i downloaded it i found a simulation file and it worked well).

I attach the code down here. I want to try the "fill screen" and it only shows up that square.

Thank you in advance

Link to the simulation where i got the isis library from
[url]https://mega.nz/#F!cccGgQzQ!3q4sgkeFnhYJoBUL_8h5hg[/url]

Code:
#include <18F4550.h>

#FUSES NOWDT                    //No Watch Dog Timer
#FUSES CPUDIV1                  //System Clock by 4
#FUSES HS                        //Internal RC Osc, no CLKOUT
#FUSES NOBROWNOUT               //No brownout reset
#FUSES NOMCLR                   //Master Clear pin used for I/O
#FUSES NOLVP                    //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#USE DELAY(CLOCK=8000000)

const char image[]={12,123,123,43}; //random numbers, just to try

#include <st7920.c>
#include <GRAPHICS.C>

void main(){
glcd_init_graph();
while(1)
      {   
      glcd_fillscreen(ON);
      glcd_update();
      delay_ms(500);
      glcd_fillscreen(OFF);
      glcd_update();
      delay_ms(500);
      }
}


oscaraen



Joined: 03 Jan 2017
Posts: 3

View user's profile Send private message Send e-mail Visit poster's website

can't show a variable
PostPosted: Tue Jan 03, 2017 8:50 pm     Reply with quote

Hello Everyone, im trying to use my glcd, i'm started using this library and it worked like a charm, then I tried to put a variable on the screen, obtained from a rotary encoder, but when I put the value on GLCD, the second value overlaps on it and over the time only can be watched a square (filled), to avoid this i used functions fillscreen_off an then display the data again, but that is a very slow routine, the rotary encoder has 64 steps on one turn. It is very difficult to set accurately a value because one update takes more than one second, somebody can help me.... Sad
I was thinking, my solution (I guess) is to use a modified glcd_update() function that only updates a little section, but i cant understand the way is declared the struct gdram and how to use it.

you'll apologize me, my english is not very good.

thanks for your answers. Embarassed Embarassed
andromeda92



Joined: 21 Jul 2017
Posts: 16

View user's profile Send private message

ST7920 graphics.c file
PostPosted: Fri Jul 21, 2017 10:20 am     Reply with quote

Hi,

Where can i find the graphics.c files ?

Thanks in advance.
jeremiah



Joined: 20 Jul 2010
Posts: 1340

View user's profile Send private message

Re: ST7920 graphics.c file
PostPosted: Fri Jul 21, 2017 8:28 pm     Reply with quote

andromeda92 wrote:
Hi,

Where can i find the graphics.c files ?

Thanks in advance.


In the "Drivers" folder of your installation directory.
andromeda92



Joined: 21 Jul 2017
Posts: 16

View user's profile Send private message

PostPosted: Tue Aug 29, 2017 1:23 pm     Reply with quote

hi,

i have glcd 128x64 st7920, its exist library for driving st7920 with SPI ?

Thanks.
klebaum



Joined: 01 Oct 2010
Posts: 5
Location: Brazil

View user's profile Send private message Visit poster's website

PostPosted: Mon Feb 12, 2018 7:30 pm     Reply with quote

Hello
Has anyone been successful in using this ST7920 display in serial mode? If yes could you share the solution please.

Thank you.
Ttelmah



Joined: 11 Mar 2010
Posts: 19459

View user's profile Send private message

PostPosted: Sat Apr 27, 2019 2:05 pm     Reply with quote

If using this work, please see the amendment at the end of this thread:

<http://www.ccsinfo.com/forum/viewtopic.php?t=57924>

As posted the code if not correctly handling graphic accesses for the
bottom half of the display.
cyril.carlita



Joined: 20 Jul 2023
Posts: 5

View user's profile Send private message Visit poster's website

Hello, i try this code for a 16f877a
PostPosted: Wed Dec 27, 2023 8:43 am     Reply with quote

hello, i try this code for a 16f877a but i have a lot of errors.

Is it possible that it work on 16f877a @ 20mhz? Question

I have this error:
Code:


*** Error 12 "C:\Program Files (x86)\PICC\drivers\GRAPHICS.C" Line 225(20,21): Undefined identifier  -- glcd_pixel
*** Error 12 "C:\Program Files (x86)\PICC\drivers\GRAPHICS.C" Line 248(20,21): Undefined identifier  -- glcd_pixel
*** Error 12 "C:\Program Files (x86)\PICC\drivers\GRAPHICS.C" Line 314(23,24): Undefined identifier  -- glcd_pixel
*** Error 12 "C:\Program Files (x86)\PICC\drivers\GRAPHICS.C" Line 385(26,27): Undefined identifier  -- glcd_pixel
*** Error 12 "C:\Program Files (x86)\PICC\drivers\GRAPHICS.C" Line 420(26,27): Undefined identifier  -- glcd_pixel
*** Error 12 "C:\Program Files (x86)\PICC\drivers\GRAPHICS.C" Line 461(20,21): Undefined identifier  -- glcd_pixel
*** Error 12 "C:\Program Files (x86)\PICC\drivers\GRAPHICS.C" Line 462(20,21): Undefined identifier  -- glcd_pixel
*** Error 12 "C:\Program Files (x86)\PICC\drivers\GRAPHICS.C" Line 463(20,21): Undefined identifier  -- glcd_pixel
*** Error 12 "C:\Program Files (x86)\PICC\drivers\GRAPHICS.C" Line 464(20,21): Undefined identifier  -- glcd_pixel
*** Error 12 "C:\Program Files (x86)\PICC\drivers\GRAPHICS.C" Line 465(20,21): Undefined identifier  -- glcd_pixel
*** Error 12 "C:\Program Files (x86)\PICC\drivers\GRAPHICS.C" Line 466(20,21): Undefined identifier  -- glcd_pixel
*** Error 12 "C:\Program Files (x86)\PICC\drivers\GRAPHICS.C" Line 467(20,21): Undefined identifier  -- glcd_pixel
*** Error 12 "C:\Program Files (x86)\PICC\drivers\GRAPHICS.C" Line 468(20,21): Undefined identifier  -- glcd_pixel
*** Error 12 "C:\Program Files (x86)\PICC\drivers\GRAPHICS.C" Line 515(22,32): Undefined identifier   GLCD_WIDTH
*** Error 12 "C:\Program Files (x86)\PICC\drivers\GRAPHICS.C" Line 530(32,33): Undefined identifier  -- glcd_pixel
*** Error 12 "tealc.c" Line 12(16,17): Undefined identifier  -- glcd_init_graph
*** Error 12 "tealc.c" Line 14(16,17): Undefined identifier  -- glcd_fillscreen
*** Error 12 "tealc.c" Line 16(16,17): Undefined identifier  -- glcd_fillscreen
      19 Errors,  0 Warnings.



I have try this code:

Code:

#include <16F877A.h>


#fuses HS, NOPUT, NOPROTECT,NOLVP, BROWNOUT, NOCPD, NOWRT,NOWDT



#include <st7920.h>
#include <GRAPHICS.C>

main(){
glcd_init_graph();
while(1){
glcd_fillscreen(ON);
delay_ms(500);
glcd_fillscreen(OFF);
delay_ms(500);
}
}
Ttelmah



Joined: 11 Mar 2010
Posts: 19459

View user's profile Send private message

PostPosted: Fri Feb 16, 2024 2:21 am     Reply with quote

Big think is you haven't got a clock rate specified. This will cause any
code dependant on clock rates to not work. May well be what is causing
it to not compile.
Display posts from previous:   
Post new topic   Reply to topic    CCS Forum Index -> Code Library All times are GMT - 6 Hours
Goto page Previous  1, 2
Page 2 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group