Forcing the Channel Number to a DMA Component of PSoC® 3 and PSoC 5LP - KBA203653

Version: **

 

Question:

When I compile a DMA project in PSoC Creator™, a channel number (anything from 0 to 31) is generated randomly and is displayed on the DMA tab of the .cydwr file. Is it possible to force this channel number to a DMA Component in PSoC Creator? 

 

Answer:

Yes, It is possible to force the channel number to a DMA Component. Typically, for forcing the placement of a Component, you would add a placement directive under “Directives” tab of the .cydwr file of the Creator project (See KBA85474 for an example). However, it is not possible to force the channel number of a DMA Component explicitly in the same manner.

Follow the steps below for forcing the channel number:

  1. Go to the "Components" tab of the Workspace Explorer. 
  2. Right-click the TopDesign component and select "Add Component Item."
  3. In the Add Component Item dialog, select "Misc. File" and set the name to "TopDesign.ctl". Click "Create New."
  4.  

    Add the following line in the TopDesign.ctl file:

      

    ATTRIBUTE placement_force OF DMA_1 : LABEL IS "DMA(0,13)";

      

    The first parameter of DMA must be 0. The second parameter is the DMA Channel number. Valid channel numbers are from 0 to 31. In this example, DMA_1 is the instance name.

  5. Build the design and verify the placement of the DMA instances in the “DMA” tab of the .cydwr file.