HC SR04
Dependencies: mbed HC_SR04_Ultrasonic_Library
main.cpp@1:b47bfaaa417a, 2019-05-03 (annotated)
- Committer:
- Batoch
- Date:
- Fri May 03 18:21:19 2019 +0000
- Revision:
- 1:b47bfaaa417a
- Parent:
- 0:97403de5e127
- Child:
- 2:4b0821fe5e20
mieux
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Batoch | 0:97403de5e127 | 1 | #include "ultrasonic.h" |
Batoch | 0:97403de5e127 | 2 | #include "mbed.h" |
Batoch | 0:97403de5e127 | 3 | |
Batoch | 0:97403de5e127 | 4 | |
Batoch | 1:b47bfaaa417a | 5 | void dist(int distance); |
Batoch | 1:b47bfaaa417a | 6 | void dist2(int distance); |
Batoch | 1:b47bfaaa417a | 7 | |
Batoch | 1:b47bfaaa417a | 8 | |
Batoch | 1:b47bfaaa417a | 9 | ultrasonic mu(A0, A1, .2, 1, &dist); //Set the trigger pin to A0 and the echo pin to A1 |
Batoch | 1:b47bfaaa417a | 10 | //have updates every .2 seconds and a timeout after 1 |
Batoch | 1:b47bfaaa417a | 11 | //second, and call dist when the distance changes |
Batoch | 1:b47bfaaa417a | 12 | ultrasonic mu2(A3, A4, .2, 1, &dist2); |
Batoch | 1:b47bfaaa417a | 13 | |
Batoch | 1:b47bfaaa417a | 14 | |
Batoch | 0:97403de5e127 | 15 | void dist(int distance) |
Batoch | 0:97403de5e127 | 16 | { |
Batoch | 0:97403de5e127 | 17 | //put code here to execute when the distance has changed |
Batoch | 1:b47bfaaa417a | 18 | mu.pauseUpdates(); |
Batoch | 1:b47bfaaa417a | 19 | printf("Distance1 %d mm\r\n", distance); |
Batoch | 1:b47bfaaa417a | 20 | mu2.startUpdates(); |
Batoch | 0:97403de5e127 | 21 | } |
Batoch | 1:b47bfaaa417a | 22 | |
Batoch | 1:b47bfaaa417a | 23 | void dist2(int distance) |
Batoch | 1:b47bfaaa417a | 24 | { |
Batoch | 1:b47bfaaa417a | 25 | //put code here to execute when the distance has changed |
Batoch | 1:b47bfaaa417a | 26 | mu2.pauseUpdates(); |
Batoch | 1:b47bfaaa417a | 27 | printf("Distance2 %d mm\r\n\n", distance); |
Batoch | 1:b47bfaaa417a | 28 | mu.startUpdates(); |
Batoch | 1:b47bfaaa417a | 29 | } |
Batoch | 1:b47bfaaa417a | 30 | |
Batoch | 1:b47bfaaa417a | 31 | |
Batoch | 1:b47bfaaa417a | 32 | |
Batoch | 0:97403de5e127 | 33 | |
Batoch | 0:97403de5e127 | 34 | int main() |
Batoch | 0:97403de5e127 | 35 | { |
Batoch | 0:97403de5e127 | 36 | mu.startUpdates();//start measuring the distance |
Batoch | 1:b47bfaaa417a | 37 | wait_ms(100); |
Batoch | 1:b47bfaaa417a | 38 | mu2.startUpdates(); |
Batoch | 0:97403de5e127 | 39 | while(1) |
Batoch | 0:97403de5e127 | 40 | { |
Batoch | 0:97403de5e127 | 41 | //Do something else here |
Batoch | 1:b47bfaaa417a | 42 | mu.checkDistance(); |
Batoch | 1:b47bfaaa417a | 43 | mu2.checkDistance(); //call checkDistance() as much as possible, as this is where |
Batoch | 0:97403de5e127 | 44 | //the class checks if dist needs to be called. |
Batoch | 0:97403de5e127 | 45 | } |
Batoch | 0:97403de5e127 | 46 | } |