اطلاعیه

Collapse
No announcement yet.

راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو)

Collapse
این موضوع برجسته شده است.
X
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    پاسخ : راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو)

    سلام
    من میخوام در گیرنده به جای اینکه اطلاعات روی LCD نمایش داده بشه، از طریق UART به کامپیوتر منتقل بشه. از کد زیر استفاده کردم ولی نتیجهآ‌آ‌ای که میگیرم تعداد 12 کاراکتر "M" در کامپیوتر هست. ولی انتظارم این بود که پشت سر هم کاراکتر M از گیرنده به کامپیوتر ارسال بشه.

    کد فرستنده:
    کد:
    #include <mega8.h>
    #include <delay.h>
    #include <nrf24l01p.h>
    // Declare your global variables here
    
    void main(void)
    {
    PORTB=0x00;
    DDRB=0x00;
    PORTC=0x00;
    DDRC=0x00;
    PORTD=0x00;
    DDRD=0x00;
    
    TCCR0=0x00;
    TCNT0=0x00;
    
    TCCR1A=0x00;
    TCCR1B=0x00;
    TCNT1H=0x00;
    TCNT1L=0x00;
    ICR1H=0x00;
    ICR1L=0x00;
    OCR1AH=0x00;
    OCR1AL=0x00;
    OCR1BH=0x00;
    OCR1BL=0x00;
    
    ASSR=0x00;
    TCCR2=0x00;
    TCNT2=0x00;
    OCR2=0x00;
    MCUCR=0x00;
    TIMSK=0x00;
    ACSR=0x80;
    SFIOR=0x00;
    
    nrf_config(0);
    while (1)
       {
       if(nrf_state!=0)
        {
        sent_actived=1;
        nrf_state=0;
        }
        payload[0]=1;
        payload[1]='M';
        sent();
       }
    }
    کد گیرنده:
    کد:
    #include <delay.h>
    #include <nrf24l01p.h>
    #include <stdio.h>
    
    
    // Declare your global variables here
    
    void main(void)
    {
    unsigned char c;
    
    PORTB=0x00;
    DDRB=0x00;
    
    PORTC=0x00;
    DDRC=0x00;
    
    PORTD=0x00;
    DDRD=0x00;
    
    TCCR0=0x00;
    TCNT0=0x00;
    
    TCCR1A=0x00;
    TCCR1B=0x00;
    TCNT1H=0x00;
    TCNT1L=0x00;
    ICR1H=0x00;
    ICR1L=0x00;
    OCR1AH=0x00;
    OCR1AL=0x00;
    OCR1BH=0x00;
    OCR1BL=0x00;
    
    ASSR=0x00;
    TCCR2=0x00;
    TCNT2=0x00;
    OCR2=0x00;
    
    MCUCR=0x00;
    
    TIMSK=0x00;
    
    UCSRA=0x00;
    UCSRB=0x18;
    UCSRC=0x86;
    UBRRH=0x00;
    UBRRL=0x33;
    
    ACSR=0x80;
    SFIOR=0x00;
    
    nrf_config(1);
    
    while (1)
       {
       if(nrf_state==1)
        {
        c=payload[1]; 
        nrf_state=0;
        } 
       putchar(c);
       }
    }

    دیدگاه


      پاسخ : راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو)

      همی
      نوشته اصلی توسط kamranmmf
      سلام
      آقا این فایل پی دی اف منظورتون کدومه؟
      من هرچیو میزنم یه لینک دیگه باز میشه
      همینی که نوشته اگر بخونیم کاملا با عملکرد nrf آشنا میشیم
      منظورش همون دیتا شیته؟

      دیدگاه


        پاسخ : راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو)

        نوشته اصلی توسط RubeuS
        ... در دست تغییر...
        برای دریافت داکیومنت قدیمی در تاپیک پست بزارید ، تا توسط خودم یا دوستان قرار داده شود،
        سلام
        لطفا داکیومنت قدیمی رو دوباره قرار بدید
        یا اگه ممکنه برای من بفرستید
        hadi_farahani69@yahoo.com

        دیدگاه


          پاسخ : راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو)

          سلام دوستان با ماژول فوق میخوام بین دو میکرو ارتباط برقرار کنم در حد روشن خاموش کردن یک چراغ ولی موفق نشدم کد برنامه ها رو میذارم اگه ایراد داره لطفا بهم بگید ممنون میشم البته کدها پورت a را پشت سر هم روشن میکنه. :cry: :read: :cry:
          گیرنده:
          کد:
          //*****************************************************
          
          Project : nRF24L01+
          Version : 
          Date  : 9/25/2013
          Author : Ali Imanifar
          Company : ECA
          Comments: 
          
          
          Chip type        : ATmega32
          Program type      : Application
          AVR Core Clock frequency: 8.000000 MHz
          Memory model      : Small
          External RAM size    : 0
          Data Stack size     : 512
          *****************************************************/
          
          #include <mega32.h>
          #include <nRF24L01+.h>
          #include <stdio.h>
          #include <delay.h>
          // Alphanumeric LCD functions
          
          
          
          
          
          // Declare your global variables here
          char data1;
          
          void main(void)
          {
          // Declare your local variables here
          
          
          DDRA=0xff;
          PORTA=0x00;
          
          
          // Alphanumeric LCD initialization
          // Connections are specified in the
          // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
          // RS - PORTA Bit 0
          // RD - PORTA Bit 1
          // EN - PORTA Bit 2
          // D4 - PORTA Bit 4
          // D5 - PORTA Bit 5
          // D6 - PORTA Bit 6
          // D7 - PORTA Bit 7
          // Characters/line: 16
          
          delay_ms(2000);
          
          
          nRF_Config(1);
          
          
          
          
          while (1)
             {
             // Place your code here
             if(State == 1)
              { 
              
              data1 = payload[1];
               delay_ms(500);  
               PORTA=data1;
              State = 0;
              }
             }
          }
          فرستنده:
          کد:
          //*****************************************************
          
          Project : nRF24L01+
          Version : 
          Date  : 9/25/2013
          Author : Ali Imanifar
          Company : ECA
          Comments: 
          
          
          Chip type        : ATmega32
          Program type      : Application
          AVR Core Clock frequency: 8.000000 MHz
          Memory model      : Small
          External RAM size    : 0
          Data Stack size     : 512
          *****************************************************/
          
          #include <mega32.h>
          #include <stdio.h>
          #include <delay.h>
          #include <nRF24L01+.h>
          // Alphanumeric LCD functions
          
          
          
          
          
          
          
          // Declare your global variables here
          char data1;
          
          void main(void)
          {
          // Declare your local variables here
          
          
          
          
          
          // Alphanumeric LCD initialization
          // Connections are specified in the
          // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
          // RS - PORTA Bit 0
          // RD - PORTA Bit 1
          // EN - PORTA Bit 2
          // D4 - PORTA Bit 4
          // D5 - PORTA Bit 5
          // D6 - PORTA Bit 6
          // D7 - PORTA Bit 7
          // Characters/line: 16
          
          
          delay_ms(2000);
          
          
          nRF_Config(0);
          
          
          
          
          while (1)
             {
             // Place your code here
             
             data1++;
             Send_Data(1 , &data1);
             
             
             delay_ms(1000);
             }
          }

          دیدگاه


            پاسخ : راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو)

            سلام ، این هم ورژن Atmel Studio و GCC
            برنامه هم به این صورت هست که فرستنده مقدار payload[1] رو هر ثانیه یکی افزایش میده و ارسال میکنه
            در گیرنده هم مقدار دریافت شده را روی PORTA نمایش میده
            https://onedrive.live.com/redir?resi...int=file%2crar

            دیدگاه


              پاسخ : راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو)

              نوشته اصلی توسط RubeuS
              ... در دست تغییر...
              برای دریافت داکیومنت قدیمی در تاپیک پست بزارید ، تا توسط خودم یا دوستان قرار داده شود،
              سلام برادر عزیز
              دستت درد نکنه که هدر برنامه کامل کدویژن و قرار دادی, ولی ظاهرا برای به روز رسانی فایلشو برداشتین, لطفا اگه امکانش هست همون فایل قدیمیه برای من بفرستید, بدجوری لازم دارم. دست گلتم درد نکنه

              اضافه شده در تاریخ :
              داخب فروشگاه چند نمونه از این ماژول وجود داره ( تقویت شده ، آنتن دار, بدون آنتن ... )
              برنامه راه اندازی اینا باهم فرق میکنه یا با استفاده از همین برنامه موجود امکان راه اندازی همشون هست؟

              اضافه شده در تاریخ :
              نوشته اصلی توسط RubeuS
              با هردو کار کردم
              بدون انتن حدودا 30 متر (برد سبزا)
              با آنتن برد کامل نگرفتم ولی تا 250 -300 متر راحت جواب داد ،بیشترم جواب میداد ولی دورتر نشدم. ولی فروشنده می گفت تا 1 کیلومتر جواب میده.
              البته همه اینا در فضایی بوده که مانع و دیوار وجود داشته که مسلما دید به دید بیشترم میشه.

              در رابطه با سرعت قابل تنظیم روی 3 حالت 256Kbps و 1Mbps و 2Mbps هست که من رو 1 مگ تنظیم کردم چون نیاز به سرعت بالا نداشتم. سرعت انتقال داده مثل برد نیست که به فاکتورهای مختلفی بستگی داشته باشه(تو هیچ دیتاشیتی برا برد مقداری نمینویسن و اگرم بنویسن مقدار قدرت خروجیه ولی برا سرعت مقدار ذکر میشه که میشه به اون اطمینان کرد)
              سلام دوست عزیز
              لطفا برنامه کدویژن قدیمیتونو واسه را اندازی ماژول برام بفرستید, خیلی پیگیری کردم کسی جواب نداد

              دیدگاه


                پاسخ : راه اندازی ماژول nrf24l01p ( سی c)

                نوشته اصلی توسط aslan modir
                سلام دوست عزیز
                لطفا برنامه کدویژن قدیمیتونو واسه را اندازی ماژول برام بفرستید, خیلی پیگیری کردم کسی جواب نداد
                این لینک برنامه:
                http://eca.ir/sharing/uploads/14005099951.rar

                از اینجاس:
                http://eshop.eca.ir/%D9%85%D8%A7%DA%...C.html#idTab27

                اضافه شده در تاریخ :
                نوشته اصلی توسط aslan modir
                داخب فروشگاه چند نمونه از این ماژول وجود داره ( تقویت شده ، آنتن دار, بدون آنتن ... )
                برنامه راه اندازی اینا باهم فرق میکنه یا با استفاده از همین برنامه موجود امکان راه اندازی همشون هست؟
                برنامه همه مثل هم هست. از لحاظ برنامه فرقی نداره

                دیدگاه


                  پاسخ : راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو)

                  نوشته اصلی توسط hamedf_hamedf
                  برنامه همه مثل هم هست. از لحاظ برنامه فرقی نداره
                  ممنون از لینک و راهنماییتون
                  دوتا سوال دیگه داشتم
                  1-برای این برنامه ای که نوشته شده نیازی به تغییر فیوزبیتا هست؟
                  2- اینکه با دانگر این ماژول کار کردین؟ ( که حالت USB Flash داره و به عنوان گیرنده میتونه به کامپیوتر متصل بشه ) چون درایورشو که میخوام اجرا کنم تمام صفش پر میشه از نوشته های نامفهوم چینی :eek: و من اصلا نمیتونم باهاش کار کنم !!
                  اگه جایی در این مورد بحث شده لینکشو قرار بدین لطفا.
                  خیلی ممنون و متشکر

                  دیدگاه


                    پاسخ : راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو)

                    نوشته اصلی توسط aslan modir
                    ممنون از لینک و راهنماییتون
                    دوتا سوال دیگه داشتم
                    1-برای این برنامه ای که نوشته شده نیازی به تغییر فیوزبیتا هست؟
                    2- اینکه با دانگر این ماژول کار کردین؟ ( که حالت USB Flash داره و به عنوان گیرنده میتونه به کامپیوتر متصل بشه ) چون درایورشو که میخوام اجرا کنم تمام صفش پر میشه از نوشته های نامفهوم چینی :eek: و من اصلا نمیتونم باهاش کار کنم !!
                    اگه جایی در این مورد بحث شده لینکشو قرار بدین لطفا.
                    خیلی ممنون و متشکر
                    1- اون برنامه فک کنم برای atmega32 بوده باشه یا atmega8. حالا فرقی نمیکنه، اگه میکروت عوض بشه فقط باید تنظیمات فیوزبیت مخصوص spi را عوض کنی که اون هم اگه نیاز باشه. وگرنه ببین برای چه میکرویی هست روی همون اول تست کن.
                    2- برای مدل usb دارش واقعیت من کار نکردم. و طبق صحبت بقیه یکم گیر داره. اما ما خودمون برای ماژولها یه مبدل سریال زدیم که با usb به کامپیوتر وصل میشه. و شما به راحتی میتونید مثل یه پورت سریال از ماژولها استفاده کنید. اگه نیاز داشتین و اطالاعات بیشتر خواستین بهم pm بدین.

                    دیدگاه


                      پاسخ : راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسی&

                      باسلام.من همه ی بحث های این تاپیک رو خوندم.خیلی مفیدبود

                      دیدگاه


                        پاسخ : راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو)

                        لطفا اگه کسی تونسته بین ماژول این تاپیک و ماژول USB NRF24L01P ارتباط برقرارکنهاهنمایی کنه

                        دیدگاه


                          پاسخ : راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو)

                          نوشته اصلی توسط hamedf_hamedf
                          1- اون برنامه فک کنم برای atmega32 بوده باشه یا atmega8. حالا فرقی نمیکنه، اگه میکروت عوض بشه فقط باید تنظیمات فیوزبیت مخصوص spi را عوض کنی که اون هم اگه نیاز باشه. وگرنه ببین برای چه میکرویی هست روی همون اول تست کن.
                          2- برای مدل usb دارش واقعیت من کار نکردم. و طبق صحبت بقیه یکم گیر داره. اما ما خودمون برای ماژولها یه مبدل سریال زدیم که با usb به کامپیوتر وصل میشه. و شما به راحتی میتونید مثل یه پورت سریال از ماژولها استفاده کنید. اگه نیاز داشتین و اطالاعات بیشتر خواستین بهم pm بدین.
                          خیلی ممنون و سپاس گذارم از توضیحات کامل و جامع شما
                          اجازه بدین را اندازیش کنم, حتما مزاحتمون میشم :mrgreen:

                          دیدگاه


                            پاسخ : راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو)

                            سلام دوستان .راستش من این ماژول را راه انداختم و یک رگولاتور 3.3 هم گذاشتم .اما وقتی ماژولو وصل میکنم 4 ولت روی پایه هاش هست!!!!!!!!!!!!! :eek:
                            مشکل کار کجاست؟
                            مدارم هم کار نمیکنه.میشه یکی کمک کنه؟
                            با تشکر oo:

                            دیدگاه


                              پاسخ : راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو)

                              نوشته اصلی توسط hero.seller17
                              سلام دوستان .راستش من این ماژول را راه انداختم و یک رگولاتور 3.3 هم گذاشتم .اما وقتی ماژولو وصل میکنم 4 ولت روی پایه هاش هست!!!!!!!!!!!!! :eek:
                              مشکل کار کجاست؟
                              مدارم هم کار نمیکنه.میشه یکی کمک کنه؟
                              با تشکر oo:
                              یعنی تغذیه یدفعه میشه 4ولت؟ یا سیگنالهای ورودیش که از میکرو میگیری؟

                              دیدگاه


                                پاسخ : راه اندازی ماژول nrf24l01p برای codevision (ارتباط بیسیم بین دو میکرو)

                                وقتی ماژول روی برد نیست تغذیه همون 3.3 هست ولی وقتی ماژول را میبندم میشه 4 ولت .همون gnd و vcc! کلافه شدم از 2 روز پیش همش دستم بهشه.... مشکل از کجا میتونه باشه؟

                                دیدگاه

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