stm32中阻塞模式和非阻塞模式 in blocking mode 与 in non-blocking mode区别
阻塞模式和非阻塞模式......
我的理解是:
阻塞模式就像是一个延时函数,当这个函数没处理完那么,所有的按照流程需要执行的代码都不会被执行,要等到这个延时完成,类似 平时看书上写的LED灯闪烁,用的delay()一样..
而非阻塞模式就像他定义的那样,一般用的是中断,执行这条语句的时候,开启相应的中断达到一定的条件才进行处理,这样不会影响到流程的执行.
我的理解就是,阻塞就是死等,非阻塞就是中断
可以参考
/**
* @brief Sends an amount of data in non blocking mode.
* @note When UART parity is not enabled (PCE = 0), and Word Length is configured to 9 bits (M1-M0 = 01),
* the sent data is handled as a set of u16. In this case, Size must indicate the number
* of u16 provided through pData.
* @param huart Pointer to a UART_HandleTypeDef structure that contains
* the configuration information for the specified UART module.
* @param pData Pointer to data buffer (u8 or u16 data elements).
* @param Size Amount of data elements (u8 or u16) to be sent
* @retval HAL status
*/
HAL_StatusTypeDef HAL_UART_Transmit_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)
/**
* @brief Sends an amount of data in blocking mode.
* @note When UART parity is not enabled (PCE = 0), and Word Length is configured to 9 bits (M1-M0 = 01),
* the sent data is handled as a set of u16. In this case, Size must indicate the number
* of u16 provided through pData.
* @param huart Pointer to a UART_HandleTypeDef structure that contains
* the configuration information for the specified UART module.
* @param pData Pointer to data buffer (u8 or u16 data elements).
* @param Size Amount of data elements (u8 or u16) to be sent
* @param Timeout Timeout duration
* @retval HAL status
*/
HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout)
————————————————
版权声明:本文为CSDN博主「liming0931」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/liming0931/article/details/99721916
相关文章
- 设计模式——代理模式
- 设计模式(一):“穿越火线”中的“策略模式”(Strategy Pattern)
- FTP协议的主动模式和被动模式的区别
- 模式的秘密-代理模式(1)-静态代理
- RabbitMQ通配符模式以及与Routing模式的区别
- Atitit json array to csv 目录 1. Lib1 1.1. Apache csv lib1 1.2. Org.json.jar cdl模式1 2. other1 2
- Atitit 颜色平均值cloor grb hsv模式的区别对比
- 【华为云技术分享】【极客思考】设计模式:你确定你真的理解了单例模式吗?
- Socket阻塞模式和非阻塞模式的区别
- 002-创建型-02-抽象工厂模式(Abstract Factory)
- 一、CPU的工作模式(寻址方式)
- yarn cluster和yarn client模式区别——yarn-cluster适用于生产环境,结果存HDFS;而yarn-client适用于交互和调试,也就是希望快速地看到application的输出
- C++中介模式
- Vue路由中,history和hash两种模式有什么区别?
- 关于单例模式的线程安全问题讨论以及加锁时机之我的想法
- zabbix主动模式与被动模式区别以及详细配置(二十一)