• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Digital Signal Processors (DSP) » C6000 Single Core DSP » C64x Single Core DSP Forum » C6457 CSL McBSP - EDMA single shot Interrupt only
Share
C6000 Single Core DSP
  • Forums
  • Announcements
Options
  • Subscribe via RSS

C6457 CSL McBSP - EDMA single shot Interrupt only

C6457 CSL McBSP - EDMA single shot Interrupt only

This question is not answered
William Martin
Posted by William Martin
on Jul 19 2012 01:37 AM
Prodigy200 points

Hi, 

     I'd like to expand the CSL example provided for the C6457 that performs loopback mode on the McBSP using the DMA to transfer data.   When I run the example, it works great.   When I try to perform a manual trigger, the interrupt no longer fires. 

I am using the C6457, CCS v.5.1, and the PDK that comes with MCSDK 1.08, which includes the CSL examples. 

e.g.

// Start TI supplied code.

WAIT_FOR_1_CLK;

/* wait for Transmit complete Interrupt */

while (!intFlag);

/* wait for Transmit complete Interrupt */

while (!rxintFlag);

// end TI supplied code.

// Added to cause manual trigger of data. 

CSL_edma3HwChannelControl(hChannel,CSL_EDMA3_CMD_CHANNEL_SET,NULL);

 

what am I missing?  Do I need to reload the channel information?  

Thanks in advance.  

Bill  

EDMA CSL C6457 PDK
Report Abuse
  • Reply
You have posted to a forum that requires a moderator to approve posts before they are publicly available.
All Replies
  • RandyP
    Posted by RandyP
    on Jul 19 2012 14:04 PM
    Guru60070 points

    Bill,

    This is probably a sequencing problem with how the McBSP interacts with the other components through its event and interrupt signalling and hand-shaking.

    But it is not clear whether your interrupts come from the EDMA3 or the McBSP, or what the states are for the flags and events out of the EDMA3 and the McBSP.

    Prior to the CHANNEL_SET command, please check the status flags of the McBSP to see what its signalling is and whether the buffers are full or empty. Also, check the values in the following EDMA registers, including the ones with H when there are two 32-bit registers: EMR, ER, CER, EER, SER, IER, IPR, and the active and link PaRAM for the channels you are using. Which DMA channels are you using for the McBSP operations?

    Regards,
    RandyP

    Search for answers, Ask a question, click  Verify  when complete, Help others, Learn more.

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • William Martin
    Posted by William Martin
    on Jul 20 2012 11:20 AM
    Prodigy200 points

    Hi Randy,

         I'm using the TI supplied example.  There wasn't any changes to the McBSP(0) configuration.  I did have to setup the linked param sets, which were not in my original code.   

    C:\ti\pdk_c64x_1_00_00_06\packages\ti\csl\c6457\csl_c6457\example\mcbsp\mcbsp_edma\

    After adding in linked channels, I'm currently seeing a TCC Interrupt but, not the RX receive interrupt (McBSP is in loopback mode).  The param set looks like  --> DMA channel 12 for transmit, DMA channel 64 for the reload paramset for transmit.   I only open one channel, and let the linked paramset happen naturally by setting the linkBCntrld register:

    myParamSetup.linkBcntrld = CSL_EDMA3_LINKBCNTRLD_MAKE(hParamPing,0);

    myParamSetup.linkBcntrld = CSL_EDMA3_LINKBCNTRLD_MAKE(hParamPong,0);

    and

    How do I check with is the active and linked paramset currently being used for those channels?   

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • RandyP
    Posted by RandyP
    on Jul 22 2012 19:21 PM
    Guru60070 points

    William,

    In the Training section of TI.com, there is a training video set for the C6474. It is a different device, but the EDMA3 is the same, other than the possibility that the number of channels and such might vary. The EDMA/QDMA/IDMA Module will help get us in sync with the same terms and will help you understand things like active and link PARAM sets. You can find the complete video set at http://focus.ti.com/docs/training/catalog/events/event.jhtml?sku=OLT110002 .

    My guess is that what you really want to do is to get continuous data going out the Tx side of McBSP0 and coming in on the Rx side of McBSP0. The mcbsp_edma example does not get you very close to that, and the way to get there is not doing a manual trigger after every 16 samples. I think the video will help a lot.

    Regards,
    RandyP

    Search for answers, Ask a question, click  Verify  when complete, Help others, Learn more.

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
TI E2E™ Community
  • Support Forums
  • Blogs
  • Videos
  • Groups
  • Site Support & Feedback
  • Settings
TI E2E™ Community Groups
  • TI University Program
  • Make the Switch
  • Microcontroller Projects
  • Motor Drive & Control
Other Communities
  • Deyisupport
  • Designsomething.org
  • beagleboard.org
  • TI on Element 14
  • TI on TechXchangeSM
Other Technical & Support Resources
  • WEBENCH® Design Center
  • Product Information Centers
  • Technical Documents
  • TI Design Network
  • TI Technical Articles
  • TI Training

All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
embedded processors, along with software, tools and the industry’s largest sales/support staff.

© Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy Policy | Terms of Use