yzheka-m/ultrasonic-distance-sensor
struct State { }; {{ GENERATED_CODE }} void evaluate(Context ctx) { int echo=getValue<input_ECHO>(ctx); int trig=getValue<input_TRIG>(ctx); if(isSettingUp()){ pinMode(trig, OUTPUT); pinMode(echo, INPUT); } if(getValue<input_UPDATE>(ctx)){ digitalWrite(trig, LOW); delayMicroseconds(2); digitalWrite(trig, HIGH); delayMicroseconds(10); digitalWrite(trig, LOW); unsigned long durationMicroSec = pulseIn(echo, HIGH); double distanceCm = (durationMicroSec*0.034029) / 2 ; emitValue<output_DIST>(ctx,distanceCm); } }
© 2017–2025XOD Inc
Contact us: hello@xod.io