TI中文支持网
TI专业的中文技术问题搜集分享网站

mspexpf5529lp开发板串口通信A0不成功

f5529lp开发板,成功运行rtos里面的uartecho例程。但是把例程中的串口从A1变到A0就进入死循环。

例程里面修改的部分如下:

const UARTUSCIA_BaudrateConfig uartUSCIABaudrates[] = {
/* {baudrate, input clock, prescalar, UCBRFx, UCBRSx, oversampling} */
{
.outputBaudrate = 115200,
.inputClockFreq = 8192000,
.prescalar = 4,
.hwRegUCBRFx = 7,
.hwRegUCBRSx = 0,
.oversampling = 1
},
{9600, 8192000, 53, 5, 0, 1},
{9600, 32768, 3, 0, 3, 0},
};

const UARTUSCIA_HWAttrs uartUSCIAHWAttrs[MSP_EXP430F5529LP_UARTCOUNT] = {
{
.baseAddr = USCI_A0_BASE,
.clockSource = USCI_A_UART_CLOCKSOURCE_SMCLK,
.bitOrder = USCI_A_UART_LSB_FIRST,
.numBaudrateEntries = sizeof(uartUSCIABaudrates)/sizeof(UARTUSCIA_BaudrateConfig),
.baudrateLUT = uartUSCIABaudrates
},
};

const UART_Config UART_config[] = {
{
.fxnTablePtr = &UARTUSCIA_fxnTable,
.object = &uartUSCIAObjects[0],
.hwAttrs = &uartUSCIAHWAttrs[0]
},
{NULL, NULL, NULL}
};

/*
* ======== MSP_EXP430F5529LP_initUART ========
*/
void MSP_EXP430F5529LP_initUART(void)
{
/* P4.4,5 = USCI_A1 TXD/RXD */
//GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P4,
// GPIO_PIN4 | GPIO_PIN5);
GPIO_setAsPeripheralModuleFunctionInputPin(GPIO_PORT_P3,
GPIO_PIN3 | GPIO_PIN4);
/* Initialize the UART driver */
UART_init();
}

上面的本来是A1的串口,我改为A0,下面管脚改为A0对应的3.3 3.4

其他地方都不做改动。这样跑起来就进入中断不出来

__interrupt Void ti_sysbios_family_msp430_Hwi56(Void)
{
while(1){};
}

哪位大神给支支招。搞了好几天都不行。

Susan Yang:

回复 user4599746:

谢谢分享您的解决方法!

赞(0)
未经允许不得转载:TI中文支持网 » mspexpf5529lp开发板串口通信A0不成功
分享到: 更多 (0)