اطلاعیه

Collapse
No announcement yet.

مشکل در ارسال مادون قرمز با فرستنده ir led

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    مشکل در ارسال مادون قرمز با فرستنده ir led

    سلام
    من با برد آردوینو uno و یک گیرنده و فرستنده مادون قرمز در حال ساخت پروژه کنترل از راه دور هستم
    گیرنده به درستی جواب میده و کدهای همه کنترلها و مادون قرمزهای ارسالی رو دریافت میکنه اما زمانی که خودم دستور ارسال مادون قرمز رو به فرستنده ir led با کتابخونه IRremote.h رو اجرا میکنم کدی ارسال نمیشه و تو سریال فقط 0 چاپ میشه یا اگر ارسال میشه 0 هست . چون led روی ماژول گیرنده تشخیص موج رو میده و چشمک میزنه یعنی موج رو دریافت میکنه اما فقط 0 چاپ میشه ...
    پین فرستنده : 3
    پین دریافت کننده : 11
    مقاومت استفاده شده : 100 اهم / 470 / 220 ... هر سه نوع تست شده
    ممنون میشم راهنمایی کنید ... واقعا گیر کردم
    فکر میکنم موجی که ساخته میشه ایراد داره

    کد:
    #include <boarddefs.h>
    #include <IRremote.h>
    #include <IRremoteInt.h>
    #include <ir_Lego_PF_BitStreamEncoder.h>
    
    
    
    
    IRsend irsend;
    const int RECV_PIN = 11;
    IRrecv irrecv(RECV_PIN);
    
    
    decode_results results;
    
    
    
    
    
    
    void setup()
    {
      Serial.begin(9600);
      irrecv.enableIRIn(); // Start the receiver
      irrecv.blink13(true);
      pinMode(3, OUTPUT);
    }
    
    
    void loop() {
    if (Serial.read() != -1) {
    for (int i = 0; i < 3; i++) {
    irsend.sendNEC(0x00ff01fe, 32);
    Serial.println("Sending");
    delay(100); //In this example, the signal will be repeated every 5 seconds, approximately.
    Serial.println(irrecv.decode(&results));
      irrecv.resume();
      }
    }
    
    
      
      if (irrecv.decode(&results)) {
    Serial.print(results.bits);
        Serial.println(irrecv.decode(&results));
        if (results.decode_type == NEC) {
          Serial.print("NEC: ");
          digitalWrite(13, HIGH);
          delay(400);
          digitalWrite(13, LOW);
          delay(400);
          
        } else if (results.decode_type == SONY) {
          Serial.print("SONY: ");
          digitalWrite(13, HIGH);
          delay(400);
          digitalWrite(13, LOW);
          delay(400);
        } else if (results.decode_type == RC5) {
          Serial.print("RC5: ");
          digitalWrite(13, HIGH);
          delay(400);
          digitalWrite(13, LOW);
          delay(400);
        } else if (results.decode_type == RC6) {
          Serial.print("RC6: ");
          digitalWrite(13, HIGH);
          delay(400);
          digitalWrite(13, LOW);
          delay(400);
        } else if (results.decode_type == UNKNOWN) {
          Serial.print("UNKNOWN: ");
          digitalWrite(13, HIGH);
          delay(400);
          digitalWrite(13, LOW);
          delay(400);
        }
        Serial.println(results.value, HEX);
        
        irrecv.resume(); // Receive the next value
      }
    }
    جدیدترین ویرایش توسط hossein389; ۱۰:۵۴ ۱۳۹۷/۰۲/۲۹.

    #2
    پاسخ : مشکل در ارسال مادون قرمز با فرستنده ir led

    درود. هدف این برنامه چیه ؟ چرا ابتدای لوپ سه بار کد nec می*فرستید ؟ اون کتابخونه ها چیه ادد کردید ؟ فرستنده شما چه ریموتی هست ؟

    دیدگاه


      #3
      پاسخ : مشکل در ارسال مادون قرمز با فرستنده ir led

      نوشته اصلی توسط Masood Ashoori نمایش پست ها
      درود. هدف این برنامه چیه ؟ چرا ابتدای لوپ سه بار کد nec می*فرستید ؟ اون کتابخونه ها چیه ادد کردید ؟ فرستنده شما چه ریموتی هست ؟
      ممنون از توجهتون .
      من قرار هست فقط یک کد رو ازطریق فرستنده مادون قرمز به گیرنده ارسال کنم
      این کد از روی مثال خود اردیونو برداشته شده . طبق گفته مثال علت این کار برای درست ارسال شدن این کد هست و خواندن کد توسط گیرنده
      مشکل من فقط ارسال این کد هست ...
      از طرف گیرنده مشکلی نیست و دقیقا طبق برنامه کار میکنه اما فرستنده متاسفانه نه...
      کتابخانه ارسال و دریافت مادون قرمز هست که تو مثالها آورده شده
      فرستنده یک ال ای دی مادون قرمز 5 میل هست که به برد اردینو و پین 3 متصل شده
      جدیدترین ویرایش توسط hossein389; ۱۴:۰۶ ۱۳۹۷/۰۲/۲۹.

      دیدگاه


        #4
        پاسخ : مشکل در ارسال مادون قرمز با فرستنده ir led

        شما دوتا آردوینو دارید ؟ یکی فرستنده و یکی گیرنده . یا فرستنده یک ریموت حاضری هست ؟
        الان این برنامه کدومش هست؟
        ارسال چندباره برای کد سونی لازم هست . Nec نیاز نداره.
        این برنامه رو بذارید کنار چون هیچ قسمت درستی نداره.نمیدونم از کجا آوردید. شما سناریو رو توضیح بدید راهنمایی کنم .

        دیدگاه


          #5
          پاسخ : مشکل در ارسال مادون قرمز با فرستنده ir led

          بله من دو تا آردوینوجدا دارم . قرار هست فرستنده کد رو برای گیرنده بفرسته و گیرنده بر حسب کد دریافتی عملیات خاص خودش رو اجرا کنه
          ( فرستنده مادون قرمز ) روی برد اول
          گیرنده مادون قرمز روی برد دوم
          از ریموت حاضری نمیخوام استفاده کنم . میخوام خودم کد رو ایجاد و ارسال کنم توسط فرستنده مادون قرمز
          ممنون از راهنماییتون

          دیدگاه


            #6
            پاسخ : مشکل در ارسال مادون قرمز با فرستنده ir led

            کتابخونه قبلی رو حذف کنید .
            این رو دانلود و نصب کنید
            Infrared remote library for Arduino: send and receive infrared signals with multiple protocols - Arduino-IRremote/Arduino-IRremote

            یک مثال داره irsend demo که کد سونی می*فرسته علت سه بار فرستادنش سونی بودنش هست اگر از کد دیگه مثل nec استفاده کنید یکبار کافیه
            مثال دیگه ir receive demo هم برای طرف گیرنده . می*بینید که برنامه ها بسیار کوتاه و ساده هستند . نیاز به اون همه کد و کتابخونه که در برنامه شما اومده نیست

            دیدگاه


              #7
              پاسخ : مشکل در ارسال مادون قرمز با فرستنده ir led

              ممنونم از لطف شما . حل شد

              دیدگاه

              لطفا صبر کنید...
              X