اطلاعیه

Collapse
No announcement yet.

استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

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

    #46
    پاسخ : استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

    با سلام،

    برادر مجتبی، این کل اطلاعاتی هست که من تونستم از پکت های ریموت خوش دست شما بدست بیارم!



    بیت اول استارت بیته، بیت دوم و سوم، آدرس بیت هستند، سه تا بیت بعدی جهت مشخص کردن فشرده شدن یک کلید بطور پیوسته و یا فشردن چند کلید باهم بطور پیوسته هستند ( جزئیاتش رو پیدا نکردم ) و شش بیت بعدی هم بیت های دیتا هستند .....

    با این توضیحات، شکل موجش رو در حالت های مختلف با اون برنامه ببین و مقایسه کن ببین درسته؟! :biggrin:
    مادامی که از شخصی یاد میشود، او و افکارش زنده اند ....

    Sh_Nourbakhsh@Yahoo.com

    http://s2.picofile.com/file/7170362468/_Wall_e_.jp

    دیدگاه


      #47
      پاسخ : استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

      آقا این ریموت "خوش دست" ما چی شد !؟

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

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

      دیدگاه


        #48
        پاسخ : استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

        نوشته اصلی توسط feredi
        اگه امکان داره این مدار رو دوباره مطالعه بفرمایید.
        ما توی یک ثانیه باید 100 تا پالس از مدار گذر از صفر دریافت کنیم.
        ولی این مدار شما فقط 50 تا پالس تولید میکنه! و در بیشتر مواقع خاموش هست!
        دوباره بخاطر اصرارم پوزش میخوام. حتما به لحاظ تئوریک، چک بفرمایید.
        شما یه جورایی درست میگید، ما نیاز به 100 تا تغییر وضعیت داریم، نه صد تا پالس....

        در نرم افزار میکروی دیمر شما، فقط از لبه بالا رونده آشکار ساز گذر از صفر جهت تولید اینتراپت استفاده میشه ولی در این مدار، باید هم در لبه بالا رونده و هم در لبه پائین رونده آشکار ساز گذر از صفر اینتراپت تولید بشه، تفاوت فقط همینه ........
        مادامی که از شخصی یاد میشود، او و افکارش زنده اند ....

        Sh_Nourbakhsh@Yahoo.com

        http://s2.picofile.com/file/7170362468/_Wall_e_.jp

        دیدگاه


          #49
          پاسخ : استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

          نوشته اصلی توسط mojtaba_led
          آقا این ریموت "خوش دست" ما چی شد !؟

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

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

          اینجا، فقط و فقط دیکودر-انکودر ریموت کنترل
          مادامی که از شخصی یاد میشود، او و افکارش زنده اند ....

          Sh_Nourbakhsh@Yahoo.com

          http://s2.picofile.com/file/7170362468/_Wall_e_.jp

          دیدگاه


            #50
            پاسخ : استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

            جناب نوربخش ، ببخشید ولی نفهمیدم منظورتون چیه ؟ الان من دقیقا باید چه کنم ؟

            فقط یه مطلبی رو فهمیدم ، این که فرمودید سه تا از بیت ها فرم عملکرد کلید ها رو مشخص میکنند ، به این شکل هستند :

            دیدگاه


              #51
              پاسخ : استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

              با سلام،

              با توجه به تصویر پست شماره 45 به موارد زیر دقت کنید ( البته اینها برداشت های منه! ) :

              STB یا همون استارت بیت که برای اعلام شروع پکت و همیشه به همین شکل ارسال میشود.
              C2 , C3 بیت های آدرس، که بطور سخت افزاری توسط تولید کننده ریموت کنترل بر روی چیپ ست میشود.
              H , S1 , S2 حالات فشرده شدن کلید ها مثل فشار لحظه ای یا یکبار فشرده شدن، فشردن مستمر یک کلید، فشردن همزمان چند کلید و .... را نمایش میدهند. ( جهت انجام عملیات های خاصی مثل انجام عملی در صورت فشرده شدن دو کلید بطور همزمان و یا بالعکس عدم انجام هرگونه عملیاتی در صورت فشرده شدن چند کلید بطور همزمان ) کشف این حالت، برداشت شخصی من هست و نیاز به بررسی در حالات اشاره شده دارد.
              D1 تا D6 بیت های دیتا هستند که قاعدتا با فشرده شدن هر کلید، حداکثر در 64 حالت تغییر خواهند نمود.

              با توجه به برداشت های شخصی اینجانب، پکت ارسالی در تصویر پست شماره 45 حاوی این اعداد است :
              000100 100 111
              مادامی که از شخصی یاد میشود، او و افکارش زنده اند ....

              Sh_Nourbakhsh@Yahoo.com

              http://s2.picofile.com/file/7170362468/_Wall_e_.jp

              دیدگاه


                #52
                پاسخ : استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

                سلام آقا مجتبی و آقای نوربخش من اومدم.
                وایییی چنان گفتم من اومدم انگااااار کی اومده....

                من خودم یه چند وقتی هست درگیر این ریموت کنترلر شدم.
                من رفتم سر کتاب 10 پرژه دیدم خوب یه ریموت مشت هست که راش بندازم ولیییی توی اون از ای سی 555 برای تولید موج مربعی 38 کیلو با روشنایی 50% استفاده کرده .
                خوب یعنی چی ؟
                یعنی اینکه اطلاعات روی این 38 کیلو هرتز سوار میکنه میفرسته؟
                اگه اینطوریه چرا مال شما نداره؟
                اگه شما اساتید کمک کنید اونو برداریم تمام شد میتونیم یه ریموت کنترل فرسنده و گیرنده با همین tsop1238 بسازیم با هر چندتا کانالی که دلمون خواست.
                شمر ۱۴۰۰سال پیش مُرد؛شمر زمانت بشناس.
                [img width=400 height=100]http:///uploads/140623781981451.png[/img]
                [glow=green,2,100]یاحسین تشنه لب[/glow]

                دیدگاه


                  #53
                  پاسخ : استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

                  نوشته اصلی توسط i4man12
                  سلام آقا مجتبی و آقای نوربخش من اومدم.
                  وایییی چنان گفتم من اومدم انگااااار کی اومده....

                  من خودم یه چند وقتی هست درگیر این ریموت کنترلر شدم.
                  من رفتم سر کتاب 10 پرژه دیدم خوب یه ریموت مشت هست که راش بندازم ولیییی توی اون از ای سی 555 برای تولید موج مربعی 38 کیلو با روشنایی 50% استفاده کرده .
                  خوب یعنی چی ؟
                  اگه شما اساتید کمک کنید اونو برداریم تمام شد میتونیم یه ریموت کنترل فرسنده و گیرنده با همین tsop1238 بسازیم با هر چندتا کانالی که دلمون خواست.
                  با سلام،

                  این مداری که شما داری ازش حرف میزنی، یه فرستنده IR باید باشه، درسته؟!

                  محض اطلاع جنابعالی و سایر دوستان، در فرستنده های IR ( که ریموت کنترل ها هم جزو اونا هستند ) پکت هایی با پروتکلی خاص بصورت سریال به سمت گیرنده ارسال میشه که شامل هدر یا استارت بیت، آدرس، دیتا و بعضا بیت های کنترلی میشه، لازمه بدونید که آرایش و اطلاعات داخل یک پکت، به پروتکل مورد استفاده بستگی داره....

                  حالا نکته اینه که این صفر و یک هایی که توسط فرستنده در غالب یک پکت تولید و ارسال میشن، دارای سطح صفر و سطح یکی که با 1/3 دیوتی کریری بین 33 تا 40 کیلو هرتز نوسان میکنه هستند. دقیقا مثل شکل زیر ( نمونه صفر و یک پروتکل NEC ) :



                  در شکل بالا که مربوط به صفر و یک پروتکل NEC میشه، صفر لاجیک در سمت چپ تصویر با سطح بالا به اندازه T و سطح پائین به اندازه T هست و یک لاجیک در سمت راست تصویر با سطح بالا به اندازه T و سطح پائین به اندازه 3T دیده میشه. اگر دقت کنید میبینید که سطح یک دارای یک کریر 38 کیلوهرتزی با 1/3 دیوتی هستش! این کریر در سنسور گیرنده IR حذف میشه و سطح یک ثابت باقی میمونه، مثل شکل پست 49 ....

                  اگر شما قصد دیکود و یا انکود کردن یه پروتکل رو داشته باشید، دونستن اطلاعات زیر در مورد فریمهای اون پروتکل الزامیه، بطور نمونه، اطلاعات پروتکل NEC ( بر گرفته از سایت برادر ChaN ) :


                  مادامی که از شخصی یاد میشود، او و افکارش زنده اند ....

                  Sh_Nourbakhsh@Yahoo.com

                  http://s2.picofile.com/file/7170362468/_Wall_e_.jp

                  دیدگاه


                    #54
                    پاسخ : استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

                    سلام استاد خسته نباشید .

                    H , S1 , S2 حالات فشرده شدن کلید ها مثل فشار لحظه ای یا یکبار فشرده شدن، فشردن مستمر یک کلید، فشردن همزمان چند کلید و .... را نمایش میدهند. ( جهت انجام عملیات های خاصی مثل انجام عملی در صورت فشرده شدن دو کلید بطور همزمان و یا بالعکس عدم انجام هرگونه عملیاتی در صورت فشرده شدن چند کلید بطور همزمان ) کشف این حالت، برداشت شخصی من هست و نیاز به بررسی در حالات اشاره شده دارد.
                    D1 تا D6 بیت های دیتا هستند که قاعدتا با فشرده شدن هر کلید، حداکثر در 64 حالت تغییر خواهند نمود.
                    تو مشاهداتی که داشتم فقط دو حالت رو تمایز ایجاد میشه یکی زمانی که کلید های مثل خاموش روشن کردن رو میزنم و نگخ میدارم و دیگری تو حالتی که کلید های مثل کم و زیاد کردن صدا رو میزنم و نگه میدارم ، دقیقا به همون صورتی که در پست 49 گزاشتم و برای هیچ کدوم از حالتهای دیگه ای که فرمودید هیچ تمایزی ایجاد نمیشه .

                    با توجه به برداشت های شخصی اینجانب، پکت ارسالی در تصویر پست شماره 45 حاوی این اعداد است :
                    000100 100 111
                    خوب به نظرم بشه خودمون حالا چون اینجا فقط داریم دریافت میکنیم وهمچنین (سخت افزار) فرستنده و گیرنده رو خودمون تولید میکنیم و قرار نیست که با سخت افزار هایی که با این پرتوکول کار میکنند ، کار کنیم (البته منظورم فقط گیرنده ها ستند ، فرستنده که مهم نیست ) خودمون بتونیم به قانون برای صفر و یکش وضع کنیم ، مثلا همین موردی که شما گفتید رو قانون در نظر بگیریم برای دیکود کردن اطلاعات .

                    خوب حالا که قالب اصلی پکت درامده و قانون صفر و یک هم مشخص شده چجور باید برنامه دیکودینگ رو بنویسم ؟

                    دیدگاه


                      #55
                      پاسخ : استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

                      تشکر
                      فرسنده که همشون IR است ولی گیرندش IR نیست و یک گیرنده tsop1238 .
                      مشکل منم همینیه که شما اشاره کردید.
                      من می خوام یه 38 کیلو تولید کنم و اطلاعات با اون بفرستم.
                      ****************
                      اصلا یک چیز میشه من اطلاعات روی 38 کیلو هرتز نریزم و با uart میکرو اطلاعات با IR بفرستم و اون طرف با tsop1238l. که به uart میکرو وصله اطلاعات بگیرم.؟
                      ????
                      شمر ۱۴۰۰سال پیش مُرد؛شمر زمانت بشناس.
                      [img width=400 height=100]http:///uploads/140623781981451.png[/img]
                      [glow=green,2,100]یاحسین تشنه لب[/glow]

                      دیدگاه


                        #56
                        پاسخ : استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

                        فرسنده که همشون IR است ولی گیرندش IR نیست و یک گیرنده tsop1238 .
                        دوست عزیز ، TSOP1238 هم حتما یه ماژول گیرنده IR هست که داره امواج فرستنده IR رو دریافت میکنه دیگه !

                        دیتا شیت :

                        The TSOP12.. series are miniaturized receivers for infrared
                        remote
                        control systems.


                        مشکل منم همینیه که شما اشاره کردید.
                        من می خوام یه 38 کیلو تولید کنم و اطلاعات با اون بفرستم.
                        ****************
                        خوب شما فرض کنید که کریر 38 کیلو هرتز تولید شد ، اون وقت میتونید اطلاعات رو روش مدوله کنید ؟

                        اصلا یک چیز میشه من اطلاعات روی 38 کیلو هرتز نریزم و با uart میکرو اطلاعات با IR بفرستم و اون طرف با tsop1238. که به uart میکرو وصله اطلاعات بگیرم.؟
                        ????
                        شما برای ارسال اطلاعات به صورت بیسیم احتیاج به یه سیگنال حامل (کریر) دارید تا اطلاعات رو براتون تو کانال مورد نظر حمل کنه و برسونه دست گیرنده ، تو گیرنده ، وقتی هم اطلاعات به TSOP1238 میرسه اون سیگنال رو فقط دمودوله میکنه و اطلاعات رو تو پایه خروجیش تحویل میده ، حالا پرتوکول اون اطلاعات هر چی میخواد باشه ، اینجا دیگه وظیفه میکرو که اطلاعات رو پردازش کنه .

                        دیدگاه


                          #57
                          پاسخ : استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

                          خوب تا جناب نوربخش این ریموت "خوش دست" ما رو بگن که باید چجوری دیکودش کنم ، من یه PAUSE بدم !

                          خوب دوستانی که تمایل دارند که با مگا 8 این پروژه رو راه اندازی کنند ، تغییرات زیر رو تو فایل های زیر انجام بدن :

                          1. تو فایل IRCconfig.h قسمت تنظیمات PIN :

                          کد:
                          // Pins.....
                          	#if IR_USE_RCVR
                          		//----------- IRC input pin (input) - Active Low
                          		#define IRCR_DDR											DDRB //D : IN MEGA16/32
                          		#define IRCR_PRT											PORTB //D : IN MEGA16/32
                          		#define IRCR_PIN											PINB //D : IN MEGA16/32
                          		#define IRCR_BIT											0   //6 :IN MEGA16/32
                          	#endif
                          	
                          	#if IR_USE_XMIT
                          		//----------- IRC output pin (output)
                          		#define IRCX_DDR											DDRB //D :IN MEGA16/32
                          		#define IRCX_PRT											PORTB //D :IN MEGA16/32
                          		#define IRCX_PIN											PINB //D :IN MEGA16/32
                          		#define IRCX_BIT											3   //7 : IN MEGA16/32
                          	#endif




                          2. تو فایل HW_IRC.h تنظیمات زیر رو اعمال کنید :

                          کد:
                          //----------- Red LED (output)
                          	#define RLED_PRT							PORTC //B : IN MEGA16/32
                          	#define RLED_DDR							DDRC  //B : IN MEGA16/32
                          	#define RLED_BIT							5	  //0 : IN MEGA16/32
                          
                          	//----------- Green LED (output)
                          	#define GLED_PRT							PORTC //B : IN MEGA16/32
                          	#define GLED_DDR							DDRC  //B : IN MEGA16/32
                          	#define GLED_BIT							4   //1 :IN MEGA16/32


                          3. تو فایل Global_make تنظیمات زیر رو اعمال کنید :

                          کد:
                          # MCU name
                          #MCU = atmega16
                          MCU = atmega8


                          4. تو فایل N1100config.h تنظیمات زیر رو اعمال کنید :


                          کد:
                          // Pins.....
                          	#define N11_CS_DDR											DDRC //D :MCU = atmega16
                          	#define N11_CS_PRT											PORTC //D : MCU = atmega16
                          	#define N11_CS_BIT											0   //3 :MCU = atmega16
                          	//------
                          	#define N11_SDA_DDR											DDRC //B : MCU = atmega16
                          	#define N11_SDA_PRT											PORTC //B : MCU = atmega16
                          	#define N11_SDA_BIT											1   //6 : MCU = atmega16
                          
                          	#define N11_SCL_DDR											DDRC //B : MCU = atmega16 
                          	#define N11_SCL_PRT											PORTC //B : MCU = atmega16
                          	#define N11_SCL_BIT											2   //7 : MCU = atmega16
                          	//------
                          	#define N11_RST_DDR											DDRC //D : MCU = atmega16
                          	#define N11_RST_PRT											PORTC //D : MCU = atmega16
                          	#define N11_RST_BIT											3   //5 : MCU = atmega16
                          
                          	#define N11_BKL_DDR											DDRC //B : MCU = atmega16
                          	#define N11_BKL_PRT											PORTC //B : MCU = atmega16
                          	//#define N11_BKL_BIT										4	 //0 : MCU = atmega16


                          دوستان ، من USART رو با این تنظیمات تو مگا 8 تست کردم ، جواب داده ، N1100 اش پایه استاد !

                          دیدگاه


                            #58
                            پاسخ : استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

                            با سلام،

                            برادر مجتبی، ریموت خوش دست شما در دست اقدام است، فردا تا ساعت 10 کد اولیه رو بهت میدم و بعدش ( بعد از تست و OK شدن ) رووش بحث و گفتگو میکنیم.... :biggrin:

                            در مورد پست قبلی، تنظیمات تایمرها و اینتراپت هاشون یادت نره!!!
                            مادامی که از شخصی یاد میشود، او و افکارش زنده اند ....

                            Sh_Nourbakhsh@Yahoo.com

                            http://s2.picofile.com/file/7170362468/_Wall_e_.jp

                            دیدگاه


                              #59
                              پاسخ : استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

                              در مورد پست قبلی، تنظیمات تایمرها و اینتراپت هاشون یادت نره!!!
                              آقا مثل اینکه به ما شک دارید .

                              خوشبختانه چون شما از اسم بیت رجیستر ها برای مقدار دهی به رجیستر ها استفاده کردید و چون بیت ها ی مورد استفاده در مگا 8 همانند رجیستر مگا 16 و 32 هست نیاز به تغییر نداشتند .

                              دیدگاه


                                #60
                                پاسخ : استفاده از ریموت کنترل در پروژهها ( IRC remote controls De-Encoder )

                                با سلام،

                                نسخه 4 با امکان کامپایل در محیط های WinAVR و CodeVision بطور همزمان! خودم بطور کامل با LCD و UART در هر دو محیط کامپایل و تست کردم. هگز های مربوطه در پوشه Prepared HEX قرار داره، فقط برای دوستان علاقمند ..... :mrgreen:

                                نکته :
                                جهت همخوانی CodeVision با WinAVR فایل CV_GNU_comp.h اضافه شده است. ( بررسی بفرمائید! )
                                بدلیل ضیق وقت و گرفتاری فراوان، فقط برای میکروهای مگا8 و مگا16 و مگا32
                                اضافه نمودن سایر میکروها در فایل CV_GNU_comp.h با خودتون!!! ( اضافه کردید، به من و بقیه هم بدید، خسیس نباشید! :mrgreen: )

                                http://s3.picofile.com/file/7363554187/SHN_IRC_4.rar.html

                                :mrgreen:
                                مادامی که از شخصی یاد میشود، او و افکارش زنده اند ....

                                Sh_Nourbakhsh@Yahoo.com

                                http://s2.picofile.com/file/7170362468/_Wall_e_.jp

                                دیدگاه

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