您必须确定NOP的长度,然后使用#Defines使其根据时钟速度插入正确的数字。
具体来说,您想知道完成样式的1个循环所需的时钟周期的确切数量:
for(long i=0;i
{
__NOP();
}
通过使#define为循环次数,需要根据请求的延迟和当前运行的时钟速度将其自动重新配置为自动。这可以全部包含在宏中。
您必须确定NOP的长度,然后使用#Defines使其根据时钟速度插入正确的数字。
具体来说,您想知道完成样式的1个循环所需的时钟周期的确切数量:
for(long i=0;i
{
__NOP();
}
通过使#define为循环次数,需要根据请求的延迟和当前运行的时钟速度将其自动重新配置为自动。这可以全部包含在宏中。
1
举报
-
eedesigner:
这是一个选项,大多数更好的编译器,例如iar.com,允许您更改每个文件的优化设置。我会为这个功能禁用它们。如果你将它宏视图,你必须确保你的编译器没有优化它。当设置为最大优化时,IAR将检测此循环并将其删除。做计时的最佳方法是计时器功能,请求者出于某种原因想避免它。