اطلاعیه

Collapse
No announcement yet.

طریقه استفاده از USART در XMEGA

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

    #31
    پاسخ : طریقه استفاده از USART در XMEGA

    در AVR و XMEGA برای ریست کردن watchdog timer باید از دستور اسمبلی WDR یا شکل معادل آن در کامپایلرهای سطح بالا استفاده کنید. در متن کد شما برای دریافت به غیر از یکی نیودن نوع متغیر a و مقدار بازگشتی تابع، مورد خاصی به نظر نمی رسد.
    اوژن: به معنای افکننده و شکست دهنده است
    دانایی، توانایی است-Knowledge is POWER
    برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
    وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
    قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
    اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
    ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

    دیدگاه


      #32
      پاسخ : طریقه استفاده از USART در XMEGA

      سلام
      کسی اطلاع داره حداکثر سرعتی که میشه با کلاک 32 مگاهرتز در usart استفاده کرد چقدر هست؟
      در زیر این نقاب چیزی بیشتر از گوشت هست. در زیر این نقاب یک ایده هست و ایده ها ضدگلوله هستند.

      1-به اندازه ی باورهای هر کسی ؛ با او حرف بزن …. بیشتر که بگویی ، تو را احمق فرض خواهد کرد …!!!
      2-تنها دو گروه نمى توانند افکار خود را عوض کنند: دیوانگان تیمارستان و مردگان گورستان.
      3-آدم ها مثل عکس ها هستند: زیاد بزرگشون کنی ، کیفیتشون میاد پایین!

      دیدگاه


        #33
        پاسخ : طریقه استفاده از USART در XMEGA

        حداکثر فرکانس Baud برابر fclkper/8 می باشد. در مد Master SPI برای USART هم این مقدار fclkper/2 است.
        اوژن: به معنای افکننده و شکست دهنده است
        دانایی، توانایی است-Knowledge is POWER
        برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
        وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
        قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
        اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
        ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

        دیدگاه


          #34
          پاسخ : طریقه استفاده از USART در XMEGA

          استاد کی نژاد
          پس چرا داخل ویزارد کدویژن حداکثر تا 115200 قابل انتخاب هست؟
          البته می دونم که احتمالا از کدویژن خوشتون نمی یاد.

          راستی یک سئوال دیگه هم بام پیش اومده. بعضی از میکرو ها داخل واحد usart
          2 تا پین rts , cts هم دارن. چطور میشه اونها را داخل xmega پیاده سازی یا شبیه سازی کرد؟

          فرق usart و uart چیه؟ ببخشید که سئوالاتم خیلی ابتدایی و احمقانه به نظر میرسه.
          در زیر این نقاب چیزی بیشتر از گوشت هست. در زیر این نقاب یک ایده هست و ایده ها ضدگلوله هستند.

          1-به اندازه ی باورهای هر کسی ؛ با او حرف بزن …. بیشتر که بگویی ، تو را احمق فرض خواهد کرد …!!!
          2-تنها دو گروه نمى توانند افکار خود را عوض کنند: دیوانگان تیمارستان و مردگان گورستان.
          3-آدم ها مثل عکس ها هستند: زیاد بزرگشون کنی ، کیفیتشون میاد پایین!

          دیدگاه


            #35
            پاسخ : طریقه استفاده از USART در XMEGA

            Baud Rate هایی مانند 2400، 4800، 9600 و ... و از جمله 115200 مربوط به ارتباط با کامپیوتر هستند. اما این به این معنی نیست که از اعداد دیگر نمی توان برای ارتباط با غیر از کامپیوتر استفاده کرد و برای ارتباط بین دو میکروکنترلر می توانید سایر نرخ های ارتباط را که از فرمول بدست می آیند بکار بگیرید. برای شبیه سازی عملکرد CTS و RTS هم می توانید از هر پین دلخواه استفاده کنید. حرف S در USART مخفف synchronous است که نشان دهنده امکان ارتباط یصورت سنکرون است که در آن کلاک ارتباط از طرف Master ایجاد می شود. در UART ارتباط فقط بصورت آسنکرون (بدون سیگنال کلاک) است و در USART هر دو ارتباط سنکرون و آسنکرون قابل فعال سازی است.
            اوژن: به معنای افکننده و شکست دهنده است
            دانایی، توانایی است-Knowledge is POWER
            برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
            وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
            قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
            اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
            ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

            دیدگاه


              #36
              ارتباط USART در XMEGA

              با سلام
              در manual میکرو های XMEGA ذکر شده که امکان برقراری ارتباط سریال ازطریق USART به صورت سنکرون و غیر سنکرون وجود داره. سوال من این است که:
              1- آیا در سری ATMEGA هم ارتباط Usart به صورت سنکرون وجود داشت یا خیر؟ تا جایی که می دونم آن هایی که فقط یک UART دارند به طور پیش فرش آسنکرون هستند. درسته؟
              2- ذکر شده که این ارتباط به صورت Full Duplex هم مقدور است. مگر ارتباط Usart هم همزمان دو طرفه میشه؟؟؟ در سری ATMEGA و نیز ارتباط با کامپوتر از طریق RS232 نیز آیا این امکان وجود دارد؟؟؟

              با این تفاسیر دیگه فرق این پل ارتباطی با SPI در چیست؟

              دیدگاه


                #37
                پاسخ : ارتباط USART در XMEGA

                با سلام
                Universal Synchronous/Asynchronous Receiver/Transmitter
                جواب شما در بالا نهفته هست، وقتی میگین usart دارین هم به سنکرون و هم اسنکرون اشاره میکنید، در تمامی میکروها، و البته ما اکثرا از مد اسنکرون استفاده می کنیم که میشه uart.
                بله، به شدت full duplex هست، دو سیم یکی برای ارسال و دیگری دریافت و باز هم در تمام میکروها همین طور هست، rs232 فقط سطح ولتاژ رو عوض میکنه تا مقاومت در برابر نویز بره بالا وگر نه در ماهیت همونه

                تفسیر رو نمیدونم اما چیز هایی که به ذهن میرسه
                -سرعت ارتباط
                -وجود cs در spi باعث ایجاد امکان تشکیل باس میشه
                -در usart فقط و فقط دو دستگاه با هم صحبت میکنند(میشه rs485 استفاده کرد ااما دیگه full duplex نیست)
                -در usart چیزی به اسم master/slave نیست
                -و مواردی که ماهیتی با هم تفاوت دارند، مثل انتقال کلاک و ...
                The healthy human mind doesn't wake up in the morning thinking this is his last day on earth.

                دیدگاه


                  #38
                  پاسخ : ارتباط USART در XMEGA

                  ضمن تشکر، میشه لطفا ذکر کنید مزایا و معایب ارتباط سنکرون و آسنکرون نسبت به هم چیست؟
                  بعد اینکه آیا full duplex به معنی این است که دو طرف می توانند به طور همزان داده را هم ارسال و هم دریافت کنند؟
                  و بعد اینکه در ارتباط USART داده به صورت بیت به بیت ارسال میشه دیگه درسته؟
                  و نهایتا این که مزیت وجود Master و Slave چیست؟
                  تشکر

                  دیدگاه


                    #39
                    پاسخ : ارتباط USART در XMEGA

                    خواهش
                    -قاعدتا مزایا و معایب میتونه بیشتر هم باشه، تا اونجا که من میدونم
                    -ارتباط سنکرون همواره سریع تر از ارتباط آسنکرون هست
                    -در ارتباط سنکرون نیاز به ارسال کلاک به صورت جداگانه هست ولی در ارتباط آسنکرون کلاک ارسال نمیشه
                    -ارتباط سنکرون نیاز به تعداد سیم بیشتر داره در حالی که آسنکرون دو تا بیشتر نمی خواد
                    -در ارتباط سنکرون نیاز به بیت اضافه برای تبادل دیتا نیست مثل start bit و ...
                    -سنکرون half duplex و آسنکرون full duplex
                    ------
                    -تا اونجا که میدونم بله
                    ------
                    -در آسنکرون بله [s]بیت به بیت [/s]ارسال میشه اما در سنکرون بلوک داده ارسال میشه
                    ------
                    -بالاخره یک نظم دهنده برای ارتباط هست که وظیفه هر کس رو بهش میگه و زمان بندی دریافت و ارسال رو تنظیم می کنه، اگه نبود امکان ارتباط بیش از دو وسیله مقدور نبود ولی با وجود master میشه وسایل بیستری رو مدیریت کرد.

                    -
                    The healthy human mind doesn't wake up in the morning thinking this is his last day on earth.

                    دیدگاه


                      #40
                      پاسخ : ارتباط USART در XMEGA

                      با تشکر، می بخشید که اینقدر سوال می پرسم، می خوام این مطلب خوب برام جا بافته و بفهممش.
                      این که فرمودید "سنکرون half duplex و آسنکرون full duplex" چرا این طوریه؟ مثلا ارتباط SPI هم یک ارتباط سنکرون هست که به طور full duplex انجام میشه.(درسته؟)، پس چرا در USART باید در حالت سنکرون به صورت half دربیاد؟؟
                      بعد اینکه فرمودید در "در سنکرون بلوک داده ارسال میشه" یعنی چی؟ اصلا این بیت به بیت و بلوک چه فرقی با هم دارند؟ تا جایی که من متوجه میشم مثلا در ارتباط سنکرون وقتی یک کلاک انجام میشه، در گیرنده وضعیت پایه ی RX چک میشه و اگر مقدار روی پایه low بود، این بدین معنا است که بیت کنونی 0 است. با کلاک بعدی مثلا اگر پین RX در گیرنده 1 باشه، بدین معنی که بیت رسیده مقداری برابر 1 دارد. خوب این میشه ارسال بیت به بیت. درسته؟ حالا ارسال بلوکی چه طوری است؟
                      تشکر

                      دیدگاه


                        #41
                        پاسخ : ارتباط USART در XMEGA

                        خواهش، پرسیدن عیب نیست،
                        جواب سوال اول برای خود من هم نا معلومه، چرا در مد سنکرون half duplex میشیم؟
                        یه تصحیح و عذر خواهی، در جواب قبلی منظور بایت به بایت بوده، ببینید منظور اینه، در اسنکرون هر فریم داده تنها از یک بایت تشکیل میشه، هر بایت بیت شروع و پایان و .. داره، اما بلوک میتونه تعداد مشخصی بایت باشه که همه با هم ارسال میشن، اینطوری اول بلوک 1 بیت استارت میشینه بعد بلوک داده مثلا 5 بایت و در اخر بیت پایان و ... که خب معلومه چقدر حجم دیتا میاد پایین
                        The healthy human mind doesn't wake up in the morning thinking this is his last day on earth.

                        دیدگاه


                          #42
                          پاسخ : طریقه استفاده از USART در XMEGA

                          با سلام کسی میدونه مقدار قرار داده شده در این تابع برای باود ریت چطوری محاسبه میشه؟
                          کد:
                          USARTD0_BAUDCTRLA=12; //Baud Rate = 9600

                          دیدگاه


                            #43
                            پاسخ : طریقه استفاده از USART در XMEGA

                            CLK2X فعال، ClkPER=32MHz ، مقدار BScale=5 مقدار مورد نظر طبق فرمول داخل منوال بدست می آید. همینطور به همراه AppNote مربوط به USART به شماره AVR1307 یک فایل Excel وجود دارد که در آن مقادیر مورد نظر در دسترس هست.
                            گاهی افرادی به موفقیت های بزرگ می رسند، تنها به این دلیل ساده که نمی دانند کاری که به آن دست زده اند بسیار دشوار، بلکه غیر ممکن است.

                            دیدگاه


                              #44
                              پاسخ : طریقه استفاده از USART در XMEGA

                              با سلام
                              فایل اکسل را پیدا نکردم اگر براتون مقدوره پلود کنید

                              دیدگاه


                                #45
                                پاسخ : طریقه استفاده از USART در XMEGA

                                از سایت زیر هم می توانید استفاده کنید:

                                http://www.avrcalc.elektronik-projek...ate_calculator
                                اوژن: به معنای افکننده و شکست دهنده است
                                دانایی، توانایی است-Knowledge is POWER
                                برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
                                وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
                                قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
                                اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
                                ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

                                دیدگاه

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