Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

cc1110 and simpliciti problems

Status
Not open for further replies.

priestnot

Member level 5
Member level 5
Joined
May 1, 2006
Messages
89
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,288
Visit site
Activity points
2,098
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:
Code:
// 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:

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

I think the problem is on the DMA configuration. So the question is does simpliciTI 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?
 

Because the cc1110 is a microprocessor with a rf transciver. And simpliciti is a rf comunication api for the cc1110.
So i think the it is suited for the rf section. But if not tell me were and i change it.
 

Oh, OK, just wondering because this seems to be based on an API/coding issue over a an RF question.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top