اطلاعیه

Collapse
No announcement yet.

دلیل کریستال اسیلاتور خارجی در میکرو کنترل AVR

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

    دلیل کریستال اسیلاتور خارجی در میکرو کنترل AVR

    با سلام
    من میخوام بدونم آیا همیشه کریستال خارجی لازمه؟آیا اگه نباشه کارمون راه نموفته؟
    من روی یه مدار کار میکنم که از کتابخانه های SoftwareSerial آردوینو و وقفه ها استفاده میکنه پروژم (چندین سنسور و ماژول به آردوینو وصله)با آردوینو به خوبی کار میکنه.حالا میخوام از میکرو Atmega328p-au به جای آردوینو استفاده کنم. و سنسورها و بقیه ماژول هارو به این میکرو وصل کنم.از اونجایی که مدار IOT هست و میخوام در کوچکترین اندازه باشه.میخوام ببینم بدون استفاده از کریستال خارجی پروژه به مشکل جدی بر میخوره یا فقط سرعتش میاد پایین؟

    #2
    پاسخ : دلیل کریستال اسیلاتور خارجی در میکرو کنترل AVR

    آردویینو که بصورت پیش فرض، برای اتمگا 328، 16 مگاهرتز خارجی در نظر میگیره. اگر تو برنامه سویچ کنید به مدلهای پرو مینی که ورژن 3.3 ولت دارن، اونا 8 مگاهرتز(باز هم خارجی هستن)

    یه راه اینه که خودتون دستی تنظیمات اولیه این بردا رو عوض کنید که پیشنهاد نمیشه با وجود روش دوم.
    روش دوم اینه که یه افزونه نصب کنید روی آردویینو که امکان استفاده از میکروکنترلرهای دیگه اتمل مثل atmega8 و ... رو میده. مزایاش اینه که به هر شکلی که دوس داشته باشین، میتونید تنظیمش کنید. مثلا اسیلاتور داخلی 8 مگاهرتز. که نیازی به کریستال نداره یا کلی امکانات دیگه مث اضافه کردن یا نکردن بوت لودر و اینا. از طرفی برای یه پروژه کوچیک، میتونید از همون اتمگا 8 یا حتا 48 استفاده کنید که خیلی ارزونتر از 328 ه.

    سافتور سریال، از وقفه ی تغییر حالت پین استفاده میکنه. از اونجا که وقفه ها حداقل 13 تا کلاک زمان میبرن (خالی خالی 13 تا)، پس اگر با نرخ بالا ارتباط دارید و اسیلاتور داخلی با فرکانس کم، یه مقدار اوضا بد میشه بخاطر وقفه های مداوم، اگر برنامه تون حساس به زمان باشه.
    در کل مشکل خاصی نداره.
    کریستال خارجی کلا زمانی لازمه که یا دقت مورد نیاز باشه ( اسیلاتور های rc داخلی معمولا تلرانس خطاشون بالاس، مخصوصا با تغییر دما) یا فرکانس خاصی مد نظر باشه.
    Si vis pacem, para bellum

    دیدگاه


      #3
      پاسخ : دلیل کریستال اسیلاتور خارجی در میکرو کنترل AVR

      سلام
      من با nrf24l01 کار میکنم .میخواستم با کریستال 8 مگا در آردوینو راه اندازی کنم.آیا مشکلی پیش نمیاد.؟
      نیاز به تغییر فیوز بیت هست؟

      دیدگاه


        #4
        پاسخ : دلیل کریستال اسیلاتور خارجی در میکرو کنترل AVR

        نوشته اصلی توسط ip4ht2 نمایش پست ها
        من با nrf24l01 کار میکنم .میخواستم با کریستال 8 مگا در آردوینو راه اندازی کنم.آیا مشکلی پیش نمیاد.؟
        نیاز به تغییر فیوز بیت هست؟
        با سلام و احترام
        آیا منظورتون اینه که آردوینویی که دارید کریستالش 8 مگاهرتزی هست و یا اینکه خودتون میخواهید بوت لودر روی میکرو بزنید و بعنوان آردوینو ازش استفاده کنید؟
        در هر حال فرکانس 8 مگاهرتز میکرو برای کار با nrf24l01 مشکلی ایجاد نمیکنه فقط حواستون باشه که ولتاژ تغذیه nrf24l01 نباید بیشتر از 3.6 ولت باشه ولی پایه های IO اون میتونن تا 5 ولت رو تحمل کنن.
        موفق باشید.
        جدیدترین ویرایش توسط evergreen; ۱۰:۲۲ ۱۴۰۰/۰۳/۲۰.

        دیدگاه


          #5
          پاسخ : دلیل کریستال اسیلاتور خارجی در میکرو کنترل AVR

          نوشته اصلی توسط evergreen نمایش پست ها
          با سلام و احترام
          آیا منظورتون اینه که آردوینویی که دارید کریستالش 8 مگاهرتزی هست و یا اینکه خودتون میخواهید بوت لودر روی میکرو بزنید و بعنوان آردوینو ازش استفاده کنید؟
          در هر حال فرکانس 8 مگاهرتز میکرو برای کار با nrf24l01 مشکلی ایجاد نمیکنه فقط حواستون باشه که ولتاژ تغذیه nrf24l01 نباید بیشتر از 3.6 ولت باشه ولی پایه های IO اون میتونن تا 5 ولت رو تحمل کنن.
          موفق باشید.
          سلام و احترام دوست عزیز.ممنون از پاسختون.بله روی آردوینو.با 16 مگ که زیاد کار کردم .منظورم اینه که اگر به جای کریستال 16 کریستال 8 بندازم واسه آپلود کردن برنامه هیچ تغیری نسبت به کریستال 16 نمیخواد؟ توی برد و سرعت nrf فرقی نمیکنه؟

          دلیل: ادغام دو پست برای جلوگیری از اسپم

          در ضمن یکی از دلایل اینکار چون میخوام فرستنده با باتری کار کنه خیلی راحت ترم که از 8 مگ استفاده کنم و دیرتر باتری خالی میشه
          جدیدترین ویرایش توسط ip4ht2; ۲۰:۵۳ ۱۴۰۰/۰۳/۲۱.

          دیدگاه


            #6
            پاسخ : دلیل کریستال اسیلاتور خارجی در میکرو کنترل AVR

            نوشته اصلی توسط ip4ht2 نمایش پست ها
            سلام و احترام دوست عزیز.ممنون از پاسختون.بله روی آردوینو.با 16 مگ که زیاد کار کردم .منظورم اینه که اگر به جای کریستال 16 کریستال 8 بندازم واسه آپلود کردن برنامه هیچ تغیری نسبت به کریستال 16 نمیخواد؟ توی برد و سرعت nrf فرقی نمیکنه؟

            دلیل: ادغام دو پست برای جلوگیری از اسپم

            در ضمن یکی از دلایل اینکار چون میخوام فرستنده با باتری کار کنه خیلی راحت ترم که از 8 مگ استفاده کنم و دیرتر باتری خالی میشه
            با سلام و احترام
            با تغییر سخت افزاری فرکانس کریستال، از اونجایی که کمپایلر آردویینو از فرکانس کریستال برای تولید کد مثلا در جاهایی مثل delay ها استفاده میکنه لازمه که در بخش نوع برد و پروسسور در منوی تولز تنظیم لازم رو انجام بدید و گزینه ایی رو انتخاب کنید که با کریستال جدیدتون همخونی داشته باشه. اگر نبود مجبورید در فایل boards.txt تغییرات لازم رو بدید که اون یکم پیچیدگیهای خاص خودش رو داره. تغییر فرکانس تاثیر خاصی در برد nrf نداره ولی کلا از nrf های موجود در بازار انتظار برد بالا نداشته باشید.
            موفق باشید.

            دیدگاه


              #7
              پاسخ : دلیل کریستال اسیلاتور خارجی در میکرو کنترل AVR

              سلام خدمت دوستان
              شما خیلی راحت می تونین از گیت هاب دو کتابخانه ی mini core و mega core بگیرین و تنظیمات رو دست کاری کنین
              در واقع این دو کتابخانه برای کامپایل بدون نیاز به برد آردوینو هستش

              تنظیماتی که در اختیار می ذاره رو هم می تونین مشاهده کنید که رنج وسیعی از انتخاب های ممکن رو پوشش می ده
              همیشه کامل توضیح بدهیم تا جواب کامل بگیریم.
              لطفا برای تشکر روی دکمه تشکر بزنید و بخاطر این پست نزنید که تایپیک شلوغ نشود
              تایپیک های من:
              حل تمام مشکلات atmega128a (eca.ir)
              آموزش کار با سایت (eca.ir)

              دیدگاه


                #8
                پاسخ : دلیل کریستال اسیلاتور خارجی در میکرو کنترل AVR

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

                دیدگاه


                  #9
                  پاسخ : دلیل کریستال اسیلاتور خارجی در میکرو کنترل AVR

                  نوشته اصلی توسط hoseinaghajari نمایش پست ها
                  با سلام پیرو صحبت های شما عزیزان،بنده چند بار از میکروی روی برد اردوینو برای چند عدد pcb استفاده کردم حالا نمیدونم به چه علت اما میکرو رو وقتی میذارم روی اردوینو پروگرام نمیشه اما میکرو با همان برنامه قبلی خودش کار میکنه. حس میکنم قفل شده. راهی هست برای برگردوندونش؟
                  سلام دوست عزیز
                  ظاهرا بوتلودر پاک شده .
                  برد آردوینو ی دیگری دارین؟ با استفاده از avr isp که کدش توی example برنامه ی آردوینو هست (آموزشش رو می تونین سرچ کنین) روی میکروتون مجددا بوتلودر بریزین تا بشه با برد آردوینو پروگرام کرد
                  وقتی میکروی روی برد آردوینو رو در میارین و با چیز دیگه پروگرام میکنین برنامه روی بوتلودر هم رایت میشه و اون رو پاک می کنه. بعد از این که درستش کردین دیگه با دستگاه دیگه پروگرامش نکنین
                  فیوز بیت ها رو که دستکاری نکردین؟

                  یه سوال: فقط با برد آردوینو پروگرامش کردین؟ اگه اینطوره شاید مشکل از درایور یا یه قطعه ی سخت افزاری ای چیزی باشه.
                  یه پیشنهاد: میکرو رو بذار روی برد
                  بعدش برنامه رو کامپایل کن.
                  قبل از اینکه وارد مرحله ی پروگرامینگ بشه یبارکلید ریست رو فشار بدین
                  شاید مشکل از این بخش باشه
                  همیشه کامل توضیح بدهیم تا جواب کامل بگیریم.
                  لطفا برای تشکر روی دکمه تشکر بزنید و بخاطر این پست نزنید که تایپیک شلوغ نشود
                  تایپیک های من:
                  حل تمام مشکلات atmega128a (eca.ir)
                  آموزش کار با سایت (eca.ir)

                  دیدگاه

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