اطلاعیه

Collapse
No announcement yet.

دیکود کردن گیرنده EV1527 با استفاده از input capture avr

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

    دیکود کردن گیرنده EV1527 با استفاده از input capture avr

    با سلام به همه دوست داران میکرو
    من مدتی هست که دنبال راه اندازی گیرنده های لرن کد ask هستم .
    توی نت نمونه کدهای مختلفی رو پیدا کردم که با تایمر و اینتراپت خارجی این ماژول ها رو راه اندازی کردن .
    ولی من می خوام با واحد کپچر میکرو این کا رو انجام بدم .
    لطفا راهنمایی کنید .
    IN GOD WE TRUST

    #2
    پاسخ : دیکود کردن گیرنده EV1527 با استفاده از input capture avr

    درود دوست عزیز
    یه سر به این تاپیک بزنید.

    موفق باشید
    طوری زندگی کن انگار امروز اخرین روز زندگیته!!!
    امروز رو کامل زندگی کن...
    (یه روز یعنی هیچوقت!)

    دیدگاه


      #3
      پاسخ : دیکود کردن گیرنده EV1527 با استفاده از input capture avr

      سلام
      ابتدا اون تاپیکی که دوستمون معرفی کردن رو نگاه کنید. بعد از اون مشخص کنید که خروجی چه تراشه ای رو می خواین دیکد کنید و در نهایت با خوندن دیتاشیت و تایمینگ های پالس های دیتا می تونید با این قابلیت میکرو عمل دیکدینگ رو انجام بدین.
      چرا ناراحتی پاتریک!
      + امروز ی بچه دیدم سرچهارراه گل میفروخت
      - از دیدنش ناراحت شدی؟
      + نه
      پس چی ناراحتت کرده
      + اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
      ------------------------------------------------------------------------------------------------------
      تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
      ------------------------------------------------------------------------------------------------------
      محصولات

      دیدگاه


        #4
        پاسخ : دیکود کردن گیرنده EV1527 با استفاده از input capture avr

        نوشته اصلی توسط سوران آراسته نمایش پست ها
        سلام
        ابتدا اون تاپیکی که دوستمون معرفی کردن رو نگاه کنید. بعد از اون مشخص کنید که خروجی چه تراشه ای رو می خواین دیکد کنید و در نهایت با خوندن دیتاشیت و تایمینگ های پالس های دیتا می تونید با این قابلیت میکرو عمل دیکدینگ رو انجام بدین.
        خیلی ممنون از پاسختون
        من می خوام خروجی ماژول گیرنده های ASK رو دیکد کنم . دیتای ارسالی از ریموتی با ای سی EV1527 هست . فرکانس کاری 315MHZ. البته من تاپیک http://www.eca.ir/forums/thread24768-8.html نگاه کردم و برنامه آقای اسدی رو هم بررسی کردم ولی می خوام کدش و خودم بزنم و از الگوریتمی که آقای اسدی گفتن استفاده کنم . الگوریتم آقای اسدی :

        یه الگریتمی میگم البته برنامه این برد با این الگریتم نیست ولی این یکی بهتر و یاده تره و نیازی به اینتراپت خارجی نداره و محدودیتی در اسیلاتور وفریکانس فرستنده نداره

        یکی از تایمر ها رو با پریود 100 کیلو هرتز تنظیم میکنید و داخل اینتراپتش پین ورودی رو چک میکنید
        1- یک متغیر رو اگر ورودی صفر باشه اضافه میکنید تا ورودی یک بشه در غیر اینصورت
        2- یک متغیر دیگه رو اگر ورودی یک باشه اضافه میکنید تا ورودی صفر بشه
        3- اگر متغیر اول تقیبم بر متغیر دوم بزرگتر از 5 باشه یعنی متغیر اول بزگتر از 5 برابر متغیر دوم باشه (بیت استارت هست)مقدار ریموت بدست اومده رو در یک متغیر دیگه کپی میکنید همه چیز رو صفر میکنید در غیر این صورت
        4 - اگر متغیر دوم بزرگتر از متغیر اول باشه (بیت یک هست) بیت متناظرشو در متغییر ریموت یک میکنید و در غیر این صورت (بیت صفر هست)
        اینم خروجی ای سی:



        شکل ظاهری ماژول هم اینه:



        IN GOD WE TRUST

        دیدگاه


          #5
          پاسخ : دیکود کردن گیرنده EV1527 با استفاده از input capture avr

          خب این الگوریتم یکی از راه هاست و تا زمانی که شروع به نوشتن نکنید نمی دونید چی به چیه. راه دیگه زمانسنجی بین پالس ها و دقت به اون هست.
          چرا ناراحتی پاتریک!
          + امروز ی بچه دیدم سرچهارراه گل میفروخت
          - از دیدنش ناراحت شدی؟
          + نه
          پس چی ناراحتت کرده
          + اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
          ------------------------------------------------------------------------------------------------------
          تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
          ------------------------------------------------------------------------------------------------------
          محصولات

          دیدگاه


            #6
            پاسخ : دیکود کردن گیرنده EV1527 با استفاده از input capture avr

            نوشته اصلی توسط سوران آراسته نمایش پست ها
            خب این الگوریتم یکی از راه هاست و تا زمانی که شروع به نوشتن نکنید نمی دونید چی به چیه. راه دیگه زمانسنجی بین پالس ها و دقت به اون هست.
            آقای اراسته ممنون از پاسختون
            من حلا این کد و نوشتم برای تست
            ولی به دلیل اینکه خروجی ماژوا نویز داره بدون فشار دادن کلیدهای ریموت ورودی میکرو یا همان PORTB0 "یک" میشه .
            البته مقاومت PULL DOWN خارجی رو هم روی پورت گذاشتم.
            کد:
            [FONT=Yekan]#define  F_CPU 8000000UL[/FONT]
            
            #include <avr/io.h>
            #include <avr/interrupt.h>
            #include <util/delay.h>
            #define WORD(msb, lsb)  (((msb) << 8) | (lsb))
            #define SETBIT(ADDRESS,BIT) (ADDRESS |= (1<<BIT))
            #define CLEARBIT(ADDRESS,BIT) (ADDRESS &= ~(1<<BIT))
            #define FLIPBIT(ADDRESS,BIT) (ADDRESS ^= (1<<BIT))
            
            
             uint8_t preamble_check1 = 0;
            uint16_t preamble_check0 = 0;
            uint16_t remote_key = 0;
            
            
            int correct_code = 0;
            int preamble_ok = 0;
            int main()
            {
            
            
                
                
                DDRB &=!(1<<DDB0);  //input RF
                PORTB &=!(1<<PORTB0);  // pull down
                
                
            TCNT0 = 250;
             /* Timer clock = I/O clock / 8  */
             TCCR0 = (1<<CS01);
             /* Clear ICF1. Clear pending interrupts */
             TIFR   = 1<<TOV0;
             
             /* Enable overflow interrupt*/
             TIMSK |= (1<< TOIE0);
             
             
             
            
            
            sei();
                while (1)
                {
            
            
                        
                }
            }
                
                
            
            
                
            
            
            //100KHZ
            ISR(TIMER0_OVF_vect)
            {  
                TCNT0 = 253;
                //PORTB ^=1<<PORTB0;
                if(PINB & 0X01){
                    preamble_check1++;
                }
            
            
            
            
                
            [FONT=Yekan]}[/FONT]
            جدیدترین ویرایش توسط hfhossein; ۱۱:۵۹ ۱۳۹۶/۰۴/۲۹.
            IN GOD WE TRUST

            دیدگاه


              #7
              پاسخ : دیکود کردن گیرنده EV1527 با استفاده از input capture avr

              لاجیک انالیزر داری؟
              یه نمونه ی ساده 15 یا 16 تومنی بگیر تا قشنگ یه بار دیتا رو ببینی و بتونی دیکد کنی. اگر نداری صبر کن برگردم اوکی می کنم برات. تا شنبه متاسفانه خونه نیستم.
              چرا ناراحتی پاتریک!
              + امروز ی بچه دیدم سرچهارراه گل میفروخت
              - از دیدنش ناراحت شدی؟
              + نه
              پس چی ناراحتت کرده
              + اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
              ------------------------------------------------------------------------------------------------------
              تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
              ------------------------------------------------------------------------------------------------------
              محصولات

              دیدگاه


                #8
                پاسخ : دیکود کردن گیرنده EV1527 با استفاده از input capture avr

                خیلی ممنون و تشکر از پاسخ سریعتون
                من با اسیلوسکوپ دیجیتال خروجی شو پیدا کردم . ولی مشکلم اینه که کدشو نمی دونم چه طور باید بنویسم . اینم خروجی ماژول . فک کنم خروجی درست باشه !
                IN GOD WE TRUST

                دیدگاه


                  #9
                  پاسخ : دیکود کردن گیرنده EV1527 با استفاده از input capture avr

                  EV1527 چه طوری کد تولید می کنه؟ منظوزم اینه که چه طور دو تا ریموت مختلف با یک ای سی و بدون هیچ پروگرمی کد ها ی مختلف تولید می کنه؟

                  دیدگاه

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