This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

How to use the EDMA3 management C6748 follows memory every piece of data?Or C6748 how to deal with?

Other Parts Discussed in Thread: TMS320C6748

Hi Ti!

The use of TMS320C6748 on the Camera image acquisition is VPIF0 FIFO, EDMA3 buffer display, how to use the EDMA3 management C6748 follows memory every piece of data?

=============The temporary buffer, for image processing=======

Uint32 tempSrcYbuffer  =0x80200000;    //Y
Uint32 tempSrcCbbuffer =0x802675c0; //Cb
Uint32 tempBelowHori   =0x8029b0a0; //
Uint32 tempDisYbuffer  =0x80310000;    //Y_dis
Uint32 Bluebuffer      =0x803775c0;    //B
Uint32 Yhoribuffer      =0x80600000;    //DATA(Uint32,128*640)
Uint32 HTcounter  =0x80400000; //hough(Uint32,360*252)
Uint32 G1Yfiltter =0x80460000; //guss区1(Uint8,720*576)
Uint32  G1Ysample =0x804d0000; //1(Uint8,360*288)
Uint32 G2Yfiltter =0x804f0000; //guss2(Uint8,360*288)
Uint32  G2Ysample =0x80510000; //2(Uint8,180*144)
Uint32 Sobelresult =0x80520000; //sobel
Uint32 Binaryreslut =0x80530000; //
Uint32 transzone =0x80540000; //
Uint32 Rgradx      =0x80550000; //x(int)
Uint32 Rgrady      =0x80570000; //yint)
Uint32 sign        =0x80590000; //(uint8)
Uint32 houghresult =0x805a0000; //hough
Uint32 critic      =0x805b0000; //ostu
Uint32 Binaryreslut1 =0x805c0000;
Uint32 Binaryreslut2 =0x805d0000;
Uint32 Binaryreslut3 =0x805e0000;
Uint32 rightbuffer      =0x80600000;

The starter lib hadn't "Uint32" type?

  • Please restate your question with a lot more detail.  It is not clear what you are asking.

  • In the C6748 buffer is EDMA3 can also use the "csl_dat.h" lib function DAT_copy (void*src, void*dst, Uint16 (byteCnt)? in the C6748 starter lib can‘t  (void*src, void*dst, Uint16 (byteCnt)?

  • How to  the used EDMA3  copy many menory data in c6748? follows is c642x of code,How to transplant C6748?

    while(capNewFrame == 0){} 

    capNewFrame =0;
     for(i=0;i<numLines;i++)
     {capNewFrame =0;
     for(i=0;i<numLines;i++)
     {DAT_copy((void *)(capYbuffer + i * numPixels),
                  (void *)(tempDisYbuffer + i * numPixels),
                  numPixels);
      } for(i=0;i<numLines;i++)
     {DAT_copy((void *)(tempDisYbuffer + i * numPixels),
                  (void *)(disYbuffer + i * numPixels),
                  numPixels);
      }

    for(i=0;i<0x33ae0;i++)
           {
               *((Uint8 *)(disCrbuffer +i)) =0x80;
               *((Uint8 *)(disCbbuffer +i)) =0x80;

           }
      for(i=0;i<numLines;i++)
              {        DAT_copy((void *)(capYbuffer + i * numPixels),
                       (void *)(tempSrcYbuffer + i * numPixels),
                        numPixels);

            DAT_copy((void *)(capYbuffer + i * numPixels),
                       (void *)(tempDisYbuffer + i * numPixels),
                        numPixels);
             }

    =============The temporary buffer, for image processing=======

    Uint32 tempSrcYbuffer  =0x80200000;    //Y
    Uint32 tempSrcCbbuffer =0x802675c0; //Cb
    Uint32 tempBelowHori   =0x8029b0a0; //
    Uint32 tempDisYbuffer  =0x80310000;    //Y_dis
    Uint32 Bluebuffer      =0x803775c0;    //B
    Uint32 Yhoribuffer      =0x80600000;    //DATA(Uint32,128*640)
    Uint32 HTcounter  =0x80400000; //hough(Uint32,360*252)
    Uint32 G1Yfiltter =0x80460000; //guss区1(Uint8,720*576)
    Uint32  G1Ysample =0x804d0000; //1(Uint8,360*288)
    Uint32 G2Yfiltter =0x804f0000; //guss2(Uint8,360*288)
    Uint32  G2Ysample =0x80510000; //2(Uint8,180*144)
    Uint32 Sobelresult =0x80520000; //sobel
    Uint32 Binaryreslut =0x80530000; //
    Uint32 transzone =0x80540000; //
    Uint32 Rgradx      =0x80550000; //x(int)
    Uint32 Rgrady      =0x80570000; //yint)
    Uint32 sign        =0x80590000; //(uint8)
    Uint32 houghresult =0x805a0000; //hough
    Uint32 critic      =0x805b0000; //ostu
    Uint32 Binaryreslut1 =0x805c0000;
    Uint32 Binaryreslut2 =0x805d0000;
    Uint32 Binaryreslut3 =0x805e0000;
    Uint32 rightbuffer      =0x80600000;

  • How C6748 DMA Multiple data DAT_copy problem?