DM6437 VPFE和VPBE的中断机制

VPFE和VPBE两者的中断,都是来源于VSYNC这个垂直同步信号。而这里的中断,往往就形成一套完整的缓冲机制,包括采集和显示。

在VPFE处,可以看到VINT0和VINT1等是在VSYNC的基础上的,记录HSYNC的个数后,才能产生一次中断,而VSYNC会直接锁存住直到下次才会修改。这也说明了采集在前中断在后。在VPFE初始化的时候,设定的采集存储缓冲区buffe[0],CCDC直接将数据读入到这个地址buffer[0]处。随后在中断里修改存储地址为buffer[1],但不会在这里生效。等待下次VSYNC到来时,使得地址buffer[1]生效,数据将存储到buffer[1]处。从而表明中断时设置了下一帧数据的存储地址,并在VSYNC时生效。当前采集的数据保存地址是在上一个中断设置的。

 

在VPBE处,VENC模块将会自动产生VSYNC(根据配置的输出制式NTSC或者PAL)表示新的一帧图像开始显示。在VPBE初始化时,设定了数据来源地址为buffer[0],经过VSYNC后有效锁存,此时会先将数据读入OSD,再输出到VENC。而此时产生的中断处设置读取数据的地址为buffe[1],将会在下一个VSYNC出现时锁存住,而成显示buffer[1]。从而表明了中断时设置下次要读取的数据地址但不立即生效,需要在当前帧结束时,下帧开始时有效。每隔一个VSYNC就会产生一个VENC中断。中断出现紧随着寄存器的更新而出现。即寄存器更新后立即出现VENC中断。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值