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.

CC2652RB: CC2652RB UART0 module will not activate

Genius 9880 points

Part Number: CC2652RB
Other Parts Discussed in Thread: , SIMPLELINK-CC13X2-26X2-SDK, SYSCONFIG

Hi Team,

Good day, we have received inquiry from customer asking support regarding CC2652RB. For me to not miss any information I will copy the query below.

The following code will not allow activation of the UART0 module either in main or in a SYS_BIOS task. The code works for UART1.  I see the UART1 registers activated with this code but not the UART0 registers.
  // Configure UART0 for serial communications.
  // Receive on DIO12 and transmit on DIO15

  // Turn-on, UART0 module in the PRCM
  PRCMPeripheralRunEnable(PRCM_PERIPH_UART0);
  PRCMPeripheralSleepEnable(PRCM_PERIPH_UART0);
  PRCMPeripheralDeepSleepEnable(PRCM_PERIPH_UART0);
  PRCMLoadSet();

  while (1);
Thank you.
Regards,
Maynard
  • Hi,

    If there are using the Launchpad, there are example programs that already outputs to the UART.

    -kel

  • Hi Maynard,

    To Markel's point, most default LP-CC2652RB examples already initialize UART0 for backchannel XDS110 communication.  This can be viewed from the SysConfig settings.  Has the customer considered this when evaluating their firmware?  It would help to know what SIMPLELINK-CC13X2-26X2-SDK version they are using and the example project they are starting from.  If they can use TI-RTOS then I recommend the UART TI Driver instead of the Power Reset Clock Manager (PRCM).

    Regards,
    Ryan

  • Hi Ryan,

    Thank you for the reply.

    Below is the response from our customer.

    First, I am using the CC2652RB LaucnPad for development and I am also using Project_Zero as my base firmware.
    What I discovered is that it is necessary to turn-on the serial domain using the PRCM register PDCTL0.  When I do this, then the PRCM commands to turn-on the clocks to the UARTs works.  The use of the PDCTL0 register to enable the serial domain is not well described in section 21.6 of the Technical Reference Manual.  This section implies that the APIs PRCMPeripheralRunEnable(uint32_t) and others handle this task for you.  They don't.  I recommend that the manual be updated with more precise instructions on how to turn-on the serial domain when preparing the UARts for use.
    Thanks.
    Regards,
    Maynard
  • Hi Maynard,

    Thank you for following up on this, I'm glad to hear that your customer has found the root cause of the issue and is able to further develop their solution.

    Regards,
    Ryan

  • From what I know Project Zero example program readily outputs to UART and don't need to add code to do that. Not sure if the same happens for CC2652RB Launchpad Project Zero.

    -kel

  • Yes kel, the same is true for the LP-CC2652RB Project Zero BLE application.

    Regards,
    Ryan