Displaying more than two videos
without pause requires host intervention since there are only two sets of
configuration registers. The HOST IRQ signal includes interrupt events that can help
seamlessly transition to additional video content.
- Write FPGA Interrupt Enable register “Video configuration
complete” bit.
- Read FPGA Interrupt Set register and Write FPGA Interrupt Clear
register.
- Write 1 to the FPGA
Interrupt Clear register to clear any active interrupts that can be
holding the HOST IRQ signal high.
- Write Video Frame Rate register.
- The clock count should
match the length of the DMD sequence that is used.
- Write Video Start Address 1
register.
- Start address should
match the location of the first video in Flash memory. This can be found
in the build log output from the DLP Composer tool.
- Write Video Configuration 1
register.
- Frame count = number of
frames in the video
- Loop count = 1
- Write Video Start Address 2
register.
- Start address should
match the location of the second video in Flash memory. This can be
found in the build log output from the DLP Composer tool.
- Write Video Configuration 2
register.
- Frame count = number of
frames in the video
- Loop count = 1
- Write Video Control register.
- Loop configurations =
0
- Toggle configurations =
1
- Configurations pointer =
0
- Play = 1
- Stop = 0
- Auto-stop = 0
- Wait for HOST IRQ signal to interrupt host MCU and read FPGA
Interrupt Set register to confirm that “video configuration complete” is a
source of the interrupt.
- Write Video Start Address 1
register.
- Start address should
match the location of the third video in flash memory
- Write Video Configuration 1
register.
- Frame count = number of
frames in the video
- Loop count = 1
- 12. Wait for HOST IRQ signal to interrupt host MCU and read
FPGA Interrupt Set register to confirm that “video configuration complete” is a
source of the interrupt.
- Write Video Control register.
- Loop configurations =
0
- Toggle configurations =
1
- Configurations pointer =
0
- Play = 1
- Stop = 0
- Auto-stop = 0
The first two
videos are set up in Video Configuration 1 and 2. Then, the host MCU should wait
until the “video configuration complete” interrupt triggers to indicate that the
FPGA has swapped to displaying Configuration 2. After this occurs, the host MCU can
modify Configuration 1 without affecting the displayed video content. It should then
store the settings of the third video in Configuration1 before video 2 completes.
After video 2 completes, the FPGA will loop back to configuration 1, which should
now be set up to display video 3. This process can be repeated for any desired
number of videos or images. After HOST IRQ interrupts to switch to the final video
configuration, the Video Control register can be set to auto-stop after completion.
When this register is written, do not set the play bit. If the play bit is set at
this time, the video configuration would restart at the specified configuration
pointer on the next video frame instead of waiting for the current configuration to
complete.