PING med två 7-segment LED visar. (3 / 4 steg)
Steg 3: Koden
#include "SevSeg.h"SevSeg sevseg;
int refreshTime = 1000;
int pingPin = 14. 10
int inPin = 15. 9
lång varaktighet, tum, cm;
int indec, cmdec;
int inchconv = 147;
int cmconv = 59.
osignerade långa timer;
void setup() {
sevseg. BEGIN(0,2,3,4,5,6,7,8,9,10,11,12,13);
pinMode (pingPin, produktionen);
pinMode (inPin, ingång);
}
void loop()
{sevseg. PrintOutput();
digitalWrite (pingPin, låg);
delayMicroseconds(2);
digitalWrite (pingPin, hög);
delayMicroseconds(10);
digitalWrite (pingPin, låg);
längd = pulseIn (inPin, hög);
tum = microsecondsToInches(duration);
INDEC = (varaktighet - inches * inchconv) * 10 / inchconv;
cm = microsecondsToCentimeters(duration);
cmdec = (varaktighet - cm * cmconv) * 10 / cmconv;
osignerade långa mils=millis();
om (mils-timer > = refreshTime) {
timer = mils;
sevseg. NewNum(cm,(byte) 2);
}
}
lång microsecondsToInches(long microseconds)
{
återvända mikrosekunder / inchconv;
}
lång microsecondsToCentimeters(long microseconds)
{
återvända mikrosekunder / cmconv;
}