由于只有两组配置寄存器,因此在不暂停的情况下显示两个以上视频需要主机干预。HOST IRQ 信号包括中断事件,其可帮助无缝切换到其他视频内容。
- 写入 FPGA 中断启用寄存器“视频配置完成”位。
- 读取 FPGA 中断设置寄存器并写入 FPGA 中断清除寄存器。
- 向 FPGA 中断清除寄存器写入 1,以便清除可将 HOST IRQ 信号保持为高电平的任何活动中断。
- 写入视频帧速率寄存器。
- 时钟计数应与所使用的 DMD 序列的长度相匹配。
- 写入视频起始地址 1 寄存器。
- 起始地址应与第一个视频在闪存存储器中的位置相匹配。这可以在 DLP Composer 工具的构建日志输出中查找。
- 写入视频配置 1 寄存器。
- 帧计数 = 视频中的帧数
- 循环计数 = 1
- 写入视频起始地址 2 寄存器。
- 起始地址应与第二个视频在闪存存储器中的位置相匹配。这可以在 DLP Composer 工具的构建日志输出中查找。
- 写入视频配置 2 寄存器。
- 帧计数 = 视频中的帧数
- 循环计数 = 1
- 写入视频控制寄存器。
- 循环配置 = 0
- 切换配置 = 1
- 配置指针= 0
- 播放 = 1
- 停止 = 0
- 自动停止 = 0
- 等待 HOST IRQ 信号中断主机 MCU,然后读取 FPGA 中断设置寄存器,以确认“视频配置完成”是中断的来源。
- 写入视频起始地址 1 寄存器。
- 起始地址应与第三个视频在闪存存储器中的位置相匹配。
- 写入视频配置 1 寄存器。
- 帧计数 = 视频中的帧数
- 循环计数 = 1
- 12. 等待 HOST IRQ 信号中断主机 MCU,然后读取 FPGA 中断设置寄存器,以确认“视频配置完成”是中断的来源。
- 写入视频控制寄存器。
- 循环配置 = 0
- 切换配置 = 1
- 配置指针= 0
- 播放 = 1
- 停止 = 0
- 自动停止 = 0
在视频配置 1 和 2 中设置前两个视频。然后,主机 MCU 应一直等待,直到“视频配置完成”中断触发指示 FPGA 已交换到显示配置 2。发生这种情况后,主机 MCU 可以修改配置 1,而不会影响所显示的视频内容。然后,它应在视频 2 完成之前将第三个视频的设置存储在配置 1 中。视频 2 完成后,FPGA 将循环回到配置 1,现在应将该配置设置为显示视频 3。可以针对任何所需数量的视频或图像重复此过程。在 HOST IRQ 中断切换到最终视频配置后,可将视频控制寄存器设置为在完成之后自动停止。写入该寄存器时,请勿设置播放位。如果此时设置了播放位,视频配置将在下一个视频帧上的指定配置指针处重新启动,而不是等待当前配置完成。