
如何确定Arduino中void loop()函数的一周期执行时间
voidloop()是循环执行的函数,关于一次执行的时间长度如何确定,以及与代码的长度的关系。...
void loop()是循环执行的函数,关于一次执行的时间长度如何确定,以及与代码的长度的关系。
展开
2个回答
展开全部
在loop()的开头:
unsigned long starttime;
unsigned long stoptime;
unsigned long looptime;
void loop()
{
starttime = millis();
//你的代码
stoptime = millis();
looptime = stoptime - starttime;
}
looptime就是一个循环的时间
与代码长度无关,与编译完需要执行的指令条数有关
unsigned long starttime;
unsigned long stoptime;
unsigned long looptime;
void loop()
{
starttime = millis();
//你的代码
stoptime = millis();
looptime = stoptime - starttime;
}
looptime就是一个循环的时间
与代码长度无关,与编译完需要执行的指令条数有关
追问
谢谢,虽然还没有时间试验。
关于代码的指令条数,能否再给一个简单的示例说明一下,还不是很清楚指令条数和代码语句数量之间的关系。
追答
这个之间的关系不是太好确定,如果你学过汇编语言你就会明白。
暂且认为代码越多,生成的指令越多。但具体对用多少条,确定不了
用C语言写的程序要经过汇编 ,生成机器码的形式单片机才能执行。
arduino_IDE里只提供了简单的功能,没有提供仿真环境。
如果对时间要求比较严格还是别用arduino了,直接avr gcc
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询