pic32 +cc1101

OP (Firma: cs-a) #6983880
Lesenswert?
• ▲
▼
hallo
Ich habe eine Frage. Ich schließe pic32 mit cc1101. cc1101 ist auf 868 
MHz konfiguriert.
Ich sende ein Paket mit einem anderen Gerät (868MHz) und versuche, 
dasselbe Paket mit (pic +cc1101) zu empfangen.
Mein Problem ist, dass ich nicht das gleiche Paket bekomme.
Vielen Dank im Voraus
OP (Firma: cs-a) #6984086
Lesenswert?
• ▲
▼
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;
    }
}

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.