|
在arduino 編程中經(jīng)常需要使用delay()使功能延時一定時間再執(zhí)行,但是使用delay()后單片機整個都在停頓中,干擾了其他動作。這時候創(chuàng)客集結(jié)號推薦使用millis()來實現(xiàn)定時或者延時的效果。
unsigned long millis(void);
系統(tǒng)運行時間函數(shù),記錄了單片機開機運行時間?梢允褂靡粋變量來記錄當(dāng)前時間點,然后判斷系統(tǒng)運行時間與記錄的時間點的差來實現(xiàn)延時的效果。
例如:
unsigned long oldtime=0;
void setup(){
Serial.begin(9600);
}
void loop()
{
if(millis() - oldtime >1000){
oldtime=millis();//更新時間點
Serial.println("hello world!");
}
}
這樣就能通過millis()函數(shù)時間無阻塞運行程序了。若想學(xué)習(xí)更多arduino知識和教程,可搜索創(chuàng)客集結(jié)號或xk100com。
|
|