MSPM0G3507小练-阻塞模式串口输出单字节数据

[复制链接]
2899|6
 楼主| xyz549040622 发表于 2023-12-25 21:15 | 显示全部楼层 |阅读模式
本帖最后由 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,方便调试。
ccstudio_o5wXF1I1Cf.png ccstudio_kQLKJ5xswF.png
ccstudio_wdDsM3B1iX.png
ccstudio_ffOf07arkA.png
2、然后进行程序的编写;
  1. #include "ti_msp_dl_config.h"

  2. void Uart0_putc(uint8_t ch)
  3. {
  4.     DL_UART_transmitDataBlocking(UART_0_INST, ch);
  5. }


  6. int main(void)
  7. {
  8.     SYSCFG_DL_init();

  9.     while (1) {
  10.         Uart0_putc(0xAA);
  11.     }
  12. }
3、在设备管理器中找到 XDS110 Class Application/User UART (COM3),这个就是连接目标板的串口0。
4、运行程序,串口软件中打开COM3,波特率为9600,8-N-1。可以看到串口收到了数据0xAA;
stc-isp-v6.92I_C6IcVtqsAw.png

tpgf 发表于 2024-3-5 11:47 | 显示全部楼层
所有的串口都能支持这种阻塞模式吗
八层楼 发表于 2024-3-5 12:53 | 显示全部楼层
非阻塞模式串口的数据接收会不会比较容易丢失数据?
晓伍 发表于 2024-3-5 20:08 | 显示全部楼层
我们对串口发送模式的选择的倾向性是什么呢
磨砂 发表于 2024-3-5 20:41 | 显示全部楼层
阻塞模式和非阻塞模式的应用有什么需求吗
木木guainv 发表于 2024-3-5 21:14 | 显示全部楼层
这种模式的好处是不是可以增加数据传输的可靠性?
xiaoqizi 发表于 2024-3-5 21:47 | 显示全部楼层
在没有发送完成之前,会受到高级别中断响应函数的影响吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:qq群: 嵌入式系统arm初学者 224636155←← +→→点击-->小 i 精品课全集,21ic公开课~~←←→→点击-->小 i 精品课全集,给你全方位的技能策划~~←←

2841

主题

19330

帖子

110

粉丝
快速回复 在线客服 返回列表 返回顶部