اطلاعیه

Collapse
No announcement yet.

ارتباط سریال چند میکرو با یک میکرو

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

    ارتباط سریال چند میکرو با یک میکرو

    دوستان سلام
    من میخوام ارتباط بین 4 الی 5 میکروی slave رو با یک میکروی master بصورت سریال برقرار کنم. اول به ذهنم رسید که 2560 بگیرم و هر پورت سریالشو بدم به یه میکرو تا با هم مرتبط باشن، بعد به ذهنم رسید که پایه tx میکروی مستر رو وصل کنم به rx تمامی اسلیو ها و همچنین پایه rxش رو به tx همه اسلیوها و وقتی مستر یه کاراکتر خاص فرستاد میکرویی که اون کاراکتر مال اونه جواب بفرسته، اما اینم فکر میکنم اشکال در ارسال و دریافت پیش بیاد. نهایتا به نظرم اومد که یه میکرو با یک سریال هم میتونه با تغییر ارتباطش به میکروهای دیگه وصل بشه و تبادل ارتباط کنه به این صورت که یه پایه از میکروی مستر به هرکدوم از میکروهای اسلیو اختصاص داشته باشه و زمانی که میکروی مستر میخواد تبادل ارتباط با هرکدوم از میکروها داشته باشه با ست کردن اون پایه، ارتباط بین پایه های سریال خودش و پایه های سریال میکروی اسلیو مورد نظر رو برقرار کنه -حالا با رله ای چیزی- و به این صورت با یه پایه و تنظیمات ارتباط سریال یکسان در تمام میکروها با همه اونها در ارتباط باشه.
    حالا سوالم از اساتید اینه که اصلا این روشها شدنی هست؟ پروتکل یا چیپی واسه اینکار هست؟ با توجه به تعداد 5 تا میکروی اسلیو و فقط 4 پورت سریال 2560 انتخاب کدوم روش بهتر و استانداردتره؟ همچنین برای تغییر و سوئیچ کردن بین میکروها از چی استفاده کنم بهتره؟
    مرسی از راهنماییتون
    تشكر نكن، صلوات بفرست:

    [img width=165 height=100]http://www.askdin.com/gallery/images/29839/1___________5.png[/img]

    #2
    پاسخ : ارتباط سریال چند میکرو با یک میکرو

    بعد به ذهنم رسید که پایه tx میکروی مستر رو وصل کنم به rx تمامی اسلیو ها و همچنین پایه rxش رو به tx همه اسلیوها و وقتی مستر یه کاراکتر خاص فرستاد میکرویی که اون کاراکتر مال اونه جواب بفرسته، اما اینم فکر میکنم اشکال در ارسال و دریافت پیش بیاد.

    این شدنی هستش

    اگر خواستی تا نمونه برنامه هم برات بزارم (البته mega32)

    دیدگاه


      #3
      پاسخ : ارتباط سریال چند میکرو با یک میکرو

      سلام
      راسیاتش من میخواسم یک کاری مثله همین بکنم
      یک پرس و جو کردم یک راهش گذاشتن مالتی پلکسر یا همون ماکس است
      4051 اگه اشتباه نکنم یک 8 به 1 است با 3 بیت آدرس
      میشه با 3 پایه هر کدوم از 8 تا را انتخاب کرد و فرستاد به خروجی
      با دوتاش کارتون را میفته
      __________________________________________________ _______
      یک چیز دیگه که برام خودم سواله اینه اگه ما بیایم تو این مورد به جا UART از USART استفاده کنیم خطا کمتر میشه؟
      چون بالاخره ارتباط UART بسه به باودریتش یادمه یک خطا داشت که برای همین از کریستال دقیق استفاده میکردن.

      دیدگاه


        #4
        پاسخ : ارتباط سریال چند میکرو با یک میکرو

        نوشته اصلی توسط محمد نعمت الهیان
        دوستان سلام
        من میخوام ارتباط بین 4 الی 5 میکروی slave رو با یک میکروی master بصورت سریال برقرار کنم. اول به ذهنم رسید که 2560 بگیرم و هر پورت سریالشو بدم به یه میکرو تا با هم مرتبط باشن، بعد به ذهنم رسید که پایه tx میکروی مستر رو وصل کنم به rx تمامی اسلیو ها و همچنین پایه rxش رو به tx همه اسلیوها و وقتی مستر یه کاراکتر خاص فرستاد میکرویی که اون کاراکتر مال اونه جواب بفرسته، اما اینم فکر میکنم اشکال در ارسال و دریافت پیش بیاد. نهایتا به نظرم اومد که یه میکرو با یک سریال هم میتونه با تغییر ارتباطش به میکروهای دیگه وصل بشه و تبادل ارتباط کنه به این صورت که یه پایه از میکروی مستر به هرکدوم از میکروهای اسلیو اختصاص داشته باشه و زمانی که میکروی مستر میخواد تبادل ارتباط با هرکدوم از میکروها داشته باشه با ست کردن اون پایه، ارتباط بین پایه های سریال خودش و پایه های سریال میکروی اسلیو مورد نظر رو برقرار کنه -حالا با رله ای چیزی- و به این صورت با یه پایه و تنظیمات ارتباط سریال یکسان در تمام میکروها با همه اونها در ارتباط باشه.
        حالا سوالم از اساتید اینه که اصلا این روشها شدنی هست؟ پروتکل یا چیپی واسه اینکار هست؟ با توجه به تعداد 5 تا میکروی اسلیو و فقط 4 پورت سریال 2560 انتخاب کدوم روش بهتر و استانداردتره؟ همچنین برای تغییر و سوئیچ کردن بین میکروها از چی استفاده کنم بهتره؟
        مرسی از راهنماییتون
        درود

        چه کاریه ...
        با TWI کار کنید تا 127 دستگاه هم به هم شبکه میشوند ...
        سرعتش هم به مراتب از USART بیشتره ...

        نوشته اصلی توسط ®Ÿ_amin_Ÿ®
        سلام
        راسیاتش من میخواسم یک کاری مثله همین بکنم
        یک پرس و جو کردم یک راهش گذاشتن مالتی پلکسر یا همون ماکس است
        4051 اگه شتبه نکنم یک 8 به 1 است با 3 بیت آدرس
        میشه با 3 پایه هر کدوم از 8 تا را انتخاب کرد و فرستاد به خروجی
        با دوتاش کارتون را میفته
        درود
        این هم نظر خیلی خوبیه ولی باز هم میگم TWI بهتره ...

        نوشته اصلی توسط ®Ÿ_amin_Ÿ®
        یک چیز دیگه که برام خودم سواله اینه اگه ما بیایم تو این مورد به جا UART از USART استفاده کنیم خطا کمتر میشه؟
        چون بالاخره ارتباط UART بسه به باودریتش یادمه یک خطا داشت که برای همین از کریستال دقیق استفاده میکردن.
        تمام ارتباطهای UART یا USART باید از کریستال مخصوص استفاده بشه ...

        موفق باشید
        [b]چگونه همه پایه های میکروکنترلر AVR را PWM کنیم؟
        معرفی نرم افزارEasy 7segment (برای راه اندازی آسانتر 7segment )
        معرفی نرم افزار Codewizard PWM
        با من بیشتر آشنا شوید

        دیدگاه


          #5
          پاسخ : ارتباط سریال چند میکرو با یک میکرو

          اگه نمونه کدخواستین بگین بذارم ..
          البته بیسیک کد میزنم (البته دارم رو سی کار میکنم....)
          تیم کاوش در مسابقات بین المللی ایران اپن 2016.نمایشی.مین یاب.
          علم را باید در آزمایشگاه یاد گرفت نه در دانشگاه!

          دیدگاه


            #6
            پاسخ : پاسخ : ارتباط سریال چند میکرو با یک میکرو

            سلام. دوستان از راهنمایی همتون ممنونم، متشکر که برای حل شدن مشکلم راهنماییم میکنین.
            امین خان حقیقتا من از مالتی پلکس و این 4051ی که گفتین اصلا سر در نمیارم، ممکنه یه توضیح مختصری راجع به مالتی پلکسر بدین؟ مرسی.
            همونطور که جناب اسدی گفتن باید کریستال تو هر دو تا ارتباط باشه، تفاوتی بین سنکرون بودن و نبودنشون نیست.
            دوست عزیز ok20 اگه حین تبادل این کدها یکی از میکروها بره سراغ وقفه خارجی چه مشکلی براش پیش میاد؟
            در جواب جناب اسدی هم عرض کنم خدمتتون که متاسفانه امکانش نیست از twi استفاده کنم، فقط میشه -برای هر کاری که میخوام بکنم- از ارتباط سریال استفاده بشه.
            جناب پارس پایا متوجه منظورتون نشدم. منم با بسکام کار میکنم، اما کدی که فرمودین دارین واسه کدوم روشه یا اصلا روش دیگه ای مد نظرتونه؟
            من بیشتر سر انتخاب روش استاندارد این کار و همچنین شدنی بودن این موضوع و محدودیتهاش سوال دارم.
            مرسی
            تشكر نكن، صلوات بفرست:

            [img width=165 height=100]http://www.askdin.com/gallery/images/29839/1___________5.png[/img]

            دیدگاه


              #7
              پاسخ : ارتباط سریال چند میکرو با یک میکرو

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

              توی Master که مشکلی پیش نمیاد، چون دائما داره دیتا میفرسته!!!

              توی Slave ممکنه که همون Slave ی که رفته توی وقفه ، دیتا را توی اون لحضه دریافت نمیکنه!!

              فکر میکنم که این مشکل هم راهش اینه که شما وقفه دریافت Usart را فعال کنید که دریافت در وقفه اجرا بشه که وقفه ی دیگه ای توی اون لحضه اجرا نشه!!

              دیدگاه


                #8
                پاسخ : ارتباط سریال چند میکرو با یک میکرو

                نوشته اصلی توسط pars_paya
                اگه نمونه کدخواستین بگین بذارم ..
                البته بیسیک کد میزنم (البته دارم رو سی کار میکنم....)
                شرمنده دوستان ...
                من بیسیک خوب بلد نیستم ...
                اگر زبان سی خواستید به این لینک مراجعه کنید
                [b]چگونه همه پایه های میکروکنترلر AVR را PWM کنیم؟
                معرفی نرم افزارEasy 7segment (برای راه اندازی آسانتر 7segment )
                معرفی نرم افزار Codewizard PWM
                با من بیشتر آشنا شوید

                دیدگاه


                  #9
                  پاسخ : پاسخ : ارتباط سریال چند میکرو با یک میکرو

                  سلام. دوستان از راهنمایی همتون ممنونم، متشکر که برای حل شدن مشکلم راهنماییم میکنین.
                  امین خان حقیقتا من از مالتی پلکس و این 4051ی که گفتین اصلا سر در نمیارم، ممکنه یه توضیح مختصری راجع به مالتی پلکسر بدین؟ مرسی.
                  یک آیسی هست که شما با 3 پایه مشخص میکنید کدوم یک از 8 تا ورودی به خروجی متصل بشه
                  http://fa.wikipedia.org/wiki/%D8%AA%...86%D8%AF%D9%87
                  شما میتونید به 5 تا از ورودی هاش rx ماژول 1 تا 5 بدید بعد 3 پایه های کنترلیش اگه مثلا 000 دادید اولی انتخاب میشه و هر تغییر در ورودی اولی باعث همون تغییر در خروجی میشه
                  شما باید یکی بزارید برای tx ماژولها و خروجی آنها را بدید به rx میکرو

                  اینم یک دیتاشیت نمونه :
                  http://s5.picofile.com/file/8158723742/4051.rar.html

                  اما نرم افزاری پیاده سازیش راحتتره یعنی همه به هم وصل باشن ولی برای هر کدوم یک ادرس تعریف کنین
                  مثلا کارکتر اول که ارسال میشه مشخص کننده ی میکروی باشه که قرار هست به دستورات عمل کنه

                  ممنون از دوستانی که جواب سوال منم دادن :nice:

                  دیدگاه


                    #10
                    پاسخ : ارتباط سریال چند میکرو با یک میکرو

                    نوشته اصلی توسط محمد نعمت الهیان
                    دوستان سلام
                    من میخوام ارتباط بین 4 الی 5 میکروی slave رو با یک میکروی master بصورت سریال برقرار کنم. اول به ذهنم رسید که 2560 بگیرم و هر پورت سریالشو بدم به یه میکرو تا با هم مرتبط باشن، بعد به ذهنم رسید که پایه tx میکروی مستر رو وصل کنم به rx تمامی اسلیو ها و همچنین پایه rxش رو به tx همه اسلیوها و وقتی مستر یه کاراکتر خاص فرستاد میکرویی که اون کاراکتر مال اونه جواب بفرسته، اما اینم فکر میکنم اشکال در ارسال و دریافت پیش بیاد. نهایتا به نظرم اومد که یه میکرو با یک سریال هم میتونه با تغییر ارتباطش به میکروهای دیگه وصل بشه و تبادل ارتباط کنه به این صورت که یه پایه از میکروی مستر به هرکدوم از میکروهای اسلیو اختصاص داشته باشه و زمانی که میکروی مستر میخواد تبادل ارتباط با هرکدوم از میکروها داشته باشه با ست کردن اون پایه، ارتباط بین پایه های سریال خودش و پایه های سریال میکروی اسلیو مورد نظر رو برقرار کنه -حالا با رله ای چیزی- و به این صورت با یه پایه و تنظیمات ارتباط سریال یکسان در تمام میکروها با همه اونها در ارتباط باشه.
                    حالا سوالم از اساتید اینه که اصلا این روشها شدنی هست؟ پروتکل یا چیپی واسه اینکار هست؟ با توجه به تعداد 5 تا میکروی اسلیو و فقط 4 پورت سریال 2560 انتخاب کدوم روش بهتر و استانداردتره؟ همچنین برای تغییر و سوئیچ کردن بین میکروها از چی استفاده کنم بهتره؟
                    مرسی از راهنماییتون
                    سلام
                    هرکدام از I/O های میکرو قابلیت دریافت/ارسال سریال بصورت نرم افزاری را دارند بنابراین اگر به بافر پورت سریال نیاز ندارید از این روش استفاده کنید.
                    چشم ظاهربین، بر آزار است وای ار بنگرد این گلستانـها که پنهان زیر خارستان ماست

                    دیدگاه


                      #11
                      پاسخ : ارتباط سریال چند میکرو با یک میکرو

                      نوشته اصلی توسط bagion
                      سلام
                      هرکدام از I/O های میکرو قابلیت دریافت/ارسال سریال بصورت نرم افزاری را دارند بنابراین اگر به بافر پورت سریال نیاز ندارید از این روش استفاده کنید.
                      به علاوه حرف دوستمون باید گفت :
                      البته سعی شود که از فرکانسهای پایین استفاده شود تا خطای سریال نرم افزاری پایین آید ...
                      [b]چگونه همه پایه های میکروکنترلر AVR را PWM کنیم؟
                      معرفی نرم افزارEasy 7segment (برای راه اندازی آسانتر 7segment )
                      معرفی نرم افزار Codewizard PWM
                      با من بیشتر آشنا شوید

                      دیدگاه


                        #12
                        پاسخ : ارتباط سریال چند میکرو با یک میکرو

                        نوشته اصلی توسط سامان اسدی
                        به علاوه حرف دوستمون باید گفت :
                        البته سعی شود که از فرکانسهای پایین استفاده شود تا خطای سریال نرم افزاری پایین آید ...
                        فرکانس پایینتر یا باودریت پایینتر؟
                        من نظرمه از باود 19200 با کریستال 11 و خوردی مگاهرتز استفاده کنم که خطا صفر بشه.
                        البته نمیخوام از سریال نرم افزاری استفاده کنم چون تقریبا تمامی پایه های میکروهام مشغولن!
                        مرسی از راهنماییتون
                        تشكر نكن، صلوات بفرست:

                        [img width=165 height=100]http://www.askdin.com/gallery/images/29839/1___________5.png[/img]

                        دیدگاه


                          #13
                          پاسخ : ارتباط سریال چند میکرو با یک میکرو

                          نوشته اصلی توسط محمد نعمت الهیان
                          فرکانس پایینتر یا باودریت پایینتر؟
                          من نظرمه از باود 19200 با کریستال 11 و خوردی مگاهرتز استفاده کنم که خطا صفر بشه.
                          البته نمیخوام از سریال نرم افزاری استفاده کنم چون تقریبا تمامی پایه های میکروهام مشغولن!
                          مرسی از راهنماییتون
                          منظورم این بود که باود ریت کمتر باشه بهتره ... مثل 4800
                          کریستال هم 11.0592 مگاهرتز باشه خوبه ...
                          [b]چگونه همه پایه های میکروکنترلر AVR را PWM کنیم؟
                          معرفی نرم افزارEasy 7segment (برای راه اندازی آسانتر 7segment )
                          معرفی نرم افزار Codewizard PWM
                          با من بیشتر آشنا شوید

                          دیدگاه


                            #14
                            پاسخ : پاسخ : ارتباط سریال چند میکرو با یک میکرو

                            نوشته اصلی توسط ®Ÿ_amin_Ÿ®
                            یک آیسی هست که شما با 3 پایه مشخص میکنید کدوم یک از 8 تا ورودی به خروجی متصل بشه
                            http://fa.wikipedia.org/wiki/%D8%AA%...86%D8%AF%D9%87
                            شما میتونید به 5 تا از ورودی هاش rx ماژول 1 تا 5 بدید بعد 3 پایه های کنترلیش اگه مثلا 000 دادید اولی انتخاب میشه و هر تغییر در ورودی اولی باعث همون تغییر در خروجی میشه
                            شما باید یکی بزارید برای tx ماژولها و خروجی آنها را بدید به rx میکرو

                            اینم یک دیتاشیت نمونه :
                            http://s5.picofile.com/file/8158723742/4051.rar.html

                            اما نرم افزاری پیاده سازیش راحتتره یعنی همه به هم وصل باشن ولی برای هر کدوم یک ادرس تعریف کنین
                            مثلا کارکتر اول که ارسال میشه مشخص کننده ی میکروی باشه که قرار هست به دستورات عمل کنه

                            ممنون از دوستانی که جواب سوال منم دادن :nice:
                            سلام و ممنون از راهنماییتون.
                            عزیز جسارتا یه سوال دیگه دارم. من چون میخوام از وقفه سریال روی همه میکروها استفاده کنم نمیتونم صرفا از روش نرم افزاری استفاده کنم چون مدام میکروهایی که حتی دیتا براشون مهم نیست هم وارد وقفه میشن. واسه همین تمایل دارم از مالتی پلکسر هم استفاده کنم تا فقط میکروی مخاطب بره تو وقفه.
                            مجدد مزاحم شدم ازتون بپرسم که باید مالتی پلکسر و دی مالتی پلکسر دیجیتال انتخاب کنم یا آنالوگ و چه مدلی رو -برای مالتی پلکسر و دی مالتی پلکسر- پیشنهاد میکنین؟ این 4051 که معرفی فرموده بودین مالتی پلکسر بود یا دی مالتی پلکسر؟
                            مرسی از راهنماییتون
                            تشكر نكن، صلوات بفرست:

                            [img width=165 height=100]http://www.askdin.com/gallery/images/29839/1___________5.png[/img]

                            دیدگاه


                              #15
                              پاسخ : ارتباط سریال چند میکرو با یک میکرو

                              دوستان عزیز راهنمایی نمیکنین؟ هرچی گشتم یه مثال عملی از مالتی پلکسر پیدا کنم موفق نشدم :cry2:
                              مرسی
                              تشكر نكن، صلوات بفرست:

                              [img width=165 height=100]http://www.askdin.com/gallery/images/29839/1___________5.png[/img]

                              دیدگاه

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