完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
请问大家 HAL 库中, 串口的timeout 参数 具体代表什么意思 如何使用
1. HAL_StatusTypeDef HAL_USART_Receive (USART_HandleTypeDef * husart, uint8_t * pRxData, uint16_t Size, uint32_t Timeout) Timeout 是超时限制 这个可以理解, 但是 问题是 它的单位是多少???? 比如填个1 代表 1 什么? 1ms 还是1 us ? 另外 填0 呢? 不限时, 填 ffff 呢?? 看了 HAL 的手册 都没有说清楚: |
|
相关推荐
8个回答
|
|
你自己再好好分析下。。 确实HAL库的说明太过于简单了。。。 还得靠你自己。。摸索。。
UART_WaitOnFlagUntilTimeout(huart, UART_FLAG_RXNE, RESET, Timeout) HAL_GetTick(); |
|
|
|
Oo一笑 发表于 2018-11-2 07:29 谢谢你, 这个我已经找到 了 ,而且我知道 /** * @brief uwTick_variable uwTick variable */ __IO uint32_t uwTick; /** * @brief Provides a tick value in millisecond. * @note This function is declared as __weak to be overwritten in case of other * implementations in user file. * @retval tick value */ __weak uint32_t HAL_GetTick(void) { return uwTick; } 但具体 uwTick 单位是什么呢??? |
|
|
|
Tick 就是ms为单位的。。
|
|
|
|
签到 签到
|
|
|
|
HAL_GetTick();基于这个函数计时来比较是否超时,而HAL_GetTick()计数单位为ms,所以就是ms了。至于填多少,就得看你的波特率,接收发送数据大小大致估算下时间。
|
|
|
|
楼主问题解决了吗
|
|
|
|
|
|
|
|
不错,很好的经验分享,辛苦麻烦了,欠缺这方面的资料,非常感谢。
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
2027 浏览 0 评论
STM32配合可编程加密芯片SMEC88ST的防抄板加密方案设计
1209 浏览 0 评论
2786 浏览 1 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
2557 浏览 3 评论
5240 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-12 00:21 , Processed in 1.153530 second(s), Total 86, Slave 70 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号