DSP采集图像 - TMS320C6748 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 10903|回复: 13
打印 上一主题 下一主题

DSP采集图像

[复制链接]

10

主题

29

帖子

162

积分

注册会员

Rank: 2

积分
162
跳转到指定楼层
楼主
发表于 2014-12-19 15:20:45 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
DSP对两个摄像头传感器采集图像,大神们有什么好的建议和方法吗,6748只有一个VPIF口,求大神指点
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

10

主题

33

帖子

1193

积分

金牌会员

Rank: 6Rank: 6

积分
1193
14#
发表于 2015-1-5 10:23:02 | 只看该作者
lijie 发表于 2015-1-4 10:12
怎么开缓存,求指点

参考facedetect就可以了
回复 支持 反对

使用道具 举报

10

主题

29

帖子

162

积分

注册会员

Rank: 2

积分
162
13#
 楼主| 发表于 2015-1-4 10:12:57 | 只看该作者
Lewis 发表于 2014-12-31 17:48
没开缓存,中断的响应速度可能会不够,没使用缓存中断响应要几个微秒的时间
...

怎么开缓存,求指点
回复 支持 反对

使用道具 举报

0

主题

184

帖子

1137

积分

QQ游客

积分
1137
12#
发表于 2014-12-31 17:48:13 | 只看该作者
没开缓存,中断的响应速度可能会不够,没使用缓存中断响应要几个微秒的时间
回复 支持 反对

使用道具 举报

10

主题

29

帖子

162

积分

注册会员

Rank: 2

积分
162
11#
 楼主| 发表于 2014-12-25 09:11:15 | 只看该作者
我用的普通IO口配置的:行、场和像素
void SetupIntc(void)
{GPIOIntTypeSet(SOC_GPIO_0_REGS, 85, GPIO_INT_TYPE_RISEDGE);
    // 配置  GPIO5[6] 为上升沿触发
    GPIOIntTypeSet(SOC_GPIO_0_REGS, 11, GPIO_INT_TYPE_RISEDGE);
    // 配置  GPIO0[10] 为上升沿触发
    GPIOIntTypeSet(SOC_GPIO_0_REGS, 64, GPIO_INT_TYPE_RISEDGE);
// 配置  GPIO3[15] 为上升沿触发

GPIOBankIntEnable(SOC_GPIO_0_REGS, 3);
    GPIOBankIntEnable(SOC_GPIO_0_REGS, 0);
    GPIOBankIntEnable(SOC_GPIO_0_REGS, 5);
        // 注册中断服务函数
        IntRegister(C674X_MASK_INT15, FRAME_INT);
//        // 映射中断到 DSP 可屏蔽中断
        IntEventMap(C674X_MASK_INT15, SYS_INT_GPIO_B5INT);
//
//        // 使能 DSP 可屏蔽中断
        IntEnable(C674X_MASK_INT15);

        // 注册中断服务函数
        IntRegister(C674X_MASK_INT14, LINE_INT);
//        // 映射中断到 DSP 可屏蔽中断
        IntEventMap(C674X_MASK_INT14, SYS_INT_GPIO_B3INT);
//
//        // 使能 DSP 可屏蔽中断
        IntEnable(C674X_MASK_INT14);

        // 注册中断服务函数
        IntRegister(C674X_MASK_INT7, PIXCLK_INT);
//        // 映射中断到 DSP 可屏蔽中断
        IntEventMap(C674X_MASK_INT7, SYS_INT_GPIO_B0INT);
//
//        // 使能 DSP 可屏蔽中断
        IntEnable(C674X_MASK_INT7);}
其中FRAME_INT(场),PIXCLK_INT(像素),LINE_INT(行),为中断服务函数。


void FRAME_INT(void)
{

    // 禁用 GPIO BANK 5 中断
    GPIOBankIntDisable(SOC_GPIO_0_REGS, 5);
                    // 清除 GPIO BANK 5 中断状态
                   IntEventClear(SYS_INT_GPIO_B5INT);
                    if(GPIOPinIntStatus(SOC_GPIO_0_REGS, 85) == GPIO_INT_PEND)
                    {

                            Flag0=1;
                            // 清除 GPIO5[4] 中断状态

                    GPIOPinIntClear(SOC_GPIO_0_REGS, 85);
                    // 清除 GPIO5[6] 中断状态

                    }

                   GPIOBankIntEnable(SOC_GPIO_0_REGS, 5);

}
来一个上升沿,我就让Flag0=1,不知道哪里有问题
回复 支持 反对

使用道具 举报

0

主题

184

帖子

1137

积分

QQ游客

积分
1137
10#
发表于 2014-12-24 18:58:00 | 只看该作者
不明白你是怎么配置的三个中断口,下面是upp接收数据的时序图,1、将cmos的像素时钟接CLOCK,
2、行同步信号接ENABLE,
3、忽略START和WAIT,
4、定义好接收数据的大小就可以接收




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

10

主题

29

帖子

162

积分

注册会员

Rank: 2

积分
162
9#
 楼主| 发表于 2014-12-24 15:08:40 | 只看该作者
lijie 发表于 2014-12-22 10:11
用upp接口实现的话,你能不能给我稍微详细的说点,感激不尽

我用upp接口试了,配置了三个中断口,VSYNC(场同步),HSYNC(行同步),PCLK(像素时钟),为上升沿触发,场和行两个中断可以触发,但是PCLK像素时钟触发不了,不知道为什么?
回复 支持 反对

使用道具 举报

10

主题

29

帖子

162

积分

注册会员

Rank: 2

积分
162
8#
 楼主| 发表于 2014-12-23 16:54:33 | 只看该作者
lijie 发表于 2014-12-23 14:37
VPIF 是有两个输入通道的(0和1)
在部分模式下可以使用,如在BT.656模式下可不可以用CMOS摄像头进行采集 ...


BT656这种模式,行、场信号是嵌入在数据流中,是不是就不能用这种模式了呀?
回复 支持 反对

使用道具 举报

10

主题

29

帖子

162

积分

注册会员

Rank: 2

积分
162
7#
 楼主| 发表于 2014-12-23 14:37:47 | 只看该作者
希望缄默 发表于 2014-12-20 12:30
VPIF 是有两个通道的
在部分模式下可以使用

VPIF 是有两个输入通道的(0和1)
在部分模式下可以使用,如在BT.656模式下可不可以用CMOS摄像头进行采集?我在手册上看的
回复 支持 反对

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
6#
发表于 2014-12-23 09:51:21 | 只看该作者
lijie 发表于 2014-12-23 08:12
用upp接口实现的话,你能不能给我稍微详细的说点,帮我一下吧,不胜感激
...

这个跟你具体设备有关~
你实现 CMOS 需要的时序就可以了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2025-6-16 03:22 , Processed in 0.043140 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表