reciever witch is a arduino uno board and is connected to pc
transmeter witch is a client and have 5 keys and 5 leds
the problem is that this joystick works correct for my friend
but for me that i have just 2 arduino pro micro and i upload the codes
and i can get data from serial port ( the keys ) but i cant send orders to turn on leds
i use a multimeter on arduino pins but it has no voltage
we dont know why this is happening
is any defrence between arduino uno and arduino pro micro programs ????
why i cant turn on leds ?????????????
plz help me
i send the code in attach files and here too
thank you all
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(9, 10); // CE, CSN
const byte addresses [][6] = {"00001", "00002"};
const int led1=2;
const int led2=3;
const int led3=4;
const int led4=5;
const int led5=6;
const int key1=7;
const int key2=8;
const int key3=A0;
const int key4=A1;
const int key5=A2;
String outputString = "";
String inputString = "";
char inputString_index=0;
char temp=0;
char text[20];
void setup() {
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
pinMode(key1,INPUT_PULLUP);
pinMode(key2,INPUT_PULLUP);
pinMode(key3,INPUT_PULLUP);
pinMode(key4,INPUT_PULLUP);
pinMode(key5,INPUT_PULLUP);
outputString.reserve(10);
inputString.reserve(20);
Serial.begin(9600);
radio.begin();
radio.openWritingPipe(addresses[0]);
radio.openReadingPipe(1, addresses[1]);
radio.setPALevel(RF24_PA_MIN);
radio.startListening();
}
void loop()
{
outputString="";
outputString.concat(digitalRead(key1));
outputString.concat(",");
outputString.concat(digitalRead(key2));
outputString.concat(",");
outputString.concat(digitalRead(key3));
outputString.concat(",");
outputString.concat(digitalRead(key4));
outputString.concat(",");
outputString.concat(digitalRead(key5));
outputString.concat(",");
outputString.concat('*');
outputString.toCharArray(text,sizeof(text));
radio.stopListening();
radio.write(&text, sizeof(text));
radio.startListening();
delay(100);
if (radio.available())
{
char text[15] = "";
radio.read(&text, sizeof(text));
//Serial.println(text);
inputString=&text[0];
Serial.println(inputString);
inputString_index=inputString.indexOf('*');
if(inputString_index>0)
{
temp=inputString[inputString_index-2];
if(temp=='1') digitalWrite(led5,HIGH);
else digitalWrite(led5,LOW);
temp=inputString[inputString_index-4];
if(temp=='1') digitalWrite(led4,HIGH);
else digitalWrite(led4,LOW);
temp=inputString[inputString_index-6];
if(temp=='1') digitalWrite(led3,HIGH);
else digitalWrite(led3,LOW);
temp=inputString[inputString_index-8];
if(temp=='1') digitalWrite(led2,HIGH);
else digitalWrite(led2,LOW);
temp=inputString[inputString_index-10];
if(temp=='1') digitalWrite(led1,HIGH);
else digitalWrite(led1,LOW);
}
inputString_index=0;
inputString="";
}
}
that was for client codes
and these are for reciever
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(9, 10); // CE, CSN
const byte addresses [][6] = {"00001", "00002"};
String inputString = "";
void setup() {
Serial.begin(9600);
radio.begin();
radio.openWritingPipe(addresses[1]);
radio.openReadingPipe(1, addresses[0]);
radio.setPALevel(RF24_PA_MIN);
inputString.reserve(20);
while (!Serial) {
;
}
radio.startListening();
}
void loop()
{
if (radio.available())
{
char text[32] = "";
radio.read(&text, sizeof(text));
Serial.println(text);
delay(5);
}
}
void serialEvent() {
while (Serial.available()) {
char inChar = (char)Serial.read();
inputString += inChar;
if(inChar=='*'){
radio.stopListening();
char text2[20];
inputString.toCharArray(text2,sizeof(text2));
radio.write(&text2, sizeof(text2));
inputString="";
delay(10);
radio.startListening();
}
}
}
arduino_1.ino (2.7 KB)
arduino_2.ino (1004 Bytes)