stm32,ns级的延时程序怎么写
本帖最后由 biiii 于 2018-3-15 09:38 编辑纳秒级的stm32延时程序应该怎么实现呢
用for循环
for(int i = 0; i < 一个数; i++)
{
;
}
如果循环时间长 可以用嵌套循环 不知道你ns级延时用在哪,这么短的延时有可能一行代码的运行时候都远远大于延时时间了。 看主频个位级别的ns是不行的啊 用定时器最好,主频不一样,机器指令周期不一样。 nS级延时作何用?那么短的时间能作什么事情? ns级延时,想搞什么?用哪个型号的MCU,要延多少ns?
假如是100M主频,那么两条指令间就10ns了。要想突然插入一条指令延时,那么流水得算进去,就几十ns过去了。 MCU级别ns,us的精确延时都没啥意义。。。主频就在那里,如果非要使用到,建议用硬件,因为软件实现,和编译器有关系,优化一下,就会出现不同!!! 用FPGA吧,STM32很难实现,至少精度不够 精确的ns演示确实没必要 ,加nop指令吧
页:
[1]
2