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.

RTOS/CC1310: Ring buffer definition and size?

Part Number: CC1310

Tool/software: TI-RTOS

Hello team,

 

one of my customers came up with the following question:

 

we’re using CC1310 with the TI-RTOS (Simple Link 1.40) and wondering about the Ringbuffer-Size in the UART.

 

The example we use is based on the CC1310DK_7XD.c .

 

There is a UART-Config type

 

const UART_Config UART_config[UARTCOUNT] = {

    {

        .fxnTablePtr = &UARTCC26XX_fxnTable,

        .object      = &uartCC26XXObjects[UART0],

        .hwAttrs   = &uartCC26XXHWAttrs[UART0]

    },

};

 

that is used to configure the UART. It uses the type

const UARTCC26XX_HWAttrsV2 uartCC26XXHWAttrs[AMB8826_UARTCOUNT] = {

 

    {

        .baseAddr       = UART0_BASE,

        .powerMngrId    = PowerCC26XX_PERIPH_UART0,

        .intNum         = INT_UART0_COMB,

        .intPriority    = ~0,

        .swiPriority    = 0,

        .txPin          = PIN_UART_TX,

        .rxPin          = PIN_UART_RX,

        .ctsPin         = PIN_UNASSIGNED,

        .rtsPin         = PIN_UNASSIGNED

    }

};

 

Usually, the type UARTCC26XX_HWAttrsV2  has the additional fields .ringBufPtr   and .ringBufSize , which are initialized in the CC1310_LAUNCHXL.c but not in the CC1310DK_7XD.c

 

const UARTCC26XX_HWAttrsV2 uartCC26XXHWAttrs[AMB8826_UARTCOUNT] = {

    {

        .baseAddr       = UART0_BASE,

        .powerMngrId    = PowerCC26XX_PERIPH_UART0,

        .intNum         = INT_UART0_COMB,

        .intPriority    = ~0,

        .swiPriority    = 0,

        .txPin          = PIN_UART_TX,

        .rxPin          = PIN_UART_RX,

        .ctsPin         = PIN_UNASSIGNED,

        .rtsPin         = PIN_UNASSIGNED,

        .ringBufPtr     = uartCC26XXRingBuffer,

        .ringBufSize    = UART_BUFFER_SIZE

    }

};

 

We are wondering now, how the ring buffer and its size is defined in case of CC1310DK_7XD.c?

 

Debugging says that ringBufPtr and ringBufSize are Null, but I cannot believe this.

 

In the TI-RTOS, I cannot find any default setting for this buffer.

 

 

Thank you very much and kind regards,

Felix

  • Hi,
    I will ask the person who implemented this driver. But he is on vacation. But it appears that the ring buffer is disabled by default, for whatever reason (nullpointer, size 0). So by default, you only have the 32 frames hardware FIFO.