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.

CC1110 and simpliciti problems

Other Parts Discussed in Thread: SIMPLICITI

Hello I have a few questions about CC1110F32 and SimpliciTi.

I have a SMARTRFCC1110-868 and I am using simpliciTi to make a pear to pear communication project.

The project needs a non volatile communication system. (after a power reset it still communicates with the linked device). So I used the flash asn storeed there the relevant data. The way i did this was based on the basic examples and used the flashDMA example.

The problem is that when I use this method Simplicity stops sending and receiving. I nailed the problem down to this function upon flash write configuration:

// Configure DMA channel 0. Settings:
dmaConfig0.SRCADDRH = ((uint16)ram >> 8) & 0x00FF;
dmaConfig0.SRCADDRL = (uint16)ram & 0x00FF;
dmaConfig0.DESTADDRH = ((uint16)&X_FWDATA >> 8) & 0x00FF;
dmaConfig0.DESTADDRL = (uint16)&X_FWDATA & 0x00FF;
dmaConfig0.VLEN = DMA_VLEN_USE_LEN;
dmaConfig0.LENH = (DATA_AMOUNT >> 8) & 0x00FF;
dmaConfig0.LENL = DATA_AMOUNT & 0x00FF;
dmaConfig0.WORDSIZE = DMA_WORDSIZE_BYTE;
dmaConfig0.TMODE = DMA_TMODE_SINGLE;
dmaConfig0.TRIG = DMA_TRIG_FLASH;
dmaConfig0.SRCINC = DMA_SRCINC_1;
dmaConfig0.DESTINC = DMA_DESTINC_0;
dmaConfig0.IRQMASK = DMA_IRQMASK_DISABLE;
dmaConfig0.M8 = DMA_M8_USE_8_BITS;
dmaConfig0.PRIORITY = DMA_PRI_HIGH;


/*
* This is the part that is making the problem
*/
// DMA configuration
DMA0CFGH = ((uint16)&dmaConfig0 >> 8) & 0x00FF;
DMA0CFGL = (uint16)&dmaConfig0 & 0x00FF;

I solved the problem making a push before the change and a pop after the change of the variables:

// Push al variables needed
 DMA0CFGH;
DMA0CFGL;
FWT;
FADDRH;
FADDRL;

I thin the problem is on the DMA configuration. So the question is does sipliciTI API use any sort of resource of the DMA? I searched the documentation and it does not mention anything about that.

Another question I need to use Timer interruptions to make periodic functions wich timer should I use in order  to not influence the simpliciti work?