Advertisement
Guest User

Untitled

a guest
Jan 28th, 2020
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.89 KB | None | 0 0
  1. #include "rgb_lcd.h"
  2. rgb_lcd lcd;
  3. struct
  4. {
  5. int czas_ostatniej_zmiany;
  6. int stan;
  7. }dioda;
  8.  
  9. int pindiode=6;
  10. int pinTemp=4;
  11. int pinBuzz=7;
  12.  
  13. void setup()
  14. {
  15. lcd.begin(16,2);
  16. lcd.setRGB(5,255,50);
  17. lcd.display();
  18. dioda.stan=LOW;
  19. dioda.czas_ostatniej_zmiany = millis();
  20. pinMode(pinBuzz, OUTPUT);
  21. Serial.begin(9600);
  22. Serial.println("komenda: ");
  23. }
  24. //dioda
  25. int dioda_konsola(String konsola)
  26. {
  27. if(konsola.startsWith("dioda ")){
  28. String h = konsola.substring(5);
  29. int s = h.toInt();//read int or parseFloat for ..float...
  30. Serial.println("komenda: ");
  31. return s;
  32. }
  33. if(konsola.startsWith("dioda stop")){
  34. int s=0;
  35. Serial.println("komenda: ");
  36. return s;
  37. }
  38. }
  39. void obluga_diody(int f)
  40. {
  41. int czas = f * 500;
  42. int uplynelo = millis() - dioda.czas_ostatniej_zmiany;
  43. if(uplynelo >= czas)
  44. {
  45. dioda.stan = !dioda.stan;
  46. dioda.czas_ostatniej_zmiany=millis();
  47. digitalWrite(pindiode,dioda.stan);
  48. }
  49. }
  50. //temperatura
  51. int temperatura_konsola (String konsola){
  52. if(konsola.startsWith("temperatura K")){
  53. temperatura(273);
  54. Serial.println("komenda: ");
  55. }
  56. if(konsola.startsWith("temperatura C")){
  57. temperatura(0);
  58. Serial.println("komenda: ");
  59. }
  60. }
  61. void temperatura(int k){
  62. float temp = analogRead(pinTemp); //Read the analog pin
  63. temp = temp * 0.048828125; // convert output (mv) to readable celcius
  64. temp = temp + k ;
  65. Serial.print("Temperature:");
  66. Serial.print(temp);
  67. if(k){
  68. Serial.println(" K"); //print the temperature status
  69. }
  70. if(k == 0){
  71. Serial.println(" 'C"); //print the temperature status
  72. }
  73. delay(1000);
  74. }
  75. //buzzer
  76. int bzz_f(String konsola){
  77. if(konsola.startsWith("dzwiek ")){
  78. String s = konsola.substring(7);
  79. int f = s.toInt();//czestotliwosc
  80. Serial.println("komenda: ");
  81. return f;
  82. }
  83. }
  84. int bzz_t(String konsola){
  85. if(konsola.endsWith("razy ")){
  86. String s = s.substring(17);
  87. int t = s.toInt();//ile razy
  88. Serial.println("komenda: ");
  89. return t;
  90. }
  91.  
  92. }
  93. int bzz_p(String konsola){
  94. if(konsola.endsWith("pauza ")){
  95. String s = s.substring(17);
  96. int p = s.toInt();//ile razy
  97. Serial.println("komenda: ");
  98. return p;
  99. }
  100.  
  101. }
  102. void bzz(int f, int r, int p)
  103. {
  104. if(r){
  105. for(int j = 0; j < r; j++){
  106. tone(pinBuzz,f);
  107. delay(p);
  108. }
  109. }
  110. else {
  111. tone(pinBuzz,f);
  112. delay(p);
  113. }
  114.  
  115. }
  116. //lcd
  117. void loop(){
  118. String konsola = Serial.readString();
  119. int a;
  120. if(konsola){
  121. int s = dioda_konsola(konsola);
  122. int b[3] = {bzz_f(konsola), bzz_t(konsola), bzz_p(konsola)};
  123. if(s){
  124. obluga_diody(s);
  125. }
  126. bzz(b[0],b[1],b[2]);
  127. if(konsola.startsWith("dzwiek stop")){
  128. a = 0;
  129. Serial.println(a);
  130. }
  131. if(a == 0)
  132. {
  133. b[0] = 0;
  134. noTone(pinBuzz);
  135. }
  136. temperatura_konsola(konsola);
  137. }
  138. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement