ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.





کاربران برچسب زده شده

صفحه 1 از 2 12 آخرین
نمایش نتایج: از 1 به 10 از 11
  1. #1
    2016/02/05
    24
    0

    توضیح در مورد توابع nrf در lpc1768

    با سلام
    خدمت دوستان و اساتید محترم
    لطفا کسانی که اطلاع دارند ، در مورد توابع ماژول nrf برد آموزشی شرکت توضیح دهید، اینکه تابع REC و SEND چگونه عمل می کنند و بافر آن چگونه است؟
    با تشکر

    پروژه برد آموزشی lpc1768 شرکت

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

  2. #2
    2016/06/21
    298
    86

    پاسخ : توضیح در مورد توابع nrf در lpc1768

    سلام.
    1= با دستور ()Init_24L01 و ()init_io ماژول nrf آماده به کار میشه
    2=با دستور (Set_RF_RX_Mode(4به ما ژول علام می کنیم که ماژول حداکثر 4 بایت می تونه دریافت کنه
    3= با دستور(send(buff,4ماژول حداکثر 4 بایت از بافر ارسال می کنه.
    4-با دستور() REC میکرو به انداز ه 4 بایت (باتوجه به تنظیم در تابع Set_RF_RX_Mode) در متغییر[Buff[0 تا [ Buff[3 قرار می ده این متغییر در فایل کتابخانهnrf استفاده شده و برای استفاده از آن باید [extern uchar Buff[5(در خط 30 در برنامه گیرنده) در برنامه اصلی بنویسیم یعنی متغییر در برنامه اصلی استفاده شده برابر میشه با متغییر که در کتابخانه nrf استفاده شده

  3. #3
    2016/02/05
    24
    0

    پاسخ : توضیح در مورد توابع nrf در lpc1768

    نقل قول نوشته اصلی توسط MM320

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    سلام.
    1= با دستور ()Init_24L01 و ()init_io ماژول nrf آماده به کار میشه
    2=با دستور (Set_RF_RX_Mode(4به ما ژول علام می کنیم که ماژول حداکثر 4 بایت می تونه دریافت کنه
    3= با دستور(send(buff,4ماژول حداکثر 4 بایت از بافر ارسال می کنه.
    4-با دستور() REC میکرو به انداز ه 4 بایت (باتوجه به تنظیم در تابع Set_RF_RX_Mode) در متغییر[Buff[0 تا [ Buff[3 قرار می ده این متغییر در فایل کتابخانهnrf استفاده شده و برای استفاده از آن باید [extern uchar Buff[5(در خط 30 در برنامه گیرنده) در برنامه اصلی بنویسیم یعنی متغییر در برنامه اصلی استفاده شده برابر میشه با متغییر که در کتابخانه nrf استفاده شده

    با تشکر از پاسختان
    اما برای اینکه یک برد هم گیرنده باشد و هم فرستنده، تنظیم خاصی نسبت به هر حالت ندارد؟ یعنی فقط توابع rec و send را استفاده کنیم،یک گیرنده ارسال هم می تواند بکند؟
  4. #4
    2016/06/21
    298
    86

    پاسخ : توضیح در مورد توابع nrf در lpc1768

    فکر نکنم دستور دیگه بخواد البته من خودم برد ورژن سی رو دارم همچین کاری انجام دادم(هم زمان ارسال و دریافت )
    البته این کتابخانه شما تغییراتی داشته نسبت به فایل های که من دارم، شما با همین دستورات کار رو انجام بده اگر نشد بگید تا فایل پروژه ام براتون بزارم.
  5. #5
    2016/02/05
    24
    0

    پاسخ : توضیح در مورد توابع nrf در lpc1768

    نقل قول نوشته اصلی توسط MM320

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    فکر نکنم دستور دیگه بخواد البته من خودم برد ورژن سی رو دارم همچین کاری انجام دادم(هم زمان ارسال و دریافت )
    البته این کتابخانه شما تغییراتی داشته نسبت به فایل های که من دارم، شما با همین دستورات کار رو انجام بده اگر نشد بگید تا فایل پروژه ام براتون بزارم.
    با تشکر
    اما هنگامی که ارسال انجام می شود دیگر دریافت صورت نمی گیرد.
  6. #6
    2016/06/21
    298
    86

    پاسخ : توضیح در مورد توابع nrf در lpc1768

    سلام .
    می تونی از برنامه زیر استفاده کنی
    کد:
    #include "LPC17xx.h"
    #include "24L01.h"
    
    
    #include <lpc17xx_gpio.h>
    #include "lpc17xx_rit.h"
    
    volatile uint32_t msTicks;                            /* counts 1ms timeTicks */
    extern uchar Buff[5];//1..32 byte
    uchar send_[5]={0x11,0x22,0x33,0x44,0x55};
    uchar n;
    long long c,d_time;
    uchar a;
    /*----------------------------------------------------------------------------
      SysTick_Handler
     *----------------------------------------------------------------------------*/
    void SysTick_Handler(void) {
      msTicks++;                        /* increment counter necessary in Delay() */
    }
    
    void Delay()
    {
        int i=200000;
        while(i--);
    }
    
    
    /*----------------------------------------------------------------------------
      MAIN function
     *----------------------------------------------------------------------------*/
    int main (void) 
    {
        
      
      SystemInit();
    
    
      Init_24L01();
      init_io();
      Set_RF_RX_Mode(5);//1..32 byte 
    
        GPIO_SetDir(2,0xff,1);
        GPIO_ClearValue(2,0xff);    
    
      while (1){
        
    send_[0]=0;
    ///////MODE TX///////////////
    send(send_,5);
    ////////////////////////////
    
    
    ///////MODE RX/////////////
          Init_24L01();
          init_io();
        Set_RF_RX_Mode(5);
    
    for(c=0;c<130;c++)
    {
            
            REC();
            
    GPIO_ClearValue(2,0xff);
    GPIO_SetValue(2,Buff[3]);
    
    }
    //////////////////////////    
    
        
                
        }                        
    }
    ویرایش توسط MM320 : 2016/09/14 در ساعت 23:01
  7. #7
    2016/02/05
    24
    0

    پاسخ : توضیح در مورد توابع nrf در lpc1768

    نقل قول نوشته اصلی توسط MM320

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    سلام .
    می تونی از برنامه زیر استفاده کنی
    کد:
    #include "LPC17xx.h"
    #include "24L01.h"
    
    
    #include <lpc17xx_gpio.h>
    #include "lpc17xx_rit.h"
    
    volatile uint32_t msTicks;                            /* counts 1ms timeTicks */
    extern uchar Buff[5];//1..32 byte
    uchar send_[5]={0x11,0x22,0x33,0x44,0x55};
    uchar n;
    long long c,d_time;
    uchar a;
    /*----------------------------------------------------------------------------
      SysTick_Handler
     *----------------------------------------------------------------------------*/
    void SysTick_Handler(void) {
      msTicks++;                        /* increment counter necessary in Delay() */
    }
    
    void Delay()
    {
        int i=200000;
        while(i--);
    }
    
    
    /*----------------------------------------------------------------------------
      MAIN function
     *----------------------------------------------------------------------------*/
    int main (void) 
    {
        
      
      SystemInit();
    
    
      Init_24L01();
      init_io();
      Set_RF_RX_Mode(5);//1..32 byte 
    
        GPIO_SetDir(2,0xff,1);
        GPIO_ClearValue(2,0xff);    
    
      while (1){
        
    send_[0]=0;
    ///////MODE TX///////////////
    send(send_,5);
    ////////////////////////////
    
    
    ///////MODE RX/////////////
          Init_24L01();
          init_io();
        Set_RF_RX_Mode(5);
    
    for(c=0;c<130;c++)
    {
            
            REC();
            
    GPIO_ClearValue(2,0xff);
    GPIO_SetValue(2,Buff[3]);
    
    }
    //////////////////////////    
    
        
                
        }                        
    }
    با تشکر
    بنده با کد های زیر سعی کردم هر دو کاربرد را داشته باشم، اما متاسفانه انجام نمی شود:
    برد A:
    #include "LPC17xx.h"
    #include "24L01.h"
    #include "uart.h"

    volatile uint32_t msTicks; /* counts 1ms timeTicks */
    /*----------------------------------------------------------------------------
    SysTick_Handler
    *----------------------------------------------------------------------------*/
    void SysTick_Handler(void) {
    msTicks++; /* increment counter necessary in Delay() */
    }

    void delay(){
    int i=50000000;
    while(i--);
    }
    /*----------------------------------------------------------------------------
    MAIN function
    *----------------------------------------------------------------------------*/
    int main (void)
    {
    int i=0;
    uchar Buff[5]={'1','$','.','@','4'};
    uchar buff[5]={'L','P','C','.'};
    SystemInit();



    printf("Init NRF24L01P\n");
    Init_24L01();
    init_io();

    UART0_Init();

    printf("Set_RF_RX_Mode\n");
    Set_RF_RX_Mode(4);

    for(i=0;i<=120;i++)
    {
    printf("Send Data\n");
    send(Buff,4);
    delay();

    }

    Init_24L01();
    init_io();
    Set_RF_RX_Mode(5);

    while (1)
    {
    REC();
    delay();
    }
    }


    برد B:
    #include "LPC17xx.h"
    #include "24L01.h"
    #include "uart.h"

    volatile uint32_t msTicks; /* counts 1ms timeTicks */
    extern uchar Buff[5];
    /*----------------------------------------------------------------------------
    SysTick_Handler
    *----------------------------------------------------------------------------*/
    void SysTick_Handler(void) {
    msTicks++; /* increment counter necessary in Delay() */
    }

    void Delay()
    {
    int i=2000000;
    while(i--);
    }
    /*----------------------------------------------------------------------------
    MAIN function
    *----------------------------------------------------------------------------*/
    int main (void)
    {
    int i,led=0;
    uchar AAA[5]={'a','b','c','d','e'};
    SystemInit();
    LPC_GPIO0->FIODIR |= 1<<20 ;

    UART0_Init();

    printf("Init NRF24L01P\n");
    Init_24L01();
    init_io();

    printf("Set_RF_RX_Mode\n");
    Set_RF_RX_Mode(4);



    while (1)
    {
    send(AAA,4);
    Delay();

    }
    }
  8. #8
    2016/06/21
    298
    86

    پاسخ : توضیح در مورد توابع nrf در lpc1768

    نقل قول نوشته اصلی توسط a.valinezhad

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    با تشکر
    بنده با کد های زیر سعی کردم هر دو کاربرد را داشته باشم، اما متاسفانه انجام نمی شود:
    برد A:
    #include "LPC17xx.h"
    #include "24L01.h"
    #include "uart.h"

    volatile uint32_t msTicks; /* counts 1ms timeTicks */
    /*----------------------------------------------------------------------------
    SysTick_Handler
    *----------------------------------------------------------------------------*/
    void SysTick_Handler(void) {
    msTicks++; /* increment counter necessary in Delay() */
    }

    void delay(){
    int i=50000000;
    while(i--);
    }
    /*----------------------------------------------------------------------------
    MAIN function
    *----------------------------------------------------------------------------*/
    int main (void)
    {
    int i=0;
    uchar Buff[5]={'1','$','.','@','4'};
    uchar buff[5]={'L','P','C','.'};
    SystemInit();



    printf("Init NRF24L01P\n");
    Init_24L01();
    init_io();

    UART0_Init();

    printf("Set_RF_RX_Mode\n");
    Set_RF_RX_Mode(4);

    for(i=0;i<=120;i++)
    {
    printf("Send Data\n");
    send(Buff,4);
    delay();

    }

    Init_24L01();
    init_io();
    Set_RF_RX_Mode(5);

    while (1)
    {
    REC();
    delay();
    }
    }


    [/CPP]
    سلام
    شما در مثال برد A در حلقه بی نهایت فقط دریافت انجام دادید و چیزی نمایش ندادید اگه اشتباه گفتم لصفا بگید؟
  9. #9
    2016/02/05
    24
    0

    پاسخ : توضیح در مورد توابع nrf در lpc1768

    در داخل تابع rec ، دستوراتی برای ارسال نتیجه روی uart0 وجود دارد، به صورت زیر:
    uchar Buff[5];
    void REC(void)
    {
    CurrentData=SPI_Read(STATUS); // read register STATUS's value

    if(CurrentData == 0x40) // if receive data ready (RX_DR) interrupt
    {
    CurrentData = 0; // clear flag
    SPI_Read_Buf(RD_RX_PLOAD,Buff,4); // read receive payload from RX_FIFO buffer

    printf("Data RX:");
    Buff[4] = 0;
    printf("%s\n", Buff);
    Delay1ms(0x1000);

    SPI_RW_Reg(WRITE_REGL+STATUS,0X70);
    SPI_RW_Reg(FLUSH_RX,0);

    send(Buff,1);
    Set_RF_RX_Mode(4);
    }
    }
  10. #10
    2016/06/21
    298
    86

    پاسخ : توضیح در مورد توابع nrf در lpc1768

    نقل قول نوشته اصلی توسط a.valinezhad

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    در داخل تابع rec ، دستوراتی برای ارسال نتیجه روی uart0 وجود دارد، به صورت زیر:
    uchar Buff[5];
    void REC(void)
    {
    CurrentData=SPI_Read(STATUS); // read register STATUS's value

    if(CurrentData == 0x40) // if receive data ready (RX_DR) interrupt
    {
    CurrentData = 0; // clear flag
    SPI_Read_Buf(RD_RX_PLOAD,Buff,4); // read receive payload from RX_FIFO buffer

    printf("Data RX:");
    Buff[4] = 0;
    printf("%s\n", Buff);
    Delay1ms(0x1000);

    SPI_RW_Reg(WRITE_REGL+STATUS,0X70);
    SPI_RW_Reg(FLUSH_RX,0);

    send(Buff,1);
    Set_RF_RX_Mode(4);
    }
    }
    دستور خط 20 و 21(تابع REC) خودتون اضاف کردید ?
صفحه 1 از 2 12 آخرین
نمایش نتایج: از 1 به 10 از 11

موضوعات مشابه

  1. پاسخ: 1
    آخرين نوشته: 2016/09/05, 09:29
  2. توضیح در مورد pwm
    توسط lepkin در انجمن میکروکنترلرهای AVR
    پاسخ: 9
    آخرين نوشته: 2012/10/22, 06:32
  3. کمک در مورد توابع چند ضابطه ای
    توسط ma-bah در انجمن Matlab
    پاسخ: 4
    آخرين نوشته: 2011/10/12, 02:21
  4. یکی در مورد ECG یکم توضیح بده
    توسط sara_tele88 در انجمن مهندسی پزشکی - بيو الكتريك
    پاسخ: 1
    آخرين نوشته: 2011/05/02, 13:18
  5. توضیح در مورد RFC
    توسط mahyarelc در انجمن مباحث دیگر علم الکترونیک
    پاسخ: 0
    آخرين نوشته: 2008/06/11, 13:20

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

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

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