我在430单片机的intrinsics.h头文件里找到这个__intrinsic void __delay_cycles(unsigned long __cycles);精确延时函数,里面的cycles应该填写系统机器周期。
问题如下:我想请教#define Delay_ms(x) __delay_cycles((unsigned long)((unsigned int)x*1000000)/1000);与#define Delay_ms(x) __delay_cycles((unsigned long)((unsigned int)x*1000));有什么区别吗?
我用前一句延时可以做出Delay_ms(500)这样的500ms延时,但是用后一句的话,延时时间连几十ms(估计值,未测)都不到,非常快就过去了。是哪里出了问题呢?
ps:晶振8M,8分频,主系统和子系统时钟都1M。
有奖活动 | |
---|---|
“我踩过的那些坑”主题活动——第002期 | |
【EEPW电子工程师创研计划】技术变现通道已开启~ | |
发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
【EEPW在线】E起听工程师的声音! | |
高校联络员开始招募啦!有惊喜!! | |
【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
送您一块开发板,2025年“我要开发板活动”又开始了! | |
打赏了!打赏了!打赏了! |