A problem with the CCA requset and response [Freescale's 802.15.4 implementation]

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

A problem with the CCA requset and response [Freescale's 802.15.4 implementation]

2,762 次查看
venca
Contributor I
Hi,

I have a problem with the clear channel assessment. I'm using the Freescale's 802.15.4 MAC_PHY_SW 1.061 (MyApp_Ex05a) on MC 13213 (SRB). The communication with the modem works well. After the Init_802_15_4() is called I start the CCA (the next step of the state machine). Then I get the interrupt request with the CCA_IRQ. I thing this is ok so far. The ISR serves the CCA_IRQ request this way:
Code:
      if (retReg & cCCA_IRQ)       DummyISR(); // Ignore CCA irq here. Fast action catches it. (Otherwise ignore the failure)

The DummyISR() does nothing. The problem is that I don't know where the fast action should be called. I found that there are methods like SetupPendingCca() and DoFastCcaEof(). They may be called before/after  (?) the Cca is done, but they does'nt. I would ask someone familiar with this software for help.

Regards,
Venca
标签 (1)
0 项奖励
回复
5 回复数

1,447 次查看
venca
Contributor I
Hi,

I found that the problem could be with the clock setting. I'm using the internal clock with the FLL (CPU clock ~= 17.5MHz, bus clock ~= 8.8MHz). Is it a problem? How much accurate should the frequency for the IEEE 802.15.4 stack be?


Message Edited by venca on 2008-06-24 10:58 AM
0 项奖励
回复

1,447 次查看
Mads
Contributor V
venca,
 
the functions are are accessing are PHY functions that the MAC is using.
you should NOT call these functions directly from your application.
you should however used the defined 802.15.4 primitives.
 
e.g. when you transmit a packet the (mcps-data.request) the MAC will do the CCA for you.
 
if you want to do energy scan of a particular channel you should use the appropiate scan.request.
 
Our datasheets specify how accurate your crystal needs to be, but it needs to be quite accurate.
that is why a crystal is connect directly to the radio.
 
see www.freescale.com/Zigbee for more information.
 
Br,
Mads
0 项奖励
回复

1,447 次查看
venca
Contributor I
Thank you, Mads. But when I send the CCA request to the MAC (MSG_Send()) I get no response. When I try to bypass the CCA and send the start_coordinator request immediately after the initialization, I get the response from MAC that it is ok. Do you have any idea what I shall to check?

Regards
Venca
0 项奖励
回复

1,447 次查看
Mads
Contributor V
Venca,
 
The MAC has NO interface for you to use MSG_send() to do a CCA request.
 
you can do a Scan-request and the MyWirelessApp shows examples of how to do that.
 
CCA is an operation that happens before a packet is sent, and not an User function you should access.
 
Br,
Mads
0 项奖励
回复

1,447 次查看
venca
Contributor I
Hello Mads,
 
you're right, there is a scan request, sorry for my bad expression. I use the MyApp_Ex03a. The App_StartScan() returns "errorNoError". But then I stuck at the "stateScanEdWaitConfirm" state. No message returns (I wait for minutes). The problem may be with the clock settings. I use the SRB board (16MHz crystal connected to the XTAL1 and XTAL2). I have set the ICGC1=0x18, ICGC2=0x20, the filter is set to 0x0240 and the CLK0 is at 62.5 KHz. I will very appreciate any advice.
 
Thank you
0 项奖励
回复