关于在arduino中使用延时跳出循环的问题。

我在loop里面有一条子程序,想让它运行到某段时间的时候自动跳出,我使用了如下代码:
void loop() {

unsigned long mmTime = millis();

while(mmTime<5000){

F1();
}
}
可是以上代码根本没有效果,然后我又用了如下的代码:
void loop() {

unsigned long mmTime = millis();

while(delay(5000)){

F1();
}
}
以上代码格式错误,无法使用。
请各位指导一下,谢谢!