اطلاعیه

Collapse
No announcement yet.

ریموت کنترلر همه کاره

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

    ریموت کنترلر همه کاره

    میخوام کد های کنترل های مادون قرمز رو با گیرنده 3 پایه بگیرم و بعد همون رو با فرستنده بفرستم
    چجوری میشه؟
    یه نفر بهم گفت که فاصله زمانی high شدن و low شدن رو اندازه بگیرم و بعد با همون مشخصات بفرستم
    میشه راهنمایی کنین

    #2
    پاسخ : ریموت کنترلر همه کاره

    منظورم از مادون قرمز rc5 نیست ها!!!!!!!!
    گفتم اشتباه فکر نکنین

    دیدگاه


      #3
      پاسخ : ریموت کنترلر همه کاره

      کسی چیزی نمیدونه!
      من خودم نظرم اینه که تو وقفه Int با تایمر ،زمان بین پالس ها رو اندازه بگیریم و اونا رو ذخیره کنیم
      بعد همونارو با تایمر به صورت دستی(با دستور port) ایجاد کنیم.
      البته یه نفر هم گفته که خروجی این 3 پایه ها اینورت میشن که نفهمیدم یعنی چی

      دیدگاه


        #4
        پاسخ : ریموت کنترلر همه کاره

        منظورتون اینه که خودتون میخواین یه پروتکل بسازید؟ کلا تمام پروتکلها بر اساس چشمک زدن هستش. وقتی نور به گیرنده میرسه خروجیش صفر میشه.
        میونید دستوراتتون بر اساس عرض پالس باشه و یا اینکه براساس تعداد صفر و یک شدن و یا حتی فرکانس. البته اینا در صورتیه که فرستنده رو هم خودتون طراحی کنید.
        اگه منظورتون کنترل های آماده مثل کنترل تلویزیونه که میشه یکی از همون پروتکل های معروف مثل rc5 و...
        www.gam-co.blogsky.com

        دیدگاه


          #5
          پاسخ : ریموت کنترلر همه کاره

          دوست گرامی

          اگر قصد انتقال کنترل به جای دیگه ای را داشته باشید ...

          به این مدار Remote Extender گفته میشود

          http://www.aaroncake.net/circuits/IR_Remote_Extender_Circuit.asp

          http://www.cedarnet.org/smartware/Hardware/IR_Repeater/HobbyIRRepeat.png

          http://www.zen22142.zen.co.uk/Circuits/Interface/ir4a.gif
          پاره ای از رویکردهای دفاعی

          دیدگاه


            #6
            پاسخ : ریموت کنترلر همه کاره

            نه منظورم اصلا این نبود.
            اکثر کنترلهای قدیمی با rc5 کار می کردند مثل همین کنترل های قدیمی پارس
            اما جدیدا هر کدوم یه پروتوکل دیگه داره
            مثلا سامسونگ یکی سونی یکی و ...
            حالا اگه rc5 بود میومدیم با دستور getrc5 اون رو میگرفتیم بعدش هم ذخیره میکردیم
            و با زدن دکمه همون کد رو میفرستاد و دستور رو به دستگاه میداد.
            اما این جدیدا هر کدوم یه پروکل خاص داره که برای دریافت باید ویژگی هایی که اینا دارن رو ذخیره کنیم و بفرستیم
            ولی چجوری؟؟؟؟؟؟؟
            در ضمن اگه میشه یه عکسی چیزی از شکل پالسها و ویژگی هاشون بزارین شاید خودمون یه کاریش بکنیم

            دیدگاه


              #7
              پاسخ : ریموت کنترلر همه کاره

              کسی راجبه این موضوع چیزی نمی دونه؟
              کمک کنید تکمیلش کنیم اونی که من میگم خیلی دستگاه باحالیه ها.
              کنترل یه دستگاهی رو میگیری جلوش و دگکه هاش رو میزنی که بره تو حافظش.
              بعدش میشه یه کنترل واسه هر چی!!!

              دیدگاه


                #8
                پاسخ : ریموت کنترلر همه کاره

                سلام توی لینک زیر تقریبا همه الگوریتم ها رو توضیح داده:
                http://www.electronics-base.com/index.php/general-description/ir-remote-control/130-ultimate-guide-through-ir-remote-control

                اگه بخواید یه چیزی مشابه کد لرنینگ درست کنید و زمان فاصله سطوح hi , low رو ذخیره کنید مشکل حافظه پیدا میکنید. من این کارو کردم ولی نه برای همه دکمه های ریموت، بلکه فقط یکی یا دو تا از دکمه های ریموت. تمام اطلاعات رو باید درون eeprom بریزید که حافظه دائمی میکرو برای این کار محدوده و مجبور میشید حافظه جانبی استفاده کنید.
                اگه الگوریتم رو بلد باشد برای بخشی از رشته ای که دریافت میشه تعدادی صفر و یک ذخیره میشه ولی اگه بخواید یه گیرنده بسازید که با هر الگوریتمی کار کنه باید بجای زمان مدت هر کدوم از سطوح منطقی رو ذخیره کنید.

                دیدگاه


                  #9
                  پاسخ : ریموت کنترلر همه کاره

                  ممنون دوست عزیز. لینکی رو که گذاشتین به دقت مطالعه کردم. حالا اگه بخوایم این کد ها رو دریافت کنیم
                  بدون این که به الگوریتم توجهی کنیم چجوری میشه؟
                  مثلا واسه سونی 20 بیت نوشته بود یعنی باید 20 تا زمان داشته باشیم؟؟
                  واسه پیکر بندی تایمر چیکار کنیم بهتره؟(منظورم کریستال و تنظیمات تایمر)
                  برای ذخیره هم یه mmc میزاریم دیگه!

                  دیدگاه


                    #10
                    پاسخ : ریموت کنترلر همه کاره

                    دوستان کمک کنین این پروژه رو به اخر برسونیم.
                    ته تهش گیر کردم!!!!!

                    دیدگاه


                      #11
                      پاسخ : ریموت کنترلر همه کاره

                      نوشته اصلی توسط fghfgh
                      دوستان کمک کنین این پروژه رو به اخر برسونیم.
                      ته تهش گیر کردم!!!!!
                      هر استانداردی که تو کنترل ها استفاده میشه خودش یه پروتکل از پیش تعریف شدست پس نمیشه بدون توجه به اون چیزی رو بخونین. یه برنامه تو صفحه زیر هست که به خوبی کار میکنه و سه تا پروتکل پر کاربرد رو همزمان میتونه شناسایی کنه که البته اکثرا هم همین هستن.البته RC6 رو نداره.
                      در کل برای نوشتن این جور برنامه ها اولا باید از اسمبلی استفاده بشه و دوما تسلط کافی به همه پروتکل ها رو داشته باشین و گرنه نمیتونین.
                      در هر حال استفاده از پروژه زیر میتونه براتون مفید باشه:
                      http://www.martinhubacek.cz/atmel/ir...ontrol-decoder
                      Aristar Group - Always And Forever

                      دیدگاه


                        #12
                        پاسخ : ریموت کنترلر همه کاره

                        دوست عزیز شما یه نگاه به برنامه ی زیر بنداز:
                        $regfile = "m32def.dat"
                        $crystal = 8000000
                        Config Com1 = 9600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
                        Open "com1:" For Binary As #1
                        Dim X As Integer
                        Const T1 = 64536


                        Config Timer1 = Timer , Prescale = 8
                        On Timer1 P
                        Enable Interrupts
                        Enable Timer1
                        Stop Timer1
                        Timer1 = T1


                        Config Int0 = Rising
                        On Int0 Rise
                        Enable Int0
                        Enable Interrupts


                        Do
                        Loop

                        P:
                        Incr X
                        Timer1 = T1
                        Return


                        Rise:
                        Stop Timer1
                        Print #1 , X
                        Timer1 = T1
                        X = 0
                        Start Timer1
                        Return


                        و این یکی:

                        $regfile = "m32def.dat"
                        $crystal = 8000000
                        Config Com1 = 9600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
                        Open "com1:" For Binary As #1
                        Dim X As Integer
                        Const T1 = 64536


                        Config Timer1 = Timer , Prescale = 8
                        On Timer1 P
                        Enable Interrupts
                        Enable Timer1
                        Stop Timer1
                        Timer1 = T1

                        Config Int1 = Falling
                        On Int1 Fall
                        Enable Int1
                        Enable Interrupts

                        Do
                        Loop

                        P:
                        Incr X
                        Timer1 = T1
                        Return


                        Fall:
                        Stop Timer1
                        Print #1 , X
                        Timer1 = T1
                        X = 0
                        Start Timer1
                        Return
                        برنامه اولی فاصله زمانی بین پالس های بالا و یرنامه دومی زمان بین پالس های پایین رو میشماره
                        حالا من اینارو به میکرو بدم تا بفرسته دقیقا میشه همون کد های کنترلی که دستگاه کد هاش رو میخونه
                        مشکل من وفقط تو زمان بندی و mmc والا من میدونم که پروتوکل ها فرق میکنن

                        دیدگاه


                          #13
                          پاسخ : ریموت کنترلر همه کاره

                          نوشته اصلی توسط fghfgh
                          دوست عزیز شما یه نگاه به برنامه ی زیر بنداز:
                          $regfile = "m32def.dat"
                          $crystal = 8000000
                          Config Com1 = 9600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
                          Open "com1:" For Binary As #1
                          Dim X As Integer
                          Const T1 = 64536


                          Config Timer1 = Timer , Prescale = 8
                          On Timer1 P
                          Enable Interrupts
                          Enable Timer1
                          Stop Timer1
                          Timer1 = T1


                          Config Int0 = Rising
                          On Int0 Rise
                          Enable Int0
                          Enable Interrupts


                          Do
                          Loop

                          P:
                          Incr X
                          Timer1 = T1
                          Return


                          Rise:
                          Stop Timer1
                          Print #1 , X
                          Timer1 = T1
                          X = 0
                          Start Timer1
                          Return


                          و این یکی:

                          $regfile = "m32def.dat"
                          $crystal = 8000000
                          Config Com1 = 9600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
                          Open "com1:" For Binary As #1
                          Dim X As Integer
                          Const T1 = 64536


                          Config Timer1 = Timer , Prescale = 8
                          On Timer1 P
                          Enable Interrupts
                          Enable Timer1
                          Stop Timer1
                          Timer1 = T1

                          Config Int1 = Falling
                          On Int1 Fall
                          Enable Int1
                          Enable Interrupts

                          Do
                          Loop

                          P:
                          Incr X
                          Timer1 = T1
                          Return


                          Fall:
                          Stop Timer1
                          Print #1 , X
                          Timer1 = T1
                          X = 0
                          Start Timer1
                          Return
                          برنامه اولی فاصله زمانی بین پالس های بالا و یرنامه دومی زمان بین پالس های پایین رو میشماره
                          حالا من اینارو به میکرو بدم تا بفرسته دقیقا میشه همون کد های کنترلی که دستگاه کد هاش رو میخونه
                          مشکل من وفقط تو زمان بندی و mmc والا من میدونم که پروتوکل ها فرق میکنن
                          مشکل اینجاست که میکروکنترلر اونطوری که شما انتظار دارین کار انجام نمیده!زبان های سطح بالا و مخصوصا بسکام کدهای زیادی تولید میکنن که امکان داره از کدهای ارسالی رو شما از دست بدی!یعنی روند کارت درسته ولی اون چیزی که داری استفاده میکنی غلطه. همین کار رو با اسمبلی و یا کامپایلر WinAVR انجام بدی کدهای سریعتری درست میکنه و کارت راه میفته. حالا با بسکام هم تست کن شاید درست بود ولی یکمی بعیده
                          Aristar Group - Always And Forever

                          دیدگاه


                            #14
                            پاسخ : ریموت کنترلر همه کاره

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

                            دیدگاه


                              #15
                              پاسخ : ریموت کنترلر همه کاره

                              یه پروژه دیگه هم دارم.اینه که به ماهی ها غذا بده تقریبا تموم شده هست
                              خواستین بگین براتون بفرستم.

                              دیدگاه

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