本帖最后由 xyz549040622 于 2023-12-25 21:21 编辑
所谓的串口阻塞发送的意思就是,发送一段数据,在没有发送完所有数据之前,一直停留在此发送函数(可设定阻塞时间),这个过程中会阻塞别的程序运行;
我们首先研究串口,从阻塞模式开始试验。
MSPM0G3507的库函数,串口的发送函数有以下几个:
DL_UART_transmitData (UART_Regs *uart, uint8_t data);
DL_UART_transmitDataBlocking (UART_Regs *uart, uint8_t data);
我们使用的是第二个函数,以阻塞方式进行发送。
1、首先需要进行串口的配置。
我们使用的是默认的串口0,因为只有串口0才支持XDS110的反向UART,方便调试。
2、然后进行程序的编写;
#include "ti_msp_dl_config.h"
void Uart0_putc(uint8_t ch)
{
DL_UART_transmitDataBlocking(UART_0_INST, ch);
}
int main(void)
{
SYSCFG_DL_init();
while (1) {
Uart0_putc(0xAA);
}
}
3、在设备管理器中找到 XDS110 Class Application/User UART (COM3),这个就是连接目标板的串口0。
4、运行程序,串口软件中打开COM3,波特率为9600,8-N-1。可以看到串口收到了数据0xAA;
|