Advertisement
Guest User

Untitled

a guest
Jan 19th, 2019
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.92 KB | None | 0 0
  1. #include <Arduino.h>
  2. #include <RF24Network.h>
  3. #include <RF24.h>
  4. #include <SPI.h>
  5.  
  6. #include "Request/Request.h"
  7. #include "Response/Response.h"
  8.  
  9. RF24 radio(7,8);
  10. RF24Network network(radio);
  11. const uint16_t UNO_node = 01;
  12. const uint16_t Mini_node = 00;
  13.  
  14. struct Request req_message;
  15. struct Response res_message;
  16. RF24NetworkHeader uno_header(UNO_node);
  17. RF24NetworkHeader mini_header(Mini_node);
  18.  
  19. void setup()
  20. {
  21. Serial.begin(115200);
  22. SPI.begin();
  23. radio.begin();
  24. network.begin(45,UNO_node);
  25. }
  26.  
  27.  
  28. uint16_t HandleResponse(){
  29.  
  30. Serial.println("Obsluguje odpowiedz od mini");
  31. network.read(uno_header,&res_message,sizeof(res_message));
  32. if(res_message.type == 3){
  33. Serial.print("Tone Value : ");
  34. Serial.println(res_message.value);
  35. }else if(res_message.type == 4){
  36. Serial.print("Potentiometer Value : ");
  37. Serial.println(res_message.value);
  38. }
  39. }
  40.  
  41.  
  42. uint16_t SendRequest(Request req) {
  43. int AllRight = network.write(mini_header,&req,sizeof(req));
  44. Serial.println(AllRight);
  45. if(!AllRight){
  46. Serial.println("Failed");
  47. return 1; //Sending error
  48. }else{
  49. Serial.println("Sending ok");
  50. return 0; // Wszytsko okej
  51. }
  52. }
  53.  
  54. uint16_t SetSpeakerVolume(int value){
  55. if(value>20000)
  56. return 3; // za duza czestotliwosc
  57. else if(value<0)
  58. return 2; // za mała czestotliwosc
  59. else{
  60. req_message.SetRequestValues(0,0,value,0);
  61. SendRequest(req_message);
  62. }
  63. }
  64.  
  65. void GetSpeakerVolume(){
  66. req_message.SetRequestValues(1,0,0,0);
  67. SendRequest(req_message);
  68. }
  69.  
  70. void GetPotentiometerValue(){
  71. req_message.SetRequestValues(1,1,0,0);
  72. SendRequest(req_message);
  73. }
  74.  
  75. int i =1;
  76.  
  77.  
  78.  
  79. void loop() {
  80. network.update();
  81.  
  82. for(i;i<2;i++){
  83. GetSpeakerVolume();
  84. GetPotentiometerValue();
  85. }
  86.  
  87. if(network.available()){
  88. Serial.println("Network available");
  89. HandleResponse();
  90. }
  91. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement