您的位置: OpenADSP社区论坛 -> Blackfin专区 -> 新手上路 -> [求助]BF548的EPPI2行中断配置
本帖共有545个阅读者
发表帖子 发表投票 回复主题
[求助]BF548的EPPI2行中断配置
blizzard(论坛新手)
blizzard
头衔:社区公民
帮派:无帮无派
帖数:17
金钱:250
积分:22
注册时间:2014/11/11
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
[求助]BF548的EPPI2行中断配置
版主,您好!

BF548采集图像,EPPI行中断如何来配置呢?我想采一行灰度图像,利用采集下一行之前的空隙时间把采集的这一行二值化,这样整幅图像采集完二值化也完毕了。
看论坛里其他帖子,是开启内层循环,可是我配置后不生效。

摄像头的时序是最后图片中的时序波形。

#define PPI2_POLS                 0<<13
#define PPI2_POLC                 2<<11
#define PPI2_DIR_RX               0<<1
#define PPI2_XFR_TYPE11           3<<2
#define PPI2_FS_CFG               2<<4
#define PPI2_DLEN_8               0<<15

void drv_PPI2_Init(void)
{
//Init PPI2
*pEPPI2_CONTROL = PPI2_POLS| PPI2_POLC | PPI2_DLEN_8 | PPI2_DIR_RX | PPI2_XFR_TYPE11 | PPI2_FS_CFG;
ssync();
*pEPPI2_LINE = IMAGE_X_SIZE;
ssync();
*pEPPI2_FRAME = IMAGE_Y_SIZE;
ssync();
}

void drv_PPI2_DMAInit(void)
{
//Init DMA for PPI2
*pDMA14_START_ADDR = Cmos2LineBuffer;
*pDMA14_X_COUNT = IMAGE_X_SIZE;
*pDMA14_X_MODIFY = 0x1;
*pDMA14_Y_COUNT = IMAGE_Y_SIZE;
*pDMA14_Y_MODIFY = 0x1;
*pDMA14_CONFIG = WNR | DI_EN | WDSIZE_8 | DMA2D | DI_SEL;
ssync();
}


void drv_PPI2_InterruptInit(void)
{
int temp;
temp = *pSIC_IAR4;
*pSIC_IAR4 = temp &0xf0ffffff;
*pSIC_IAR4 |= 3<<24;
register_handler(ik_ivg10, EPPI2_RxIsr);
ssync();
*pSIC_IMASK1 |= 0x0040; //EPPI2_RxIsr
ssync();
}

//中断处理函数
EX_INTERRUPT_HANDLER(EPPI2_RxIsr)
{
*pDMA14_IRQ_STATUS |= DMA_DONE;
*pDMA14_CONFIG &= ~0x1;
ssync();
*pEPPI2_CONTROL &= ~0x1;
ssync();

        //做图像处理
        //TO DO ...

*pDMA14_CONFIG |= 0x1;
*pEPPI2_CONTROL |= 0x1;
ssync();
drv_GPIO_TogglePH(2);
}




上传的图片
  20154272295287.jpg [ 11.43 KB 754×113 ] (缩略时请点击查看原图)

 


上传的图片
  20154272211287.jpg [ 37.77 KB 916×207 ] (缩略时请点击查看原图)

 





「该帖子被 blizzard 在 2015-04-27 23:55:12 编辑过」

这家伙很懒,什么也没有留下!
等级:论坛新手 参考IP地址:*.*.*.*
2015/4/27 22:11:20
尊贵身份标志
OpenADSP(管理员)
OpenADSP
头衔:社区公民
帮派:无帮无派
帖数:5195
金钱:34806
积分:6378
注册时间:2011/6/7
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
顶一下

我是OP...
等级:管理员 参考IP地址:*.*.*.*
2015/5/3 21:52:43
尊贵身份标志
andy(论坛版主)
andy
头衔:社区公民
帮派:无帮无派
帖数:2287
金钱:11132
积分:2263
注册时间:2011/6/8
2信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线

PPI的配置值和你连接的视频设备输出图像格式,尺寸大小,输出时序有很大关系,凭空发一个配置值没法看的。

在这个论坛的下载区中,有一个bf533上利用乒乓buffer实现采集一行间隙处理数据的代码,你可以找找,关键字是“乒乓buffer”。这个机制和你需要的差不多。



这家伙很懒,什么也没有留下!
等级:论坛版主 参考IP地址:*.*.*.*
2015/5/10 23:48:49
ldz5832(论坛新手)
ldz5832
头衔:社区公民
帮派:无帮无派
帖数:9
金钱:184
积分:14
注册时间:2017/3/3
3信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
bf609是配置成dma中断,在配置寄存器中设置中断为采一行或采一场数据完成后进中断。仅供参考。

这家伙很懒,什么也没有留下!
等级:论坛新手 参考IP地址:*.*.*.*
2017/7/25 17:47:38
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.159188 Call, 1 Queries, Processed in 0.640625 second(s),