// Listing 6.12. Mechanizm tłumaczący PUMT — kod obsługujący czujnik ultradźwiękowy Parallax Ping))) napisany w C++

1      const int PingPin = 5;  
2	
3	void setup()
4	{
5	   Serial.begin(9600);
6	}
7	
8	void loop()
9	{
10	    long Cm;
11	    Cm = ping();
12	    Serial.println(Cm);
13	    delay(100);
14	}
15	
16     long ping()
17	{
18	    long Time, Distance;
19	    pinMode(PingPin,OUTPUT);
20	    digitalWrite(PingPin, LOW);
21	    delayMicroseconds(2);
22	    digitalWrite(PingPin, HIGH);
23	    delayMicroseconds(5);
24	    digitalWrite(PingPin, LOW);
25	    pinMode(PingPin,INPUT);
26	    Time = pulseIn(PingPin, HIGH);
27	    Distance = microToCentimeters(Time);
28	    return Distance;
29	}
30	
31	long microToCentimeters(long Micro)
32	{
33	    long Cm;
34	    Cm = (Micro/2) / 29.1;
35	    return Cm;
36     }

