新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > stm32 軟件精確延時非systick 非中斷

stm32 軟件精確延時非systick 非中斷

作者: 時間:2016-11-19 來源:網(wǎng)絡(luò) 收藏
在阿莫上有位大神hcambridge推薦的軟件精確延時:

//精確延時函數(shù)調(diào)用wait
voidwait(unsigned long n)
{
do{
n--;
}while(n);
}


//精確延時函數(shù)
#defineSYSCLK 72 //指明CPU工作頻率為72MHz
#defineA 6 //一次循環(huán)所花的周期數(shù)
#defineB 3 //調(diào)用、初始化、返回總共所用的周期數(shù)
#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秒

本文引用地址:http://m.butianyuan.cn/article/201611/318537.htm


關(guān)鍵詞: stm32軟件精確延

評論


技術(shù)專區(qū)

關(guān)閉