Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Nextion.h>
- #define trigPin A0
- #define echoPin A1
- String d1_str, d2_str, diff_str;
- float d1, d2, diff;
- long duration;
- int distance;
- //Declare your Nextion objects , pageid, component id., component name
- NexButton b0 = NexButton(0, 2, "b0");
- NexButton b1 = NexButton(0, 5, "b1");
- NexButton b2 = NexButton(0, 13, "b2");
- NexText t3 = NexText(0, 7, "t3");
- NexText t4 = NexText(0, 8, "t4");
- NexText t5 = NexText(0, 9, "t5");
- //Register a button object to the touch event list
- NexTouch *nex_listen_list[] = {
- &b0,
- &b1,
- &b2,
- NULL
- };
- void b0PopCallback(void *ptr) {
- d1 = read_Ultrasonic_Sensor();
- d1_str = String(d1);
- const char* d1CharArray = d1_str.c_str();
- t3.setText (d1CharArray);
- //t3.setText ("0.02");
- }
- void b1PopCallback(void *ptr) {
- d1 = d1;
- d2 = read_Ultrasonic_Sensor();
- diff = abs(d1 - d2);
- d2_str = String(d2);
- diff_str = String(diff);
- const char* d2CharArray = d2_str.c_str();
- const char* diffCharArray = diff_str.c_str();
- t4.setText (d2CharArray);
- t5.setText (diffCharArray);
- }
- void b2PopCallback(void *ptr) {
- d1 = 0;
- d2 = 0;
- diff = 0;
- t3.setText ("0.00");
- t4.setText ("0.00");
- t5.setText ("0.00");
- }
- void setup(void) {
- Serial.begin(9600);
- init_Sensors();
- nexInit();
- //Register the pop event callback function of the components
- b0.attachPop(b0PopCallback, &b0);
- b1.attachPop(b1PopCallback, &b1);
- b2.attachPop(b2PopCallback, &b2);
- }
- void loop() {
- nexLoop(nex_listen_list);
- }
- void init_Sensors() {
- pinMode(trigPin, OUTPUT);
- pinMode(echoPin, INPUT);
- }
- float read_Ultrasonic_Sensor() {
- digitalWrite(trigPin, LOW);
- delayMicroseconds(2);
- digitalWrite(trigPin, HIGH);
- delayMicroseconds(10);
- digitalWrite(trigPin, LOW);
- duration = pulseIn(echoPin, HIGH);
- distance = duration * 0.034 / 2;
- //Serial.print("Distance: ");
- //Serial.println(distance);
- return distance;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement