Ich habe einen Größenteil von https://github.com/jhester/msp430-cc1101
genommen.
konnte es das sein das die fehler legt an den cc1101 module ???
weil ich nicht richtige packet bekommen .
aber ich habe jetzt ein neues Problem. nachdem ich das neue modul von
cc1101 ausgetauscht habe, bekomme ich keine infos im rxbuffer.
Das heißt, ich bekomme eine falsche packet auf einem Modul und überhaupt
keine Informationen im RX-Puffer auf dem anderen
int8_t CCRadio_ReceiveData(uint8_t *rxBuffer) {
/////uint8_t RxBytes;
////uint8_t * pData;
uint8_t size, a[10], cc1[20], i;
uint8_t status[2];
SYS_DEBUG_PRINT(SYS_ERROR_DEBUG, " packetLength = 0x%2x\r\n", sizeof
(NoMo4_Packet_t));
SYS_DEBUG_PRINT(SYS_ERROR_DEBUG, " RXBYTES = 0x%2x\r\n",
CC1101_RXBYTES);
//////RXBYTES--->Number of bytes in RX FIFO
if (_CCRadio_SpiReadStatusReg(CC1101_RXBYTES) & BYTES_IN_RXFIFO)
das Programm kommt nach dieser if-Abfrage nicht weiter (in den neues
CC1101)
//// _CCRadio_SpiReadStatusReg(CCxxx0_RXBYTES, &RxBytes);
/////if (RxBytes & BYTES_IN_RXFIFO)
{
size = sizeof (NoMo4_Packet_t);
SYS_DEBUG_PRINT(SYS_ERROR_DEBUG, " size1 = 0x%2x\r\n", size);
_CCRadio_SpiReadBurstReg(CC1101_RXFIFO, rxBuffer, size);
SYS_DEBUG_PRINT(SYS_ERROR_DEBUG, " size = 0x%2x\r\n", size);
_CCRadio_SpiReadBurstReg(CC1101_RXFIFO, status, 2);
_CCRadio_SpiReadStatusReg(CCxxx0_RSSI);
_CCRadio_SpiReadStatusReg(CCxxx0_LQI);
//// *Rssi = status[RSSI];
//// *Lqi = status[LQI];
//---------------------------RX Buffer-------
cc1[1] = rxBuffer[1];
cc1[2] = rxBuffer[2];
cc1[3] = rxBuffer[3];
cc1[4] = rxBuffer[4];
cc1[5] = rxBuffer[5];
cc1[6] = rxBuffer[6];
cc1[7] = rxBuffer[7];
cc1[8] = rxBuffer[8];
for (i = 0; i <= 8; i++)
//// for ( i = 1; i < sizeof(rxBuffer); i++)
{
SYS_DEBUG_PRINT(SYS_ERROR_DEBUG, " rxBuffer = %d\r\n",
cc1[i]);
}
mrfiRadioState = RADIO_STATE_IDLE;
_CCRadio_SpiStrobe(CC1101_SFRX); // Flush RX FIFO
return size;
} else {
_CCRadio_SpiStrobe(CC1101_SFRX); // Flush RX FIFO
///// memset(rxBuffer, 0, sizeof(FIFOBUFFER)); //erased the
RX_fifo array content to "0"
// CCRadio_RxOn();
mrfiRadioState = RADIO_STATE_IDLE;
CC1101Ctrl.PacketLen = 0;
return 0;
}
}