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.

工程需要我用到CC3200两个串口,我如下修改了UART_DEMO例程,请TI技术支持务必支援

Other Parts Discussed in Thread: CC3200

uart_demo中默认用PIN55和PIN57作为UART0_TX和UART0_RX,我现在要拓展多一个串口,该串口为UART1,我查看了引脚的规格书,里面说PIN1和PIN2的模式7对应是UART1_TX和UART1_RX。我对uart_demo例程作如下修改,但打开第二个终端还是没显示信息,望TI技术支持指点

--->修改PinMuxConfig(),里面添加多几行代码如下

         MAP_PRCMPeripheralClkEnable(PRCM_UARTA1, PRCM_RUN_MODE_CLK);
    MAP_PRCMPeripheralClkEnable(PRCM_GPIOA2, PRCM_RUN_MODE_CLK);
    MAP_PRCMPeripheralClkEnable(PRCM_GPIOA3, PRCM_RUN_MODE_CLK);

    //
    // Configure PIN_16 for GPIOA2 GPIO23
    //
    MAP_PinTypeGPIO(PIN_16, PIN_MODE_0, false);
    MAP_GPIODirModeSet(GPIOA2_BASE, 0x80, GPIO_DIR_MODE_OUT);

    //
    // Configure PIN_17 for GPIOA3 GPIO24
    //
    MAP_PinTypeGPIO(PIN_17, PIN_MODE_0, false);
    MAP_GPIODirModeSet(GPIOA3_BASE, 0x1, GPIO_DIR_MODE_OUT);

    //
    // Configure PIN_01 for UART1 UART1_TX
    //
    MAP_PinTypeUART(PIN_01, PIN_MODE_7);

    //
    // Configure PIN_02 for UART1 UART1_RX
    //
    MAP_PinTypeUART(PIN_02, PIN_MODE_7);

因为规格书提示说要复用引脚,得将复用功能的默认引脚设置为其他模式,而PIN16和PIN17默认为UART1,但我要用PIN1和PIN2作为UART1,所以将PIN16和PIN17设置为GPIO,它们对应GPIO23和GPIO24

---->增添初始化终端的函数

        /**Initialising the new Terminal**/
    MAP_UARTConfigSetExpClk(CONSOLE_YU,MAP_PRCMPeripheralClockGet(CONSOLE_PERIPH_YU),
                    UART_BAUD_RATE, (UART_CONFIG_WLEN_8 | UART_CONFIG_STOP_ONE |
                     UART_CONFIG_PAR_NONE));

其中宏CONSOLE_YU和CONSOLE_PERIPH_YU是我自己定义的

#define CONSOLE_YU           UARTA1_BASE
#define CONSOLE_PERIPH_YU    PRCM_UARTA1

----->清空新的终端    /**Clearing the new Terminal**/
                                       ClearTerm_yu();

void ClearTerm_yu()
{
    {
        Message_yu("\33[2J\r");
    }
}

其中Message_yu是我根据Message稍作修改

void Message_yu(const char *str)
{
    if(str != NULL)
    {
        while(*str!='\0')
        {
            MAP_UARTCharPut(CONSOLE_YU,*str++);
        }
    }
}

------>最后我在main函数中添加多一句

      Message_yu("hello\n\r");

问题来了,我确定自己USB转串口的引脚没接错,但打开新的终端,该终端对应UART1,但并没有打印出hello

是我程序哪里有问题吗?还是其他问题?????????????????????