Questions tagged «pulsein»

4
pulseIn的工作是什么?
我有一个从现场找到的超声波传感器的代码。这是代码: #define trigPin 12 #define echoPin 13 void setup() { Serial.begin (9600); pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); } void loop() { int duration, distance; digitalWrite(trigPin, HIGH); delayMicroseconds(1000); digitalWrite(trigPin, LOW); duration = pulseIn(echoPin, HIGH); distance = (duration/2) / 29.1; if (distance >= 200 || distance <= 0){ Serial.println("Out of range"); } else …

2
pulseIn()的计时精度如何?
我一直在使用该pulseIn()函数来处理基于PWM的二进制数据编码。它非常适合区分长度明显不同的脉冲,例如500us与1500us。这就足以处理典型的红外遥控器。 但是,我想制作自己的IR系统,该系统可以使用2个以上的脉冲长度,以便可以更快地进行数据传输。理想情况下,我想使用8种不同的脉冲长度进行八进制编码(例如200us,400us,600us等)。 我注意到pulseIn()虽然(+/- 10%)返回的值有很大的不同。我希望至少其中一些是由红外发射器和接收器模块引入的,但是我没有足够的设备来验证这一点。 假设我可以减轻这种外部误差,是否pulseIn()有足够的精度来区分此类相似的脉冲?
8 pwm  pulsein  timing 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.