How to Make an Arduino POV (Persistence of Vision) Display

This a POV (Persistence of vision) Display based on an Arduino Pro Mini clone.

The POV is fully interrupt driven making use of the Timer 1 input capture interrupt and the Timer 1 Output compare match interrupt for stable operation.

 

Arduino POV Wiring Diagram - Techydiy

Arduino POV Wiring Diagram – Techydiy

Parts

When you click on links to various merchants on this site and make a purchase, this can result in this site earning a commission. Affiliate programs and affiliations include, but are not limited to, the eBay Partner Network.

Ebay affiliate links:

(16Mhz pro mini for the best performance)
FT232RL usb serial

150mah lipo battery

Neodymium magnets 1/12″x1/8″ 2mmx3mm
0.01uf or 10nf ceramic capacitor
10k resistor 1/8w
Ribbon cable – 9 way
Fidget spinner
M8x20mm bolts
M8x25mm bolt
M8 nuts
M8 washers
M8 dome nut

Test Leds sketch

Test hall effect sensor sketch

Sketch 1 – Basic display driver

 

Sketch 2 – Print any text to the POV display with a frame buffer

Please copy the font.h file here: font.h (1078 downloads )  into the same directory as the sketch.

The sketch also makes use of a frame buffer, which allows you to modify the display data and then display it with   povUpdateDisplay();    when you are ready.

Sketch 3 – Display the RPM (revolutions per minute) on the POV display

Please copy the font.h file here: font.h (1078 downloads )  into the same directory as the sketch.

Sketch 4 – POV Animation Effect –  Rotate Rows

This sketch uses multiple screens or frame buffers to create an animation effect. The frame buffers are initialised with display data which is rotated in each consecutive buffer.

The main program loop switches between the frame buffers to create the effect.

 

 

1 thought on “How to Make an Arduino POV (Persistence of Vision) Display

  1. Laswin Smith

    In the sketch 2, where to display ” povUpdateDisplay” in frame buffer section, please help

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.