Advertisement
Guest User

Teste

a guest
Nov 27th, 2014
203
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.18 KB | None | 0 0
  1. #include <Ultrasonic.h>
  2.  
  3. #define echoPin 13
  4. #define trigPin 12
  5. const int buzzer = 10;
  6. const int led = 8;
  7. int pinAtual = 0;
  8. boolean bPin = false;
  9. int pwmPin = 0;
  10. boolean bPwm = false;
  11. int statPin = 0; // 1 off 2 on
  12. boolean bStat = false;
  13.  
  14. Ultrasonic ultrasonic(12,13);
  15.  
  16. void setup()
  17. {
  18. Serial.begin(9600);
  19. pinMode(echoPin, INPUT);
  20. pinMode(trigPin, OUTPUT);
  21. pinMode(buzzer, OUTPUT);
  22. pinMode(led, OUTPUT);
  23. pinMode(2, OUTPUT);
  24. pinMode(3, OUTPUT);
  25. pinMode(4, OUTPUT);
  26. pinMode(5, OUTPUT);
  27. pinMode(6, OUTPUT);
  28. pinMode(7, OUTPUT);
  29. pinMode(9, OUTPUT);
  30. pinMode(11, OUTPUT);
  31. }
  32.  
  33. void leStringSerial(){
  34. String conteudo = "";
  35. String statuss = "";
  36. char stat;
  37. char caractere;
  38.  
  39. // Enquanto receber algo pela serial
  40. while(Serial.available() > 0) {
  41. // LĂŞ byte da serial
  42. caractere = Serial.read();
  43. if (caractere != '\n') {
  44. if (caractere == ':') {
  45. caractere = Serial.read();
  46. statuss.concat(caractere);
  47. } else {
  48. conteudo.concat(caractere);
  49. }
  50. }
  51. delay(10);
  52. }
  53. if (conteudo == "ma") {
  54. analogWrite(6, 0);
  55. }
  56. if (conteudo == "mb") {
  57. analogWrite(6, 50);
  58. }
  59. if (conteudo == "mc") {
  60. analogWrite(6, 100);
  61. }
  62. if (conteudo == "md") {
  63. analogWrite(6, 150);
  64. }
  65. if (conteudo == "me") {
  66. analogWrite(6, 200);
  67. }
  68. if (conteudo == "mf") {
  69. analogWrite(6, 250);
  70. }
  71. if (conteudo == "mg") {
  72. analogWrite(6, 255);
  73. }
  74. pinAtual = conteudo.toInt();
  75. statPin = statuss.toInt();
  76. }
  77. void loop()
  78. {
  79. digitalWrite(trigPin, LOW);
  80. delayMicroseconds(2);
  81. digitalWrite(trigPin, HIGH);
  82. delayMicroseconds(10);
  83. digitalWrite(trigPin, LOW);
  84. int distancia = (ultrasonic.Ranging(CM));
  85. Serial.print("Distancia em CM: ");
  86. Serial.println(distancia);
  87. if (distancia <= 10) {
  88. tone(buzzer,500);
  89. Serial.println('a');
  90. digitalWrite(led, HIGH);
  91. } else {
  92. noTone(buzzer);
  93. digitalWrite(led, LOW);
  94. }
  95. if (Serial.available() > 0){
  96. leStringSerial();
  97. if (statPin == 1) {
  98. digitalWrite(pinAtual, LOW);
  99. } else {
  100. digitalWrite(pinAtual, HIGH);
  101. }
  102. }
  103. delay(10);
  104. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement