TI中文支持网
TI专业的中文技术问题搜集分享网站

【总结】使用TIVA SysCtlDelay()进行精准延时的办法

条件如下:

1.使用外部晶振用作系统的主时钟,这里使用几分频都是可以的

ROM_SysCtlClockSet(SYSCTL_SYSDIV_4 | SYSCTL_USE_PLL | SYSCTL_XTAL_16MHZ |SYSCTL_OSC_MAIN);

2,开启FPU,一定要开始FPU的

ROM_FPULazyStackingEnable();

3.延时参数的设置为,这里的延时为1/N s,实际测试的时候,这个值为2/n s的,即为SysCtlDelay(ROM_SysCtlClockGet() /3000);为2ms

SysCtlDelay(ROM_SysCtlClockGet() / N/3);

xyz549040622:

实际测试,这样2m的延时是最准确的。建议实际时按照2ms,20ms,200ms这样的延时的用,用个for或者while循环连续执行也是比较准确的。并且这个延时不会随着主频率的改变而改变。

赞(0)
未经允许不得转载:TI中文支持网 » 【总结】使用TIVA SysCtlDelay()进行精准延时的办法
分享到: 更多 (0)