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

موضوع: مشکل در ارتباطات رادیویی با اردوینو !!!

  1. #11
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    3,806
    بیاین این کد رو تست کنید :
    مدا ر و کد سمت گیرنده :
    FITMUZGHM8DG0TF.MEDIUM.jpg
    کد:
    #include <VirtualWire.h>
    void setup()
    {
        vw_set_ptt_inverted(true); // Required for DR3100
        vw_set_rx_pin(12);
        vw_setup(4000);  // Bits per sec
        pinMode(13, OUTPUT);
    
    
        vw_rx_start();       // Start the receiver PLL running
    }
        void loop()
    {
        uint8_t buf[VW_MAX_MESSAGE_LEN];
        uint8_t buflen = VW_MAX_MESSAGE_LEN;
    
    
        if (vw_get_message(buf, &buflen)) // Non-blocking
        {
          if(buf[0]=='1'){
    
    
      
       digitalWrite(13,1);
          }  
       if(buf[0]=='0'){
      digitalWrite(13,0);
        }
    
    
    }
    }

  2. #12
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    3,806
    مدار و کد سمت فرستنده :
    FZHIW05HM8DG0TI.MEDIUM.jpg

    کد:
    #include <VirtualWire.h>
    char *controller;
    void setup() {
      pinMode(13,OUTPUT);
    vw_set_ptt_inverted(true); //
    vw_set_tx_pin(12);
    vw_setup(4000);// speed of data transfer Kbps
    }
    
    void loop(){
    controller="1"  ;
    vw_send((uint8_t *)controller, strlen(controller));
    vw_wait_tx(); // Wait until the whole message is gone
    digitalWrite(13,1);
    delay(2000);
    controller="0"  ;
    vw_send((uint8_t *)controller, strlen(controller));
    vw_wait_tx(); // Wait until the whole message is gone
    digitalWrite(13,0);
    delay(2000);
    
    }
    لایک کردن

  3. #13
    Senior Member
    تاریخ عضویت
    Nov 2014
    نوشته ها
    255
    این کد جواب میده . فقط یه چیزی من اگه بخوام یه رشته مثلا reza1 رو به عنوان کد بفرستم توو فرستنده باید بنویسم:

    controller = "reza1"



    سمت گیرنده این خط رو چی باید بنویسم ؟؟ :

    if(buf[0]=='1')

  4. #14
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    3,806
    نقل قول نوشته اصلی توسط feredy2011 نمایش پست ها
    این کد جواب میده . فقط یه چیزی من اگه بخوام یه رشته مثلا reza1 رو به عنوان کد بفرستم توو فرستنده باید بنویسم:

    controller = "reza1"



    سمت گیرنده این خط رو چی باید بنویسم ؟؟ :

    if(buf[0]=='1')
    سمت فرستنده اومده controller رو از نوع ارایه کاراکتری تعریف کرده پس با reza1 مشکلی نداره

    سمت گیرنده باید بیای تمام خونه های بافر رو مقایسه کنی یه همچین مدلی
    کد:
    #include <VirtualWire.h>
    void setup()
    {
      vw_set_ptt_inverted(true); // Required for DR3100
      vw_set_rx_pin(12);
      vw_setup(4000);  // Bits per sec
      pinMode(13, OUTPUT);
    
    
    
    
      vw_rx_start();       // Start the receiver PLL running
    }
    void loop()
    {
      uint8_t buf[VW_MAX_MESSAGE_LEN];
      uint8_t buflen = VW_MAX_MESSAGE_LEN;
    
    
      if (vw_get_message(buf, &buflen)) // Non-blocking
      {
        if ((buf[0] == '1') &&(buf[1] == 'a') ) {
          digitalWrite(13, 1);
        }
        if (buf[0] == '0') {
          digitalWrite(13, 0);
        }
    
    
      }
    }

  5. #15
    Senior Member
    تاریخ عضویت
    Nov 2014
    نوشته ها
    255
    توو فرستنده اینجوری نوشتم :
    const char *msg = "reza1";
    و
    const char *msg = "reza2";
    گیرنده اینجوزی:
    if ((buf[0] == '1') && (buf[1] == 'a') && (buf[2] == 'z') && (buf[3] == 'e') && (buf[4] == 'r') )
    و
    if ((buf[0] == '2') && (buf[1] == 'a') && (buf[2] == 'z') && (buf[3] == 'e') && (buf[4] == 'r') )

    ولی جواب نداد . کد رو که سند میکنم اصلا نمیگیره. یکی از این if حذف کردم که ببینم چی میشه ! تست کردم با هر دو کد دستوری که if حذف شده بود عمل میکرد...

  6. #16
    Senior Member
    تاریخ عضویت
    Nov 2014
    نوشته ها
    255
    درست شد مهندس ترتیب تو بافر رو اشتباه نوشتیم. buf[0] == r ما از ته نوشتیم ...
    خیلی خیلی ممنون بابت کمک
    لایک کردن

  7. #17
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    3,806
    نقل قول نوشته اصلی توسط feredy2011 نمایش پست ها
    درست شد مهندس ترتیب تو بافر رو اشتباه نوشتیم. buf[0] == r ما از ته نوشتیم ...
    خیلی خیلی ممنون بابت کمک
    اها دقت نکردم منم
    موفق باشید
    لایک کردن

  8. #18
    Member
    تاریخ عضویت
    Jan 2016
    نوشته ها
    32
    سلام من میخوام فرستنده رو همزمان با شیلد VS1053 هم استفاده کنم اما وقتی مقدار vw_setup(4000);// speed of data transfer Kbps را وارد میکنم دیگر شید پخش صوت کار نکمیکند تا قبل از این خط درست است لطفا راهنمایی کنید

  9. #19
    Junior Member
    تاریخ عضویت
    Dec 2016
    نوشته ها
    1
    دوستان سلام نمیدونم جای درستی دارم مطرح می کنم یا نه ولی یکی سوال داشتم که ممنون میشم راهنماییم کنید
    من خوام یکی چیزی بهم معرفی کنید که تقریبا مثل rfid باشه
    بطور مثال وقتی تگ rfid که من معرفی کردم توی محدوده 1.5تا2 متری گیرنده بودش چراغ هارو روشن کنه یا دستور انجام چندتا کار رو بده.
    حالا شما چی پیشنهاد میدید؟
    که هم خیلی کوچیک باشه مثلا به اندازه ی یک جاسویچی
    و هم کار باهاش راحت باشه.

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

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

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

SEO by vBSEO