OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2586|回复: 0

HAL库函数怎么实现微秒级的延时?

[复制链接]

2

主题

4

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2018-1-20
在线时间
22 小时
发表于 2019-4-14 02:19:58 | 显示全部楼层 |阅读模式
20金钱
本帖最后由 草莓丶emm 于 2019-4-14 23:44 编辑

有关STM32 HAL库实现微秒级别延时这个问题我在网上找到了两种解决方案,第一种方案是有1微秒误差的,但这不是大问题,主要是在设置arr的值,第一个设置成65535也就是0xFFFF我能理解,但是第二个设置成1这我就直接不懂了,为什么在arr设置为1的时候给计数器赋值还可以为0xFFFF-us-5,也就是计数器的最大值不是由arr决定的吗,arr只是作为一个溢出的限值。希望有大佬能解惑,感激不尽(顺便问下这两种方案是不是都是正确的,由于没有示波器,并且延时函数最大值只能设置成65535差不多0.065s用串口打印数据也看不出来)

第一种方法-微秒延时

第一种方法-微秒延时

第一种方法-微秒延时代码

第一种方法-微秒延时代码

第二种方法-微秒延时

第二种方法-微秒延时

第二种方法-微秒延时代码

第二种方法-微秒延时代码
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-22 11:07

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表