Advertisement
_TEXNIK_

Untitled

Jan 3rd, 2024
47
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.75 KB | None | 0 0
  1. // передатчик
  2. #include <SPI.h> // Подключаем библиотеку для работы с SPI-интерфейсом
  3. #include <nRF24L01.h> // Подключаем файл конфигурации из библиотеки RF24
  4. #include <RF24.h> // Подключаем библиотеку для работа для работы с модулем NRF24L01
  5.  
  6. #define PIN_POT A7 // Номер пина Arduino, к которому подключен потенциометр
  7. #define PIN_CE 10 // Номер пина Arduino, к которому подключен вывод CE радиомодуля
  8. #define PIN_CSN 9 // Номер пина Arduino, к которому подключен вывод CSN радиомодуля
  9.  
  10. RF24 radio(PIN_CE, PIN_CSN); // Создаём объект radio с указанием выводов CE и CSN
  11.  
  12. int potValue[1]; // Создаём массив для передачи значений потенциометра
  13.  
  14. void setup() {
  15. radio.begin(); // Инициализация модуля NRF24L01
  16.  
  17. radio.setChannel(5); // Обмен данными будет вестись на пятом канале (2,405 ГГц)
  18. radio.setDataRate (RF24_2MBPS); // Скорость обмена данными 1 Мбит/сек
  19. radio.setPALevel(RF24_PA_MAX); // Выбираем высокую мощность передатчика (-6dBm)
  20. radio.openWritingPipe(0x7878787878LL); // Открываем трубу с уникальным ID
  21. }
  22.  
  23. void loop() {
  24. potValue[0] = analogRead(PIN_POT); // Считываем показания потенциометра
  25. radio.write(potValue, 1); // Отправляем считанные показания по радиоканалу
  26. }
  27.  
  28. // приемник
  29.  
  30. #include <SPI.h> // Подключаем библиотеку для работы с SPI-интерфейсом
  31. #include <nRF24L01.h> // Подключаем файл конфигурации из библиотеки RF24
  32. #include <RF24.h> // Подключаем библиотеку для работа для работы с модулем NRF24L01
  33. #define PIN_LED 3 // Номер пина Arduino, к которому подключен светодиод
  34. #define PIN_CE 10 // Номер пина Arduino, к которому подключен вывод CE радиомодуля
  35. #define PIN_CSN 9 // Номер пина Arduino, к которому подключен вывод CSN радиомодуля
  36. RF24 radio(PIN_CE, PIN_CSN); // Создаём объект radio с указанием выводов CE и CSN
  37.  
  38. int potValue[1]; // Создаём массив для приёма значений потенциометра
  39.  
  40. void setup() {
  41. pinMode(PIN_LED, OUTPUT); // Настраиваем на выход пин светодиода
  42. radio.begin(); // Инициализация модуля NRF24L01
  43. radio.setChannel(5); // Обмен данными будет вестись на пятом канале (2,405 ГГц)
  44. radio.setDataRate (RF24_2MBPS); // Скорость обмена данными 1 Мбит/сек
  45. radio.setPALevel(RF24_PA_MAX); // Выбираем высокую мощность передатчика (-6dBm)
  46. radio.openReadingPipe (1, 0x7878787878LL); // Открываем трубу ID передатчика
  47. radio.startListening(); // Начинаем прослушивать открываемую трубу
  48. }
  49.  
  50. void loop() {
  51. if(radio.available()){ // Если в буфер приёмника поступили данные
  52. radio.read(&potValue, sizeof(potValue)); // Читаем показания потенциометра
  53. analogWrite(PIN_LED, map(potValue[0],0,1023,0,255)); // Регулируем яркость диода
  54. }
  55. }
  56.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement