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?
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:
- Go to the "Components" tab of the Workspace Explorer.
- Right-click the TopDesign component and select "Add Component Item."
- In the Add Component Item dialog, select "Misc. File" and set the name to "TopDesign.ctl". Click "Create New."
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.
- Build the design and verify the placement of the DMA instances in the “DMA” tab of the .cydwr file.