مقاله

مثلث گوشه چپ

کنترل دور موتور با رادیو کنترل 2.4 گیگا با nrf24l01 و آردوینو (سطح 3)

تو این ویدیو می بینید که چطور یک رادیو کنترل 2.4 گیگ با nrf24l01 با استفاه از آردوینو ساخته می شه با گسترش این کد به راحتی می تونید برای ساخت هواپیما ماشین و هر وسیله ای که دوست داشتید استفاده کنید

کد فرستنده

#include <Arduino.h>
#include <SPI.h>  // کتابخانه spi
#include <RF24.h> // کتابخانه nrf
// ce , csn تعریف پایه ها
RF24 my_nrf(9, 10);
// تعریف پایپ با کد اختصاصی
const uint64_t pipe = 0xE2E1FdF2E3LL;
// متغییر برای ذخیره مقدار جویستیک
int y_axis;

void setup()
{
  // شروع کار رادیو 2.4
  my_nrf.begin();
  // تنظیم آدرس فرستنده
  my_nrf.openWritingPipe(pipe);
  // تنظیم توان فرستنده
  my_nrf.setPALevel(RF24_PA_LOW);
  // تنظیم به عنوان فرستنده
  my_nrf.stopListening();
}

void loop()
{
  // خواندن اطلاعات جویستیک
  y_axis = analogRead(A1);
  my_nrf.write(&y_axis,sizeof(y_axis));
  // تاخیر استیبل کردن آنالوگ
  delay(1);
}

کد گیرنده

#include <Arduino.h>
#include <SPI.h>  // کتابخانه spi
#include <RF24.h> // کتابخانه nrf
// ce , csn تعریف پایه ها
RF24 my_nrf(9, 10);
// تعریف پایپ با کد اختصاصی
const uint64_t pipe = 0xE2E1FdF2E3LL;
// متغییر برای ذخیره مقدار جویستیک
int y_axis;

void setup()
{
  // شروع کار رادیو 2.4
  my_nrf.begin();
  // تنظیم آدرس گیرنده
  my_nrf.openReadingPipe(0, pipe);
  // تنظیم توان فرستنده
  my_nrf.setPALevel(RF24_PA_LOW);
  // تنظیم به عنوان گیرنده
  my_nrf.startListening();
}

void loop()
{
  // اگر اطلاعاتی دریافت شد
  if (my_nrf.available())
  {
    //اون اطالاعت رو به اندازه متغییر ببر و ذخیره کن
    my_nrf.read(&y_axis, sizeof(y_axis));
    // موتور که به پایه 6 وصل رو کنترل کن
    analogWrite(6, y_axis / 4);
  }
  delay(1);
}

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

جست و جو