您的位置 首页 系统

stm32 软件准确延时非systick 非中止

在阿莫上有位大神hcambridge推荐的软件精确延时://精确延时函数调用waitvoidwait(unsignedlongn){do{n–;}whi…

在阿莫上有位大神hcambridge引荐的软件准确延时:

//准确延时函数调用wait
voidwait(unsigned long n)
{
do{
n–;
}while(n);
}

//准确延时函数
#defineSYSCLK 72 //指明CPU作业频率为72MHz
#defineA 6 //一次循环所花的周期数
#defineB 3 //调用、初始化、回来一共所用的周期数
#definedelay_us(nus) wait(((nus)*(SYSCLK)-(B))/(A))
#definedelay_ms(nms) delay_us((nms)*1000)
#definedelay_s(ns) delay_ms((ns)*1000)
//使用方法:
//delay_us(0.4); //延时0.4us
//delay_ms(1456);//延时1.456s
//delay_s(21.4345);//延时21.4345秒

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/xitong/265909.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部