我試圖對DMX數據進行位衝擊,這需要4us脈衝。我正在檢查結果是否運氣不佳,以查看Arduino在延遲方面的表現如何……似乎很糟糕。
unsigned long ptime; void setup(){Serial.begin(9600);} void loop(){ptime = micros(); delayMicroseconds(4); Serial.println(micros()-ptime);延遲(1000); //只是為了防止串行監視器發瘋}
結果如下:
8 4 8 4 4 4 4 4 8 8 8 8 4 8 8 4 4 8 4 4 4 8 8 8 4 8 4
我對它的精確度感到震驚。這是我想延遲的時間的兩倍,但甚至與我只能除以2的位置也不相符!
我可以做些什麼來獲得正確,一致的結果嗎?