اطلاعیه

Collapse
No announcement yet.

کلاک میکرو

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

    کلاک میکرو

    سلام به همه دوستان
    برد من کریستالش 18.432 هستش منم بر همین اساس تایمرو تنظیم کردم اما نمیدونم چرا دقیق در نمیاد یعنی با پالسی که میخوام خیلی تفاوت داره من تنظیمات وایزاردPLL رو تغییر ندادم ممکنه که MCK اینی که من در نظر گرفتم نباشه؟ وایزارد رو نگاه کردم MULL =25 وDIV=5 بود
    تورو خدا یکی کمکم کنه چطور بفهمم فرکانس میکروم الان رو چند کار میکنه

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

    ترجیحا شک کردن به فرکانس اسیلاتور یا کریستالتون رو بذار برای آخر کار. فعلا برو سر تنظیمات فیوز بیتهای میکرو و مطمئن شو که این تنظیمات برای کلاک external تنظیم شده باشه. بهترین راه برای فهمیدن این موضوع هم اینه که یه برنامه ساده بنویسی با delay که یه پورت میکرو رو هر یک ثانیه صفر و یک بکنه و با مولتی متر (یا اسکپ) ببینید. اگه نتیجه درست بود قدم بعدی بررسی تنظیمات تایمر هست که دوباره باید دیتاشیت رو مطالعه کنی

    دیدگاه


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

      یعنی از تابع delay استفاده کنم؟
      تابع delay با کلاک 18.432 تنظیم شده؟

      دیدگاه


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

        آقا من این کاری رو که شما گفتی انجام دادم . یه led با تابع delay هر 500ms روشن خاموش کردم زمانش درست بود اما یه مقدار گیج شدم . این config wizard به چه دردی میخوره توی همین برنامم mull =25 و div=5 و prescaler=clock/2 بود حساب کردم با این وضعیت کلاک میکرو میشه 46mh نمیدونم درسته اما هرچی تغییرش میدم تاثیری به حال روند برنامه نداره. این فیوز بیت هایی که شما گفتید منظورتون همین قسمت بود دیگه؟

        دیدگاه


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

          1- توابع delay با توجه به مقدار کلاک و مقدار درخواستی شما تاخیر ایجاد میکنند و بر اساس یه کلاک خاص مثل 18.432 تنظیم نمیشن
          2- اگه led همون نیم ثانیه روشن خاموش میشه معنیش اینه که تنظیمات کلاک و مقدار فرکانستون درسته
          3- با محاسبات شما فرکانس در اومده 46MHz و این یعنی اینکه شما باید دوباره دیتا شیت رو بخونید چون به نظر میرسه برداشتتون از مطالب درست نبوده
          4- متاسفانه من ARM کار نکردم و براساس تجربه از روی کارهایی که با میکروهای دیگه کردم سعی میکنم راهنمایی کنم امیدوارم مفید باشه

          دیدگاه


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

            من فکر میکنم آرم اصلا فیوز بیت نداشته باشه
            همش همین رجیستر هاست

            دیدگاه


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

              مگه اینجوری حساب نمیشه؟
              mck=18.432*mul/2div

              دیدگاه


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

                آقا خواهشن ارجاع نده یه جا دیگه :angry:

                دیدگاه


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

                  نوشته اصلی توسط meh1011
                  مگه اینجوری حساب نمیشه؟
                  mck=18.432*(mul+1)/(prescaler*div)
                  mul = 124
                  div = 24

                  pre = 2

                  mck = 48mhz
                  گشتی در لاله زار
                  http://www.eca.ir/forum2/index.php?topic=76138.0

                  http://www.eca.ir/forum2/index.php?topic=76141

                  دیدگاه


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

                    مرسی آقای solsal
                    ولی من جوابمو نگرفتم هنوز .
                    من میگم دارم با تایمر کار میکنم برای تولید یه زمان خاص با دوره خواص . من فرکانسمو باید 18.432 بگیرم یا همین 48 ؟ اندازه پالسم درست به دست نمیاد ! تازه این وایزارد به نظرم کار نمیکنه چون هرچی اعداد mul و div رو تغیر میدم ، هیچ اتفاقی نمیفته ؟!!!! :angry:

                    دیدگاه


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

                      هیچ اطلاعاتی نمیدی میکروت چیه با چه نرم افزاری کار می کنی...
                      اگه نرم افزار keil که ویزاردش باید درست کار کنه.
                      اگه میکرو at91sam7 باشه، اولا که اینا فیوز بیت ندارن فقط رجیستر هست

                      کلاک MCK کلاکی هست که به پریفرال ها میره. در اکثر موارد با MCK کار می کنی. این که با چه تقسیمی از MCK ، باید پریفرال مورد نظر رو تو دیتاشیت ببینی. یا کلاک ورودی ثابت، یا میشه انتخاب کرد. بخش تایمر دیتاشیت رو ببینین 5 تا کلاک ورودی هست MCK/2 و MCK/8 و ...

                      MCK از کجا میاد؟
                      1 - SLOW CLOCK که هیچی !
                      2- MAIN CLOCK : همون کریستال
                      3- PLL CLOCK : این ورودیش MAiIL CLOCK و خروجیش همون ضرب و تقسیم ...

                      ضمنا بعد از انتخاب یکی از موارد بالا (فیلد CSS) میشه یه تقسیمی از توان 2 هم سر راهش گذاشت (فیلد PRES).
                      همش همینه. حالا دیگه باید خودت بتونی اشکالت رو پیدا کنی.

                      حالت پیشفرض کیل هم MCK از PLL میاد و تقسیم بر 2 هم داره. فکر کنم همون حدود 47-48 میشد
                      https://www.linkedin.com/in/mohammadhosseini69

                      http://zakhar.blog.ir

                      دیدگاه


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

                        نوشته اصلی توسط محمد حسینی
                        اگه نرم افزار keil که ویزاردش باید درست کار کنه.
                        اگه میکرو at91sam7 باشه، اولا که اینا فیوز بیت ندارن فقط رجیستر هست
                        میکروم آره همین at91sam7x256 هستش . یعنی برای این میکرو نیمشه از وایزارد استفاده کرد؟ اصلا منظور از فیوز بیت همین وایزارده؟


                        نوشته اصلی توسط محمد حسینی
                        MCK از کجا میاد؟
                        1 - SLOW CLOCK که هیچی !
                        2- MAIN CLOCK : همون کریستال
                        3- PLL CLOCK : این ورودیش MAiIL CLOCK و خروجیش همون ضرب و تقسیم ...

                        ضمنا بعد از انتخاب یکی از موارد بالا (فیلد CSS) میشه یه تقسیمی از توان 2 هم سر راهش گذاشت (فیلد PRES).
                        همش همینه. حالا دیگه باید خودت بتونی اشکالت رو پیدا کنی.

                        حالت پیشفرض کیل هم MCK از PLL میاد و تقسیم بر 2 هم داره. فکر کنم همون حدود 47-48 میشد
                        الان من کیل رو هیچ دست کاری نکردم . تو برنامه هم اصلا سراغ pll نرفتم پس فرکانس پیشفرض کیل 47-48 میشه من باید تایمرمو با این فرکانس تنظیم کنم درسته؟
                        انتخاب main clockو pll clock با استفاده از وایزارد میشه انجام داد؟


                        این سوالم از همش مهمتره خواهشن اینو جواب بدید، چرا مقدار mul و div رو که تغیر میدم تغییری احساس نمیکنم؟!!!

                        خیلی ممنون آقای حسینی

                        دیدگاه


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

                          الان من کیل رو هیچ دست کاری نکردم . تو برنامه هم اصلا سراغ pll نرفتم پس فرکانس پیشفرض کیل 47-48 میشه من باید تایمرمو با این فرکانس تنظیم کنم درسته؟
                          بله با توجه به اینکه MCK برابر این مقدار هست نه کلاک تایمر

                          انتخاب main clockو pll clock با استفاده از وایزارد میشه انجام داد؟
                          بله تو همون فایل SAM7.S با configuration wizard میشه

                          چرا مقدار mul و div رو که تغیر میدم تغییری احساس نمیکنم؟!!!
                          شاید فیلد CSS برابر PLL CLOCK نیست. اینو چک کن.
                          ضمنا خروجی PLL باید بین 80 تا 160 مگاهرتز باشه. اگه اعدادی برای PLL گذاشتی که خروجیش از این بیشتر شد، فیلد OUT تو قسمت PLL رو تغییر بده.
                          اصلا رو چه حسابی میگی تغییری پیدا نمی کنه؟
                          https://www.linkedin.com/in/mohammadhosseini69

                          http://zakhar.blog.ir

                          دیدگاه


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

                            نوشته اصلی توسط محمد حسینی
                            اصلا رو چه حسابی میگی تغییری پیدا نمی کنه؟
                            آخه من lcd n 96 رو که راه انداختم سرعتش پایین بود سرعت اسکن کردنش 1ثانیه(دقیق نمیدونم اما دیده میشد اسکنش شاید نیم ثانیه) طول میکشه 1 عکس نشون بده منم این mull , div رو تغیر دادم . اما هیچ اتفاقی نمی افتاد . البته اون وقت نمیدونستم سرعت حالت عادی میکرو 48 مگ هستش.

                            نوشته اصلی توسط محمد حسینی
                            شاید فیلد CSS برابر PLL CLOCK نیست. اینو چک کن.
                            ضمنا خروجی PLL باید بین 80 تا 160 مگاهرتز باشه. اگه اعدادی برای PLL گذاشتی که خروجیش از این بیشتر شد، فیلد OUT تو قسمت PLL رو تغییر بده.
                            بله همه اینا هم درسته تنظیمه . پس فرکانس میکرو از این بیشتر نمیشه؟ اما روشی برای سریع کردن اسکن lcd نیست؟ :cry2:

                            دیدگاه


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

                              فرکانس میکرو طبق دیتاشیت حداکثر می تونه 55 باشه

                              من lcd n96 رو راه ننداختم. اما خوب دلیلش واضحه
                              فرکانس PIO محدوده. مخصوصا این AT91SAM7S/X ها فرکانس PIO خیلی کمی دارن. هرچقدر فرکانس میکرو رو بالا ببری، فرکانس PIO دیگه از یه حدی بالاتر نمیره.
                              https://www.linkedin.com/in/mohammadhosseini69

                              http://zakhar.blog.ir

                              دیدگاه

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