LCD in low-power device

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
GeMo_285911
Level 4
Level 4
First like received

Hello! First of all, I want to say hello to everybody since this is my forst post.

   

I have a problem related to an LCD. I am developing a battery-powered datalogging application,  and most of the time, the LCD connected to the device has to be turned off. When a button is pressed, the LCD has to dysplay a message. Therefore, at the time the LCD is powered off, I put the port driving it to High Z Digital, and just before having to display the message, I make the port Strong Drive. However, the LCD does not show the message correctly, or not at all. the program halts here, and semms to remain in one of the LCD functions. When I do not change the GPIO drive mode, everything goes fine.

   

Does anybody have an idea on what could be wrong?

   

Thank you!

0 Likes
8 Replies
Anonymous
Not applicable

Do you use a LCD module? You need to run the Initialization again after power resumes.

0 Likes
GeMo_285911
Level 4
Level 4
First like received

Yes, I use a LCD module (RC1602B-FHW-CSV) and I run the initialization function again. However, it works fine only at the start, till first time it is powered off. Then, although I use the initialization, it does not display correctly messages any more.

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

Which LCD-usermodule are you using in your project? When using the LCD_Char there is one pin used as input.

   

Are you accessing the LCD-module after sleep with a changed clock frequency? There are some delays that rely on a CPU-clock that did not change.

   

 

   

Bob

0 Likes
GeMo_285911
Level 4
Level 4
First like received

Hello again! I finally solved it. After powering down and the up again, LCD_Start and also LCD_Init have to be run, it seems. If not, the LCD_Init is not run by LCD_Start. However, a signifficant delay between the two has to be inserted (for me, 1second works).

   

Thank you for your help and quick responses!

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

Thank you for your feedback! Glad that it finally works.

   

 

   

Bob

0 Likes
Anonymous
Not applicable

 glad that you solve your problem, but why it takes such a long time. We had a project that needs to re-start the LCD after removing, but don't think it takes that long.

0 Likes
ETRO_SSN583
Level 9
Level 9
250 likes received 100 sign-ins 5 likes given

If you look at the Hitachi 44780 datasheet there is nothing in it

   

approaching the need for 1 sec delay. I agree with HL that something

   

is not right, and needs further investigation. Using a 1 sec delay seems

   

like a time bomb in the design not knowing why you needed that long a

   

delay.

   

 

   

Keep in mind that delay is added on top of PSOC starup delay, so its

   

effectively even longer.

   

 

   

You don't have a long slow ramp on power that might be effecting LCD ?

   

It has no spec on power supply ramp rate, and with an internal osc I would

   

be suspicious the part could have issues handling a real slow ramp.

   

 

   

Regards, Dana.

0 Likes
Anonymous
Not applicable

1. Do you put the psoc in a sleep mode as well, or you just remove power to the LCD module and the PSOC is still running at normal speed?

   

2. The LCD uses only 7 bits of a port, what is the other bit used for? 

0 Likes