




#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
//RF24 radio(9, 10); //(CE, CSN)
RF24 radio(2, 15); //(CE, CSN)
int id;
int cmd;
void setup(){
Serial.begin(115200);
radio.begin();
//radio.setChannel(1); // Channel(0 ... 127)
radio.setDataRate (RF24_1MBPS); // RF24_250KBPS, RF24_1MBPS, RF24_2MBPS)
radio.setPALevel (RF24_PA_HIGH); //RF24_PA_MIN=-18dBm, RF24_PA_LOW=-12dBm, RF24_PA_HIGH=-6dBm, RF24_PA_MAX=0dBm
radio.openWritingPipe (0x1234567890LL); // 0x1234567890
}
void loop(){
if(Serial.available()) {
String str = Serial.readString();
if (str.indexOf("p")>-1){
String str1 = str.substring(str.indexOf("p") + 1, str.indexOf("q"));
id = str1.toInt();
str1 = str.substring(str.indexOf("q") + 1, str.length());
cmd = str1.toInt();
if(id>127) id=127;
if(id<0) id=0;
radio.setChannel(id); // Channel(0 ... 127)
radio.write(&cmd, sizeof(cmd));
}
}
}
//w, a, s, d, q, e, r, f, c, SPACE, ESC, -'(консоль), TAB, Caps, Shift, F1, 1, 2, 3, rightclick, leftclick, x +20, x-20, y +20, y -20
//1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,17,18,19, 21, 20, 22, 23, 25, 24
#include "Keyboard.h"
#include "Mouse.h"
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(9, 10); //(CE, CSN)
int cmd;
void setup(){
delay(1000);
Mouse.begin();
Keyboard.begin();
radio.begin();
radio.setChannel(11); // Channel 0 ... 127
radio.setDataRate (RF24_1MBPS); // RF24_250KBPS, RF24_1MBPS, RF24_2MBPS
radio.setPALevel (RF24_PA_HIGH); // RF24_PA_MIN=-18dBm, RF24_PA_LOW=-12dBm, RF24_PA_HIGH=-6dBm, RF24_PA_MAX=0dBm
radio.openReadingPipe (1, 0x1234567890LL); // 0x1234567890
radio.startListening ();
//radio.stopListening ();
}
void loop(){
if(radio.available()){
radio.read(&cmd, sizeof(cmd));
switch (cmd) {
case 22:
Mouse.move(20, 0);
break;
case 23:
Mouse.move(-20, 0);
break;
case 24:
Mouse.move(0, -20);
break;
case 25:
Mouse.move(0, 20);
break;
case 20:
Mouse.click(MOUSE_LEFT);
break;
case 21:
Mouse.click(MOUSE_RIGHT);
break;
case 1:
Keyboard.write('w');
break;
case 2:
Keyboard.write('a');
break;
case 3:
Keyboard.write('s');
break;
case 4:
Keyboard.write('d');
break;
case 5:
Keyboard.write('q');
break;
case 6:
Keyboard.write('e');
break;
case 7:
Keyboard.write('r');
break;
case 8:
Keyboard.write('f');
break;
case 9:
Keyboard.write('c');
break;
case 10:
Keyboard.write(' ');
break;
case 11:
Keyboard.write(KEY_ESC);
break;
case 12:
Keyboard.write('`');
break;
case 13:
Keyboard.write(KEY_TAB);
break;
case 14:
Keyboard.write(KEY_CAPS_LOCK);
break;
case 15:
Keyboard.write(KEY_LEFT_SHIFT);
break;
case 16:
Keyboard.write(KEY_F1);
break;
case 17:
Keyboard.write('1');
break;
case 18:
Keyboard.write('2');
break;
case 19:
Keyboard.write('3');
break;
}
delay(100);
Keyboard.releaseAll();
}
}
Плата STM32F103C8T6
Мінімальна плата контролера від світового лідера по виробництву контролерів - фірми STM32.Для заливк..
211.50грн.
Контроль виконання програми Arduino
Контроль виконання програми ArduinoЦя стаття присвячена опису структур, що використовуються для упра..
Цикли 3 — Цикл while
Цикли 3 — Цикл while Вступ Цикл while — це конструкція, яка виконує код доти, доки задан..
Драйвер крокового двигуна RAMPS 1.4 для CNC або 3D-принтера
Драйвер A4988 під шилд RAMPS 1.4Є можливість налаштовувати робочий струм двигуна за допомогою з..
60.91грн.
Кронштейн для кріплення крокового двигуна
Якісний сталевий кронштейн підходить для кріплення крокового двигуна Nema 17, а також для його модиф..
153.09грн.





