اطلاعیه

Collapse
No announcement yet.

خواندن از روی clk out

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

    خواندن از روی clk out

    سلا دوستان
    میخواییم rtc داخلی راه بندازیم عقب میفته
    برای rtc کالیبره کنم نیاز به این دارم که کلاک rtc بخونم
    اینجوری که فهمیدم ار دیتاشیت پایه p1.27 کلاک خوند اما هرکاری میکنم نمیشه :cry2:

    #2
    پاسخ : خواندن از روی clk out

    میکروی شما چیه؟
    حقیقتش من اصلا نفهمیدم شما چی گفتین.

    دیدگاه


      #3
      پاسخ : خواندن از روی clk out

      مهندس ببخشید
      میکرو lpc1768
      هدف ما اینه که بتونیم rtc داخلی دقیقی داشته باشیم چون کریستال های که ما داریم به اسم 32.768khz میخریم ولی احتمال داره 32.766 یا 32.769 این چیزا باشه که عامل خطا به حساب میاد
      برای اینکه ما بتونیم rtc دقیقی داشته باشیم یک خطا یاب یا کتاب خونه () اومده راه حل ارائه داده میگه که مقدار فرکانس کریستال بهم بگو من مقدار خطا رو برات کم یا زیاد میکنم !
      بحث سر اینه مقدار چطور اندازه بگیرم !

      چطور میتونم از clk out مقدار فرکانس rtc بخونم !
      اگه میشه این مثال یک نگاه بندازین
      ممنون میشم

      http://uplod.ir/pfqhotss9z3t/rtc_calibration_project.zip.htm

      دیدگاه


        #4
        پاسخ : خواندن از روی clk out

        یعنی چی "چطور میتونم از clk out مقدار فرکانس rtc بخونم !"؟ یعنی ابزار ندارید؟

        دیدگاه


          #5
          پاسخ : خواندن از روی clk out

          در اصل یه قابلیت سخت افزاری نه [s]کتاب خونه[/s] و ..........

          Calibration counter allows adjustment to better than 1 sec/day with 1 sec resolution.




          مثالش رو CMSIS گذاشته :

          @Example description:
          Purpose:
          This example describes how to calibrate real-time clock
          Process:
          The calibration logic can periodically adjust the time counter either by not
          incrementing the ocunter, or by incrementing the counter by 2 instead 1. This
          allow calibrating the RTC oscillator under some typical voltage and temperature
          conditions without the need to externally trim the RTC oscillator
          In this example:
          - Calibration setting:
          + Calibration value = 5s;
          + Direction: Forward calibration
          - Real-time clock setting:
          + enable incrementing second counter interrupt
          After each 5s, real-time clock will adjust automatically by incrementing the counter
          by 2 instead of 1. You can observe calibration process via serial display.


          از جمله ی رفتگان این راه دراز
          باز آمده ای کو که به ما گوید راز
          هان بر سر این دو راهه از روی نیاز
          چیزی نگذاری که نمی آیی باز

          دیدگاه


            #6
            پاسخ : خواندن از روی clk out

            بله این قابلیت سخت افزاری rtc داخلی کلا به این شکل عمل می کنه که اکه ساعت برای مثال هر 5 تانیه یک تانیه جلو میفته backward calibration مقدار تانیه رو رو عدد قبلی نکه می داره و اکر عقب بیفته forwad calibration 2 دوتانیه به اون اضافه میکنه ، البته باید کلاک واقعی rtc رو از روی clkout یا همون p1.27 بخونید و در کتابخونه rtc.h که قرارداده شده تعریف کنید

            دیدگاه


              #7
              پاسخ : خواندن از روی clk out

              برای اینکه فرکانس واقعی رو بدست بیارید باید تعداد بالسهای کلاک روی p1.27 رو در یک تانیه شمرد. ولی کانفیکشو مطمین نیستم البته باید تو pinsel3 اول فانکشن مربوط به clkou رو فعال کرد بعدش فکر میکنم تو رجیستر configout مقدار تقسیم کننده و سورس کلاک رو مشخص کرد ، بازم اکه کسی اطلاعاتی تو این زمینه داره ممنون میشم بیشتر توضیح بده

              دیدگاه


                #8
                پاسخ : خواندن از روی clk out

                این رو ببینید :
                http://www.nxp.com/documents/other/r...on_project.zip

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

                دیدگاه


                  #9
                  پاسخ : خواندن از روی clk out


                  بله میشه CLKout رو روی پین 1.27 داشت باید رجیستر CLKOUTCFG = 0x104 مقدار دهی کنی
                  pinselect رو هم1 باید بدی. این پین فقط تو پکیج 80 پین موجوده
                  و برای محاسبه از این فرمول استفاده میشه:

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

                  حالا بجای استفاده از اسیلوسکوپ میشه از تایمر داخلی استفاده کرد.
                  تو همین سمپل هم همین کار رو کرده .
                  لبته باید کلاک واقعی rtc رو از روی clkout یا همون p1.27 بخونید و در کتابخونه rtc.h که قرارداده شده تعریف کنید
                  این فقط برای این سمپل کده
                  از جمله ی رفتگان این راه دراز
                  باز آمده ای کو که به ما گوید راز
                  هان بر سر این دو راهه از روی نیاز
                  چیزی نگذاری که نمی آیی باز

                  دیدگاه


                    #10
                    پاسخ : خواندن از روی clk out

                    من وقتی تو اول برنامه system_init رو بر می دارم روی این بایه کلاک می خوره یعنی باید pll رو غیر فعال کرد?این طوری کلاک تایمر رو جطوری باید 1hz کرد?

                    دیدگاه


                      #11
                      پاسخ : خواندن از روی clk out

                      نوشته اصلی توسط saeidmo
                      من وقتی تو اول برنامه system_init رو بر می دارم روی این بایه کلاک می خوره یعنی باید pll رو غیر فعال کرد?این طوری کلاک تایمر رو جطوری باید 1hz کرد?
                      یعنی بعد از اینیشیال و کانفیگی که بالا گفتم رو پین کلاک ندارید؟
                      از جمله ی رفتگان این راه دراز
                      باز آمده ای کو که به ما گوید راز
                      هان بر سر این دو راهه از روی نیاز
                      چیزی نگذاری که نمی آیی باز

                      دیدگاه


                        #12
                        پاسخ : خواندن از روی clk out

                        بله تا زمانی که systeminit رو بر ندارم البته اینم بکم که این کانفیکارو میشه تو wizard configoration ،systemlpc17.c هم انجام داد

                        دیدگاه


                          #13
                          پاسخ : خواندن از روی clk out

                          نوشته اصلی توسط saeidmo
                          بله تا زمانی که systeminit رو بر ندارم البته اینم بکم که این کانفیکارو میشه تو wizard configoration ،systemlpc17.c هم انجام داد
                          ببخشید درست متوجه منظور شما نشدم ! الان دقیقا مشکل چیه ؟
                          از جمله ی رفتگان این راه دراز
                          باز آمده ای کو که به ما گوید راز
                          هان بر سر این دو راهه از روی نیاز
                          چیزی نگذاری که نمی آیی باز

                          دیدگاه


                            #14
                            پاسخ : خواندن از روی clk out

                            مشکلی که من دارم اینه که می خوام بدون این که pllرو بردارم با زدن یک کلید وبا خوندن clkout بتونم rtc رو کالیبره کنم ولی نمیدونم جرا وقتی pll فعال میشه روی p1.27 کلاک نداریم

                            دیدگاه


                              #15
                              پاسخ : خواندن از روی clk out

                              میخاستم این کد رو برای شما تست کنم که با اتصال jlink به هدر برد 1768 jlink ام پرید کلا ! :eek:

                              کد:
                              SystemInit();
                              LPC_PINCON->PINSEL3=(0x1<<22);
                              LPC_SC->CLKOUTCFG|=(0x4<<0);
                              حالا شما تست کن .
                              از جمله ی رفتگان این راه دراز
                              باز آمده ای کو که به ما گوید راز
                              هان بر سر این دو راهه از روی نیاز
                              چیزی نگذاری که نمی آیی باز

                              دیدگاه

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