490428261

490428261

0个粉丝

3

问答

0

专栏

0

资料

490428261  发布于  2018-12-21 09:15:57
采纳率 0%
3个问答
2169

3531A的输入时钟管脚复用请教

 
各位前辈,小弟用3531A接4路16bit bt1120 74Mhz的视频输入,原来的硬件接的是:
VI1_CLK/GPIO21_1/VI0_CLK,VI5_CLK/GPIO21_7/VI4_CLK,VI3_CLK/GPIO21_4/VI2_CLK,VI7_CLK/GPIO15_7/VI6_CLK的时钟脚,使用的vicap配置是SDK默认的配置
#VICAP
himm 0x120F0000 0x2;
himm 0x120F0024 0x2;
himm 0x120F0048 0x2;  # 0:GPIO21_2  01:VI_ADC_REFCLK0   2:VI1_CLK
himm 0x120F004c 0x2;
himm 0x120F0070 0x2;
himm 0x120F0094 0x2;  # 0:GPIO21_5  01:VI_ADC_REFCLK1   2:VI3_CLK
himm 0x120F0098 0x2;
himm 0x120F00bc 0x2;
himm 0x120F00E0 0x2;  # 0:GPIO12_1  01:VI_ADC_REFCLK2   2:VI5_CLK
himm 0x120F00e4 0x2;
himm 0x120F0108 0x2;
himm 0x120F012C 0x2;  # 0:GPIO20_6  01:VI_ADC_REFCLK3   2:VI7_CLK
就有图像输出了。
现在硬件接的是:
VI0_CLK/GPIO21_0/VI_ADC_REFCLK0,VI2_CLK/GPIO21_3/VI_ADC_REFCLK1,VI4_CLK/GPIO21_6/VI_ADC_REFCLK2,VI6_CLK/GPIO12_2/VI_ADC_REFCLK3这几个脚的时钟脚,按手册上说的是可以任意选择的。现在vicap的配置为
#VICAP
himm 0x120F0000 0x0;
himm 0x120F0024 0x2;
himm 0x120F0048 0x1;  # 0:GPIO21_2  01:VI_ADC_REFCLK0   2:VI1_CLK
himm 0x120F004c 0x0;
himm 0x120F0070 0x2;
himm 0x120F0094 0x1;  # 0:GPIO21_5  01:VI_ADC_REFCLK1   2:VI3_CLK
himm 0x120F0098 0x0;
himm 0x120F00bc 0x2;
himm 0x120F00E0 0x1;  # 0:GPIO12_1  01:VI_ADC_REFCLK2   2:VI5_CLK
himm 0x120F00e4 0x0;
himm 0x120F0108 0x2;
himm 0x120F012C 0x1;  # 0:GPIO20_6  01:VI_ADC_REFCLK3   2:VI7_CLK
,vi的配置代码为
        [code]VI_DEV_ATTR_S        stViDevAttr;

        memset(&stViDevAttr, 0, sizeof(stViDevAttr));
        /*interface mode*/
        stViDevAttr.enIntfMode = VI_MODE_BT1120_STANDARD;
        /*work mode, 1/2/4 multiplex*/
        stViDevAttr.enWorkMode = VI_WORK_MODE_1Multiplex;
        /* r_mask         g_mask    b_mask*/
        stViDevAttr.au32CompMask[0] = 0xFF000000;
        stViDevAttr.au32CompMask[1] = 0x00FF0000;
        /* for single/double edge, must be set when double edge*/
        stViDevAttr.enClkEdge = VI_CLK_EDGE_SINGLE_UP;
        //stViDevAttr.enDataSeq = VI_INPUT_DATA_YVYU;
        /*AdChnId*/
        stViDevAttr.s32AdChnId[0] = -1;
        stViDevAttr.s32AdChnId[1] = -1;
        stViDevAttr.s32AdChnId[2] = -1;
        stViDevAttr.s32AdChnId[3] = -1;
        /*data type*/
        stViDevAttr.bDataRev = HI_FALSE;[/code]
///////////////////////////////////////////////////////
        [code]SIZE_S stTargetSize = { stSize.u32Width, stSize.u32Height };
        RECT_S stCapRect = { 0, 0, stSize.u32Width, stSize.u32Height };
        VI_CHN_ATTR_S        stChnAttr;

        memset(&stChnAttr, 0, sizeof(stChnAttr));
        stChnAttr.stCapRect = stCapRect;
        stChnAttr.stDestSize = stTargetSize;
        stChnAttr.enCapSel = VI_CAPSEL_BOTH;
        stChnAttr.enPixFormat = PIXEL_FORMAT_YUV_SEMIPLANAR_420;
        stChnAttr.bMirror = HI_FALSE;
        stChnAttr.bFlip = HI_FALSE;
        stChnAttr.s32SrcFrameRate = m_iSrcFrmRate;                //原始帧率
        stChnAttr.s32DstFrameRate = m_iDstFrmRate;                //目标帧率
        stChnAttr.enScanMode = VI_SCAN_PROGRESSIVE;[/code]

/proc/umap/vi的信息如下:
~ # cat /proc/umap/vi

[VIU] Version: [Hi3531A_MPP_V1.0.4.0 B030 Release], Build Time: [Jan 13 2017, 17:17:09]

-----MODULE PARAM--------------------------------------------------------------
detect_err_frame drop_err_frame stop_int_level   max_cas_gap vi_vb_source
              10              0              0        28000            0

-----VI DEV ATTR---------------------------------------------------------------
Dev   IntfM  WkM  ComMsk0  ComMsk1    CLKM AD0 AD1 AD2 AD3   Seq   DPath DType DRev   bDllSlave
   0 BT1120S 1Mux ff000000   ff0000      UP  -1  -1  -1  -1  UVUV  ByPass   YUV    N           Y
   2 BT1120S 1Mux ff000000   ff0000      UP  -1  -1  -1  -1  UVUV  ByPass   YUV    N           Y
   4 BT1120S 1Mux ff000000   ff0000      UP  -1  -1  -1  -1  UVUV  ByPass   YUV    N           Y
   6 BT1120S 1Mux ff000000   ff0000      UP  -1  -1  -1  -1  UVUV  ByPass   YUV    N           Y

-----VI HIGH DEV ATTR---------------------------------------------------------------
Dev  InputM  WkM  ComMsk0  ComMsk1 AD0 AD1 AD2 AD3   Seq CombM CompM ClkM  Fix FldP   DPath DType DRev

-----VI PHYCHN ATTR------------------------------------------------------------
PhyChn CapX CapY  CapW  CapH  DstW  DstH CapSel ScanM     SkipM Mirror Flip IntEn PixFom SrcRat DstRat SkipMEx SkipMExYMask SkipMExCMask
      0    0    0  1920  1080  1920  1080   both     P   SKIPNON      N    N    Y   sp420     30     30       N 0x0          0xa
      8    0    0  1920  1080  1920  1080   both     P   SKIPNON      N    N    Y   sp420     30     30       N 0x0          0xa
     16    0    0  1920  1080  1920  1080   both     P   SKIPNON      N    N    Y   sp420     30     30       N 0x0          0xa
     24    0    0  1920  1080  1920  1080   both     P   SKIPNON      N    N    Y   sp420     30     30       N 0x0          0xa

-----VI PHYCHN MINOR ATTR------------------------------------------------------------
PhyChn CapX CapY  CapW  CapH  DstW  DstH CapSel ScanM Mirror   Flip  PixFom  MixCap DwScal SrcRat DstRat

-----VI PHYCHN STATUS 1----------------------------------------------------------
PhyChn BindDev  Way      IntCnt  VbFail  LosInt  TopLos  BotLos BufCnt  IntT  SendT  Field  Stride
      0     0     0           0       0       2       0       2      2     0     15    frm    1920
      8     2     0           0       0       2       0       2      2     0      9    frm    1920
     16     4     0           0       0       2       0       2      2     0      5    frm    1920
     24     6     0           0       0       2       0       2      2     0      4    frm    1920

-----VI PHYCHN STATUS 2---------------------------------------------------------
PhyChn MaxIntT IntGapT MaxGapT OverCnt LIntCnt  ThrCnt AutoDis CasAutD  TmgErr      ccErrN    IntRat
      0       0       0       0       0       0       0       0       0       0           0         0
      8       0       0       0       0       0       0       0       0       0           0         0
     16       0       0       0       0       0       0       0       0       0           0         0
     24       0       0       0       0       0       0       0       0       0           0         0

-----VI PHYCHN VBI ATTR---------------------------------------------------------
PhyChn   VbiId       X       Y   Local     Len CasErrN

-----VI CASCADE CHN ATTR---------------------------------------------------------
CasChn    Dev  PhyChn  SrcRat  DstRat

-----USER PIC INFO-------------------------------------------------------------
  UPicID   Width  Height  Stride   Field PixForm  PoolID   PhyAddr bUpdate
       0    1920    1080    1920    intl   sp420       0  4ac4a000       N

-----VI CHN STATUS-------------------------------------------------------------
ViChn   bEnUsrP   FrmTime   FrmRate     SendCnt      SwLost     Depth    Rotate
     0         Y     39991        30       87852           0         0      NONE
     8         Y     39978        30       87852           0         0      NONE
    16         Y     39970        30       87852           0         0      NONE
    24         Y     39970        30       87852           0         0      NONE

-----VI CHN CALL VGS STATUS 1-------------------------------------------------
ViChn   UsrBgnNOk   UsrCancel    UsrEndOk     UsrCbOk     CvrBgnNOk   CvrCancel    CvrEndOk     CvrCbOk

-----VI CHN CALL VGS STATUS 2-------------------------------------------------
ViChn   OsdBgnNOk   OsdCancel    OsdEndOk     OsdCbOk      ScaleNOk   SclCancel    SclEndOk     SclCbOk

为什么没有中断?应该还有这么设置?
我来回答
回答5个
时间排序
认可量排序

490428261

0个粉丝

3

问答

0

专栏

0

资料

490428261 2018-12-27 16:23:50
认可0
问题已经解决,还是管脚复用的问题,mask的问题

qn1522720710

0个粉丝

9

问答

0

专栏

0

资料

qn1522720710 2020-03-19 16:54:49
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=118510&ptid=55640]490428261 发表于 2018-12-27 16:23[/url]
问题已经解决,还是管脚复用的问题,mask的问题[/quote]

你好,我这边也是用4路,bt1120,硬件接法是跟你的一样的(VI0_CLK +VI2_CLK+VI4_CLK+VI6_CLK) cat vi 中断也没有。
请问你的是怎么解决的?

490428261

0个粉丝

3

问答

0

专栏

0

资料

490428261 2020-03-26 14:11:14
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=155730&ptid=55640]qn1522720710 发表于 2020-3-19 16:54[/url]
你好,我这边也是用4路,bt1120,硬件接法是跟你的一样的(VI0_CLK +VI2_CLK+VI4_CLK+VI6_CLK) cat vi  ...[/quote]

建议尝试调整一下
        stViDevAttr.au32CompMask[0] = 0xFF000000;
        stViDevAttr.au32CompMask[1] = 0x00FF0000;
这两个数值看看,我当时时调了这个出来的。

qn1522720710

0个粉丝

9

问答

0

专栏

0

资料

qn1522720710 2020-03-26 16:25:42
认可0
本帖最后由 qn1522720710 于 2020-3-26 16:27 编辑

[quote][url=forum.php?mod=redirect&goto=findpost&pid=156002&ptid=55640]490428261 发表于 2020-3-26 14:11[/url]
建议尝试调整一下
        stViDevAttr.au32CompMask[0] = 0xFF000000;
        stViDevAttr.au32CompM ...[/quote]

感谢啦,我调试出来,同时我也修改了vi时钟的管脚复用(主要的坑)
现在遇到新问题,不知道楼主有没有遇到过
<3>[  vpss] [Func]:VpssFakeQuery [Line]:789 [Info]:<3>[  vpss] [grp0}:get  buffer size 3110400 fail
...
<3>[  vpss] [Func]:VpssFakeQuery [Line]:789 [Info]:<3>[  vpss] [grp15}:get  buffer size 3110400 fail

qn1535522399

0个粉丝

5

问答

0

专栏

0

资料

qn1535522399 2018-12-21 21:24:06
认可0
:):):):):):):):):)
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区