safwan092

Untitled

Dec 15th, 2021
192
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.18 KB | None | 0 0
  1. #include<SoftwareSerial.h>
  2. SoftwareSerial lora(3, 2);//2,3
  3.  
  4. int xdata = 0;
  5. int ydata = 0;
  6.  
  7. // for L298N motor driver
  8. int ena = 5;
  9. int enb = 6;
  10.  
  11. int in1 = 8;
  12. int in2 = 9;
  13. int in3 = 10;
  14. int in4 = 11;
  15.  
  16.  
  17. void setup()
  18. {
  19. Serial.begin(9600);
  20. lora.begin(9600);
  21. pinMode(ena, OUTPUT);
  22. pinMode(enb, OUTPUT);
  23. pinMode(in1, OUTPUT);
  24. pinMode(in2, OUTPUT);
  25. pinMode(in3, OUTPUT);
  26. pinMode(in4, OUTPUT);
  27. analogWrite(ena, 0);
  28. analogWrite(enb, 0);
  29. }
  30.  
  31. void loop()
  32. {
  33.  
  34. if (lora.available() > 0) {
  35.  
  36. xdata = lora.parseInt();
  37. ydata = lora.parseInt();
  38. /*
  39. Serial.print(xdata);
  40. Serial.print(" , ");
  41. Serial.println(ydata);
  42. }
  43. }
  44. */
  45.  
  46. // for stop
  47. if ( ((xdata >= 400) && (xdata <= 600)) && ( (ydata >= 400) && (ydata <= 600) ) )
  48. {
  49. analogWrite(ena, 0);
  50. analogWrite(enb, 0);
  51. digitalWrite(in1, LOW);
  52. digitalWrite(in2, LOW);
  53. digitalWrite(in3, LOW);
  54. digitalWrite(in4, LOW);
  55. }
  56.  
  57. // for the forward movement
  58. if ( ((xdata > 600) && (xdata <= 1023)) && ( (ydata >= 400) && (ydata <= 600) ) )
  59. {
  60. analogWrite(ena, 200);
  61. analogWrite(enb, 200);
  62. digitalWrite(in1, HIGH);
  63. digitalWrite(in2, LOW);
  64. digitalWrite(in3, HIGH);
  65. digitalWrite(in4, LOW);
  66. }
  67.  
  68.  
  69. // for the Reverse movement
  70. if ( ((xdata >= 0) && (xdata < 400)) && ( (ydata >= 400) && (ydata <= 600) ) )
  71. {
  72.  
  73. analogWrite(ena, 200);
  74. analogWrite(enb, 200);
  75. digitalWrite(in1, LOW);
  76. digitalWrite(in2, HIGH);
  77. digitalWrite(in3, LOW);
  78. digitalWrite(in4, HIGH);
  79.  
  80. }
  81.  
  82. // for right movement
  83. if ( ( (ydata > 600) && (ydata <= 1023) ))
  84. {
  85. analogWrite(ena, 200);
  86. analogWrite(enb, 0);
  87. digitalWrite(in1, HIGH);
  88. digitalWrite(in2, LOW);
  89. digitalWrite(in3, LOW);
  90. digitalWrite(in4, LOW);
  91.  
  92. }
  93.  
  94. // for left movement
  95. if ( (ydata >= 0) && (ydata <= 400) )
  96. {
  97. analogWrite(ena, 0);
  98. analogWrite(enb, 200);
  99. digitalWrite(in1, LOW);
  100. digitalWrite(in2, LOW);
  101. digitalWrite(in3, HIGH);
  102. digitalWrite(in4, LOW);
  103.  
  104.  
  105. }
  106.  
  107.  
  108.  
  109. }
  110.  
  111.  
  112. }
Advertisement
Add Comment
Please, Sign In to add comment