Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Proteus simulation problem in lcd module

Status
Not open for further replies.

DEJANO

Newbie level 4
Joined
Aug 3, 2009
Messages
7
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Location
Brazil
Activity points
1,357
Dear friends:

I am working with Proteus 7.7 and making a simulation with a LCD module 16x04.
I am using only two wires to make conection between microprocessor and LCD module and a shift-register to convert serial to parallel datas.
The simulation start ok and after some seconds the characteres desappear or appear some stranger characteres .
But, if I use the proteus 6.9 sp5 , this problem doesn't occur. The simulation works ok for a long time. (i.e. a entire night).
Does anybory have had this problem or have some idea about?
If I make some mistakes my apologise in advance. My english is not so good.
Thanks everybody
 

Did you create a new project form scratch of did you use the same file from 6.9.
I'm asking because the models in a project are preserved,
if you want to update any device in the old schematic then
select the component from the device list on the left and right click update.
This will update the selected device to the new simulation model (if it has changed)
but keep a backup of the old file.
If the schematic was created in the new version of proteus then maybe something has changed to the simulation model,
in this case try to open the old project if you have it.

Alex
 

Dear Alex!
Thanks for your reply.
The software that I am using is the same for 6.9 and 7.7 (hex file) . It is in assembler and compiled by MPLAB.
The schematic was made, first, for proteus 7.7, when the problem appeared. Then I tried to found out what was wrong. How I didnt anyone result, I made I new schematic for proteus 6.9 . This is because I have heard the folowing: "the proteus 6.9 is the best version for simulation". So, I made the same schematic but using proteus 6.9. The problem desappeared. If I return to de version 7.7 the problem appear.
That is it.
 

Have you tried to open the 6.9 schematic with 7.7 to check if it works (without update).
I don't know anything about older versions being better but the simulation speed is supposed to be better is newer version and
I'm sure that a lot of devices have been added since 6.9 and additional functionality for older (mcu) models too.
I have never had a similar problem with a project that stopped working.
Have you tried the shift register in an empty project to verify its functionality?

Alex
 

Yes Alex!!
If I open the schematic made with 6.9 with the 7.7 version the problem appear.
Otherwise I have make monitoring with the osciloscope of proteus and the signals are perfect (RS and EN) . The reset of the shift-register is made by software and is OK.The most interesting is that some time the messagge of proteus sad. "controller LCD received data whilst busy". But I have checked the times and they are OK too.And If the problem is the time why this problem doesn't appear in 6.9 version. Sometime the problem appear and no message is, about busy controller.
This let me crazy.
Dejano
 

Dear friends!!
Thanks a lot in special to Alex to try to help me in my problem. For some days I have studied and monitored the signals from Proteus osciloscope to understand what kind of problem was happening. I made a loop to send always the same signls . This loop contained a delay which is used as timer for seconds and I sent this seconds to de lcd module.The interrupt was off .So I could see in every moment what was happening.My conclusion was the following:
There is a bug in the proteus 7.7 simulation of the pic16f876 when the SPI mode is used .Sometimes the pulse train of the clock ( 8 pulses) contained only five pulses. So, the data couldn't to be sent correctly. So, the problem occurred.
Sometimes, the data appeared as incorrect data that I was sent and the problem occurred.
But... in the proteus 6.9 version, no problem, for long time.
Solution: I am using 6.9 version. there's no other solution.
Dejano

---------- Post added at 18:33 ---------- Previous post was at 18:27 ----------

Dear friends!!
Thanks a lot in special to Alex to try to help me in my problem. For some days I have studied and monitored the signals from Proteus osciloscope to understand what kind of problem was happening. I made a loop to send always the same signls . This loop contained a delay which is used as timer for seconds and I sent this seconds to de lcd module.The interrupt was off .So I could see in every moment what was happening.My conclusion was the following:
There is a bug in the proteus 7.7 simulation of the pic16f876 when the SPI mode is used .Sometimes the pulse train of the clock ( 8 pulses) contained only five pulses. So, the data couldn't to be sent correctly. So, the problem occurred.
Sometimes, the data appeared as incorrect data that I was sent and the problem occurred.
But... in the proteus 6.9 version, no problem, for long time.
Solution: I am using 6.9 version. there's no other solution.
Dejano
 

Hi All
I have the same problem with proteus 7.7 with serial lcd I tried just for fun a 2pf cap between E line of lcd and ground funny character problem solved I also found that I had to make the delay's longer for display clear command otherwise the lcd goes blank. The circuit works 100% on a breadboard - I don't know proteus that well to give you a decent answer but I share your frustration.
 

Hi Sillo.
Thanks by answer.
As I sad in my last post, I found what was wrong in lcd module. The true is: The lcd module is normal and does not have problem. The problem is in the spi transmission.
I was transmitting in 1Mb, but if We change the speed, the problem continues. I made a test with 250 Kb and the problem happened too.I made a test with longer delays after every transmission and no good result too.
Only the LABCENTER ELECTRONIC can fix the problem. It is in the pulses' train
of the clock ( 8 pulses) . I dont know why,but sometimes (random) somes pulses are lost.So the shift-register does not get the end of the transmission.
To get better result, before I was working in 4 bits, in lcd module.Now I change to 8 bits. The times that the problem appeared, reduced so much.
But, sometime, it appears
I hope they look at this posts and make somethings.To the next version.
Thanks to all.
Dejano
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top