工具/软件:Code Composer Studio
大家好
我在通过反向通道 UART 发送文本字母以在 CCS 终端窗口上显示时遇到问题
我正在 MSP430FR2355 Launchpad 演示板上使用 EUSCI_A1 (该演 示板提供两个 COM 端口、一个用于 eZ-FET 调试、另一个用于用户应用)。
我已经将 CCS 终端设置为使用 MSP 应用 UART1。 (原理图上的 UCA1)。
在应用中、将 EUSCI A1配置为对 UCA1TXD 使用 P4.3、对 UCA1RXD 使用 P4.2。 波特率设置为9600。
此时、我仅尝试向 CCS 终端发送一个字符。 当然、它不起作用。 我已经验证了 eUSCI A1是否由 eZ-FET 使用。
我的引脚设置如下:
//配置 P4.3 - UCA1TXD 和 P4.2 - UCA1RXD
GPIO_setOutputLowOnPin (GPIO_PORT_P4、GPIO_PIN3);
GPIO_setAsOutputPin (GPIO_PORT_P4、GPIO_PIN3);
GPIO_setPeripheralModuleFunctionInputPin (GPIO_PORT_P4、GPIO_PIN2、GPIO_secondary 模块_function);
GPIO_setPeripheralModuleFunctionOutputPin (GPIO_PORT_P4、GPIO_PIN3、GPIO_secondary 模块功能);
空 Init_UART()
{
//配置 UART
EUSCI_A_UART_initParam param ={0};
param.selectClockSource = EUSCI_A_UART_CLOCKSOURCE_SMCLK;
param.clockPrescalar = 52;
param.firstModReg = 1;
param.secondModReg = 0x49;
param.parity = EUSCI_A_UART_NO_parity;
param.msborLsbFirst = EUSCI_A_UART_LSB_FIRST;
param.numerofStopBits = EUSCI_A_UART_Oe_STOP_BIT;
param.uartMode = EUSCI_A_UART_MODE;
param.oversaming= EUSCI_A_UART_oversaming_BAUDRATE_generation;
///EUSCI_A_UART_INIT (EUSCI_A1_BASE、¶m);
if (STATUS_FAIL = EUSCI_A_UART_INIT (EUSCI_A1_BASE、¶m))
返回;
EUSCI_A_UART_ENABLE (EUSCI_A1_BASE);
}
我解锁了引脚
PMM_unlockLPM5 ();
然后使用
EUSCI_A_UART_transmitData (EUSCI_A1_BASE、"H");
发送"Hello World!"的第一个字符。
我本可以假设将 EX-FET 配置为 EUSCI 以尽可能快的速度运行(即115.2K 波特) 、但示例代码将其设置为9600 (典型终端)。 我访问了 COM 端口设置、并验证了 MSP 调试接口和 MSP 应用 UART1接口均设置为9600 b/s、8个数据位、无奇偶校验、1个停止位和无流量控制。
此时、我没有为 EUSCI 启用中断、因为我没有接收任何字符、只发送。
我从按钮处理程序发送字符、但我认为这不重要。 我们非常感谢您的任何帮助。