This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

multipexing seven segment display

want to display 1,2,3,4 on four seven segemnt display connected to 8051 in such way that the display reads as "1234", but I am not able to write delay routine which refreshes the displays fast enough that our eyes is not able to catch it, kindly guide.
using 12Mhz crystal.

Parents
  • I've done something along those lines.

    I illuminated a digit for 750µs, followed by 250µs of dark time.
    Then I'd switch to the next digit. 8 digits overall, meaning every digit was updated every 8ms, that's a 125Hz refresh rate. No flickering.

    I used plain old timer 0 to generate a 250µs heartbeat. Nothing fancy, really.

    Never use a delay for a realtime application. The very concept is flawed. You want to control the interval at which your code is executed, not the time it is _not_ executed.

Reply
  • I've done something along those lines.

    I illuminated a digit for 750µs, followed by 250µs of dark time.
    Then I'd switch to the next digit. 8 digits overall, meaning every digit was updated every 8ms, that's a 125Hz refresh rate. No flickering.

    I used plain old timer 0 to generate a 250µs heartbeat. Nothing fancy, really.

    Never use a delay for a realtime application. The very concept is flawed. You want to control the interval at which your code is executed, not the time it is _not_ executed.

Children