Merhabalar, nRF24L01 ile mma8451’dan aldığım ‘z’ değerini ekranda yazdırmak istiyorum fakat ne yaptıysam yazdıramadım. Tx ve Rx kodları aşağıda belirtiyorum ne yapmam lazım yardımcı olur musunuz?
TX
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
#include <Wire.h>
#include <MMA8453_n0m1.h>
MMA8453_n0m1 accel;
#define CE_PIN 9
#define CSN_PIN 10
const byte slaveAddress[5] = {‘R’,‘x’,‘A’,‘A’,‘A’};
RF24 radio(CE_PIN, CSN_PIN);
char dataToSend[32] = “Data to Send”;
void setup() {
Serial.begin(9600);
accel.setI2CAddr(0x1C);
accel.dataMode(true, 2);
radio.begin();
radio.setDataRate( RF24_250KBPS );
radio.setRetries(3,5);
radio.openWrittingPipe(slaveAddress[5]);
}
void loop() {
accel.update();
Serial.print("x: “);
Serial.print(accel.x());
Serial.print(” y: “);
Serial.print(accel.y());
Serial.print(” z: ");
Serial.println(accel.z());
}
Rx
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
#include <Wire.h>
#include <MMA8453_n0m1.h>
MMA8453_n0m1 accel;
#define CE_PIN 9
#define CSN_PIN 10
const byte slaveAddress[5] = {‘R’,‘x’,‘A’,‘A’,‘A’};
RF24 radio(CE_PIN, CSN_PIN);
char dataReceived[32];
int trigPin = 2;
int echoPin = 3;
long duration, cm, inches;
void setup() {
Serial.begin(9600);
radio.openReadingPipe(5, slaveAddress);
radio.startListening();
accel.setI2CAddr(0x1C);
accel.dataMode(true, 2);
pinMode(trigPin, OUTPUT);
pinMode (echoPin, INPUT);
}
void loop() {
radio.available();
accel.update();
digitalWrite(trigPin, LOW);
delayMicroseconds(5);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
pinMode(echoPin, INPUT);
duration = pulseIn(echoPin, HIGH);
cm = (duration/2) / 29.1;
inches = (duration/2) 74;
Serial.print("cm: ");
Serial.print(cm);
Serial.println();
delay(100);
}