[SOLVED] 7 segment multiplexing problem

Status
Not open for further replies.

engwas

Member level 1
Joined
Mar 7, 2013
Messages
37
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Visit site
Activity points
1,525
hi all
i build digital date and time clock using DS1307,89C51,74595 and 7 segments display, i write code and it work with problem in Proteus simulation 7 segment blinking but it show the time and date the code scan all 7 segment in forever loop there is no delay so must it show to human eye as fixed, i thank if any one help me
 

I think the problem in 74595 and the code i connect LED with pin on it, the LED take long time to ON after long OFF so any on help me with connection or with code I need to MUX to use other ports in 89C51 to display moving text

 

I put a scope trace on the da2 and s2 lines of the 74595 and see that the pulses are 180mS apart. So 1000mS / 180mS = 5.55 display per second. That's why the display is flickering.

You have to achieve at least 25 frames per second to have a continuous display i.e. 5 times faster than the present rate.

Allen
 

Attachments

  • 8051 clock.PNG
    101.8 KB · Views: 126

Thanks Allen
so should i change the code or the connection with 74595, is there another method to connect 7 segment to 74595.
 

There are at least 3 things you can do:

1. Start analyzing your program to see if there are any unnecessary delays that would slow down your program.:idea:

2. Try to improve the hardware here



Instead of driving U7,U4,U6 with U8, Just drive them directly from the 8051 and it would be much faster.

3. Find some derivatives of 8051 that can run faster than just 12 MHz.

Just my opinion.

Allen
 
Last edited:

Thanks Allen
I check and change the code and hardware its fine with multiplexing with out RTC about 4 ms but when i read the time or date from DS1307 the delay happen i toke the code from net if there is a way to speed connection with Ds1307.
i need other port to display day by dot matrix leds

Thanks
 

Dears
I make some calculator the code of read time and date take more than 130 ms so i need to minimize this time but the code is to small it I2C and DS1307 communication how can i get this duration less than 25 fps

Thanks
 

If you are performing time consuming operations in the main loop, it's best to control display multiplexing from a timer interrupt.
 
Thanks Fvm
but i not understand what do you mean i have main loop to get and display time and date the interrupt i will use it to fixed the time and date if i what or when i start the clock for first time
Kindly need more details
 

Hi All
I change the code to fetch time and date from DS1307 once every second and display the information in 7 segment in loop in the remaining time of second but i have see simply blink with wrong data every few second in Proteus simulation need help to get stable display and get good for this digital clock and 7 segment not LCD to get benefit from it

Thanks in advanced
 

Hi SunnySkyguy
I read time every second and not use the 1 Hz can you explain to me or give me links

Thanks
 

I know about it but how can i use it in my code to enhanced display and if i use interrupt to fixed time or date how i'll make it blink just the desire one

Kindly need help
 

Dears
I have also problem in the LED that display PM time it blinking
 

Dear
7 segment work OK now but the led that indicate the PM not work ok i connect it to 74595 output as the 7 segment
I need help on blinking two 7 segment and other stable when i adjust time or date

Thanks
 
Last edited:

Dear
the new code is fetch date and time from DS1307 once every seconds for few ms then display it in 7 segment for the rest of seconds but i notice a very simple blink in 7 segment
Why the led that indicate the PM not work ok i connect it to 74595 output as the 7 segment

Kindly need help
 


Perhaps your method of addressing is too slow using Serial to parallel to then select serial to parallel again with OE flashing the display.

Instead make all S-P registered in daisy chain and then latch all together, sending 4 bytes per refresh.
 
Status
Not open for further replies.

Similar threads

Cookies are required to use this site. You must accept them to continue using the site. Learn more…