صفحه 2 از 2 نخستنخست 12
نمایش نتایج: از 11 به 14 از 14
Like Tree4 لایک

موضوع: کمک در ساخت فرستنده با nrf24

  1. #11
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    4,064
    نقل قول نوشته اصلی توسط sniper-70 نمایش پست ها
    سلام
    برنامه بالا رو اجرا کردم . ولی با زدن هر کدوم ار کلیدها فقط یه ال ای دی عمل میکنه
    برنامه هم به نظر درسته
    مشکل از کجاست به نطرتون دوستان///
    اجازه بده من یه کد تست شده براتون میزارم .

  2. #12
    Junior Member
    تاریخ عضویت
    Apr 2016
    نوشته ها
    11
    ممنون میشم
    لایک کردن

  3. #13
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    4,064
    کدی که گفتم :
    سمت فرستنده :
    کد:
    
    #include <RH_NRF24.h>
    RH_NRF24 nrf24(8, 7); // For RFM73 on Anarduino Mini
    
    
    void setup()
    {
      Serial.begin(9600);
      if (!nrf24.init())
        Serial.println("init failed");
      // Defaults after init are 2.402 GHz (channel 2), 2Mbps, 0dBm
      if (!nrf24.setChannel(1))
        Serial.println("setChannel failed");
      if (!nrf24.setRF(RH_NRF24::DataRate2Mbps, RH_NRF24::TransmitPower0dBm))
        Serial.println("setRF failed");
    }
    
    
    
    
    void loop()
    {
      if (Serial.available() > 0) {
        char c = Serial.read();
              Serial.println(c);
        if (c == '1') {     b
          Serial.println("Sending to nrf24_server");
          uint8_t data[] = "1";
          nrf24.send(data, sizeof(data));
          nrf24.waitPacketSent();
        }
     else if (c == '2') {
          Serial.println("Sending to nrf24_server");
          uint8_t data[] = "2";
          nrf24.send(data, sizeof(data));
          nrf24.waitPacketSent();
        }
        else {
                Serial.println("unknown character");
          }
    
    
      }
    }
    کد سمت گیرنده :
    کد:
    
    #include <SPI.h>
    #include <RH_NRF24.h>
    
    
    RH_NRF24 nrf24(8, 7); // For RFM73 on Anarduino Mini
    
    
    void setup()
    {
      Serial.begin(9600);
    
    
      if (!nrf24.init())
        Serial.println("init failed");
      // Defaults after init are 2.402 GHz (channel 2), 2Mbps, 0dBm
      if (!nrf24.setChannel(1))
        Serial.println("setChannel failed");
      if (!nrf24.setRF(RH_NRF24::DataRate2Mbps, RH_NRF24::TransmitPower0dBm))
        Serial.println("setRF failed");
      pinMode(6, OUTPUT);
      pinMode(7, OUTPUT);
    }
    
    
    void loop()
    {
      if (nrf24.available())
      {
        uint8_t  buf[RH_NRF24_MAX_MESSAGE_LEN];
        uint8_t len = sizeof(buf);
        if (nrf24.recv(buf, &len))
        {
          String str = (char*)buf;
          if (str == "1") {
            Serial.println("got request:1 ");
            digitalWrite(5, HIGH);
            digitalWrite(6, LOW);
    
    
          }
          if (str == "2") {
            Serial.println("got request:2 ");
            digitalWrite(6, HIGH);
            digitalWrite(5, LOW);
          }
        }
        else
        {
          Serial.println("recv failed");
        }
      }
    }
    کتابخونه ای که استفاده کردم اتچ شده
    فایل های پیوست شده فایل های پیوست شده

  4. #14
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    4,064
    روند استفاده از کد به این صورت هست :
    سمت فرستنده :
    کنسول رو باز می کنید رو بادریت 9600 .
    طبق این کد نویسی دو تا کامند مجاز وجود داره: عدد 1 و 2

    یکی از این دو تا رو تایپ می کنید.

    سمت گیرنده :
    دو تا led به پایه های 5 و 6 وصل هستن .
    وقتی کامند 1 بدی یکیش روشن میشه وقتی کامند 2 بدی یکی دیگش روشن میشه.

صفحه 2 از 2 نخستنخست 12

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  

SEO by vBSEO