完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
串口发送函数 HAL_UART_Transmit( huart1, transmit,len, timeout) 里的timeout一般设置多少比较合适?这个timeout我的理解是发送1个字节的等待超时时间,那么以9600波特率为例,发送1个字节1ms都不需要,那这个值应该设置很小的值比如10就够了,但为什么网上很多人的例程里都是设置了1000甚至更大?
|
|
相关推荐
2个回答
|
|
你可以写0xFFFF,表示永不超时。
|
|
|
|
timeout参数是在等待数据从串口发送缓冲区传输完成的时间,而不是发送单个字节的等待超时时间。它的单位是毫秒。
timeout的合适值取决于你的应用需求和系统性能。如果你知道发送的数据量比较小且系统性能较好,可以选择较小的值,比如10毫秒。但如果发送的数据量比较大,或者系统性能较差,可能需要设置更大的值以确保数据发送完整。 一般来说,为了避免数据丢失,timeout值应该大于你的数据传输时间。如果你的传输速率为9600波特率,发送1个字节需要约1ms,建议将timeout设置为稍大于发送整个数据块所需的时间。 网上很多人设置1000或更大的timeout值可能是为了保证数据传输完成,或者考虑到了系统性能的不确定性。如果你的应用场景对实时性要求不高,可以根据实际需要适当调整timeout值。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1659 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1571 浏览 1 评论
998 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
695 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1617 浏览 2 评论
1878浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
664浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
530浏览 3评论
548浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
517浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-30 17:15 , Processed in 0.973745 second(s), Total 86, Slave 66 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号