اطلاعیه

Collapse
No announcement yet.

ساعت دقیق با Mega8L و کریستال ساعت 32768 هرتزه

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

    #16
    پاسخ : ساعت دقیق با Mega8L و کریستال ساعت 32768 هرتزه

    سلام
    تجربه ای که من توی ساخت ساعت پیدا کردم اینه که به نویز خیلی حساس هست و اگر از آداپتور معمولی و یک 7805 استفاده کنی مطمعا باشید که طی 24 ساعت یا جلو میره یا عقب میوفته
    من از آداپتورهای چینی که نسبتا خوب بودن استفاده کردم خیلی بهتر جواب داد
    حتی در 7805 خازن 104 در خروجی و در ورودی 103 گذاشتم بهترم شد
    اگر توی برنامش مشکلی داشتین میتونم کمکتون کنم

    دیدگاه


      #17
      پاسخ : ساعت دقیق با Mega8L و کریستال ساعت 32768 هرتزه

      نوشته اصلی توسط ele_sav
      این تاخیر به برنامه هست اگه دقت کنی وقتی برنامه را در شبیه ساز اجرا می کنی پردازش سیستم بالا می ره و این خطا از خود سیستم هست اگه به صورت عملی مدار رو ببندی این مشکل رو نخواهی داشت

      البته یه نکته ای که باید رعایت کنی اینه که موقع لحیم کاری کریستال نباید کریستال رو زیاد داغ کنی چون از دقتش کاسته می شه
      من سه تا کریستال الان دارم که هیچ کدوم دقیق کار نمی کنه و توی 60 دقیقه 3 دقیقه یا جلو می افته یا عقب پس این نکته رو رعایت کن
      1- کریستال رو نزدیک آی سی بزار
      2- موقع لحیم کاری زیاد گرمش نکن
      3- یک سیم رو لخت کن و ( دو دور ) دور کریستال بپیچ و به منفی وصل کن

      http://www.mediafire.com/?dpy4w3r43c1s8ns

      خب الان برای این چطور Stopwatch بذارم؟!
      یعنی مشکلم با Prescale و مقدار کریستاله که میلی ثانیه رو دقیق تولید کنه

      برای این کار هم می تونی داخل حلقه مقدار کلید رو چک کنی داخل انجمن یه سری تایپیک در این زمینه هست
      http://www.eca.ir/forum2/index.php?topic=66241.msg385847#msg385847

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

      هر کدوم رو خواستی اول چستجو کن توی انجمن اطلاعات زیادی هست اگه به نتیجه نرسیدی بگو کمکت کنیم
      مرسی راش انداختم الان داره کار میکنه و مشکلی نداره فقط توی شبیه ساز پروتئوس زمانش عقب میمونه ( ساعت با DS1307 درس کردم )
      و برای Stopwatch که نیاز به 1 میلی ثانیه دارم کریستال رو 8مگ گرفتم ، Prescale رو 8 گرفتم تا تایمر با 1مگ کلاک بخوره و توی اینتراپت مقایسه با مقدار 0x3E8 که معادل 1000 است نوشتم میلی ثانیه++ و هر 1000 تا یعنی یک ثانیه و...
      اما بازم توی شبیه سازی پروتئوس هر میلی ثانیش 2و3 ثانیه طول میکشه چرا؟! ( کریستال رو برای میکرو توی پروتئوس 8مگ داخلی انتخاب کردم )
      درایور شبکه و nRF24L01
      کاتالوگ محصولات
      کنترلر CNC شش محوره برای پرینتر 3D و Pick n Place
      شبیه ساز تک تیرانداز و سیبل دیجیتال با پردازش تصویر
      فروش اسیلوسکوپ GWinstek GOS-630FC

      دیدگاه


        #18
        استفاده از DS1307 برای ساخت ساعت و تاریخ به صورت دقیق

        خوب چون نیاز به یه ساعت دقیق دارم برای همین هر چی یاد می گیرم رو اینجا هم می زارم تا یه تایپیک خوب داشته باشیم

        تا اینجا یه ساعت ساختیم که به درستی کار می کنه ولی برای من بعضی مواقع پیش می آد که با قطع و وصل کردن رله و یا روشن و خاموش شدن مهتابی و یه سری چیزهای دیگه ساعت زمان دقیقش رو از دست می ده

        و برای این که توی برنامه نیازی نباشه یک تایمر رو برای این به کار ببریم بهتر دونستم که از آی سی DS1307 استفاده کنم
        برای این کار من این مدار رو ساختم



        البته به این خوشگلی نشده ولی خوب بد هم نشده :redface:

        راهنمای قدم به قدم ساختش ( البته به زبان انگلیسی )
        http://www.ladyada.net/learn/breakoutplus/ds1307rtc.html

        موفق باشید
        ندن ساقی صفا اهلی ، غم دنیادن آیریلماز ** گتیر دولدور گینه جامی ، بالیخ دریادن آیریلماز
        غنیمتدیر بو دم ساقی ، گتیر دولدور گنه جامی ** جهاندا رسمدور عاشق ، می و مینادن آیریلماز

        دیدگاه


          #19
          پاسخ : ساعت دقیق با Mega8L و کریستال ساعت 32768 هرتزه

          مشکل عقب افتادن زمان در شبیه سازی از پروتئوس هستش....اگه دقت کنید در ارور های زرد رنگی مینویسه که :
          simulation is not running in real Time

          دیدگاه


            #20
            پاسخ : ساعت دقیق با Mega8L و کریستال ساعت 32768 هرتزه

            نوشته اصلی توسط Behnam Omran
            مشکل عقب افتادن زمان در شبیه سازی از پروتئوس هستش....اگه دقت کنید در ارور های زرد رنگی مینویسه که :
            simulation is not running in real Time
            درسته دوست عزیز ولی با این که مدارهام رو هم روی برد سوراخ دار چیدم بعضی مواقع با این مشکل مواجه می شم مخصوصا در مورد یه مدار ( مدار گواریوم ) که بعد از گذشت یه هفته نمی دونم چرا ولی کریستال دیگه کار نمی کرد وقتی عوضش می کنم باز یه هفته کار می کنه ولی باز همون مشکل این کریستال های خراب هم واقعا خراب نمی شن روی برد های دیگه کار می کنن ولی روی همون برد نه یا خیلی تند کار می کرد یا خیلی کند توی 11 ثانیه یک دقیقه رو می شمورد و یا توی 2دقیقه و 37 ثانیه تازه یک دقیقه رو می شمورد خلاصه مشکل بود ولی الان با این روش از دیروز تا حالا هیچ مشکلی نداشته منتظر یک هفته هستم

            و قبلا بارها هم دوستان دیگه گفتن توی محیط شبیه سازی یه سری مشکلات وجود داره ( دقیق کار نکردن مدار ) حتی توی برد بورد های سوراخ دار هم نمی شه زیاد مانور داد مدارهای حساس رو حتما باید روی برد اصلی پیاده سازی کرد چون برد بورد خودش به حد کافی نویز روی مدار می ندازه و ...
            ندن ساقی صفا اهلی ، غم دنیادن آیریلماز ** گتیر دولدور گینه جامی ، بالیخ دریادن آیریلماز
            غنیمتدیر بو دم ساقی ، گتیر دولدور گنه جامی ** جهاندا رسمدور عاشق ، می و مینادن آیریلماز

            دیدگاه


              #21
              پاسخ : ساعت دقیق با Mega8L و کریستال ساعت 32768 هرتزه

              من برنامشو نوشتم و مدارشو هم بستم . تو پروتئوس درسته اما. رو برد اصلا دقیقه تکون نمی خوره
              اشکالشو اگه بگید ممنون میشم.
              کد:
              #include <mega8.h>
              #include <delay.h>
              #include <stdlib.h>
              char s,m,m1,m2,h1,h2,h;
              unsigned char segment [] = {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
              void main (void)
              {
                h1=0;
                h2=0;
                m1=0;
                m2=0;
                h=0;
                m=0;
                DDRD = 0xff;
                DDRC = 0xff;
                DDRB.0=1;
                ASSR = 0x08;
                TIMSK = 0x40; 
                TCCR2 = 0x05;
                TCNT2 = 0x00;
                OCR2 = 0x00; 
                #asm ("sei") 
                while (1)
                {
                delay_ms (1);    
                PORTC = 0x08;
                PORTD = segment [m2];
                delay_ms (1);      
                PORTC = 0x04;
                PORTD = segment [m1];  
                delay_ms (1);    
                PORTC = 0x02;
                PORTD = segment [h2];
                delay_ms (1);    
                PORTC = 0x01;
                PORTD = segment [h1];  
              }}
              interrupt [TIM2_OVF] void timer2_ovf_isr (void)
              {
                if (s<59)
                {
                  s++;
                  PORTB.0=~PORTB.0;
                }
                else
                {
                  s=0;
                  m++;
                  m1 = m/10;
                  m2 = m%10;
                 }
                if (m<59)
                {
                  h++;
                }
                else
                {
                  m = 0;
                  h1 = h/10;
                  h2 = h%10;
                }  
              }

              دیدگاه


                #22
                پاسخ : ساعت دقیق با Mega8L و کریستال ساعت 32768 هرتزه

                دوستان کسی نظری نداره ؟

                دیدگاه


                  #23
                  پاسخ : ساعت دقیق با Mega8L و کریستال ساعت 32768 هرتزه

                  سلام.
                  1.پروتوس برنامه ای نسبتا هوشمنده و تمام مقدمات مدارات را اوتماتیک رفع میکنه مثلا اگر برای میکرو تغذیه هم در نظر نگیریم خودش در نظر میگیره و مدار در پروتوس کار میکنه.
                  2. منم این مشکل رو داشتم و مدارم توی پروتوس به خوبی کار میکرد یعنی برنامه درست بود ولی در عمل نه بعد دو تا خازن 22 نانو به پایه های کریستال 32768 اضافه کردم و مدار کار کرد
                  منبع پالس هم دیفالت یک مگاهرتز داخلیه بود و مگا8

                  دیدگاه


                    #24
                    پاسخ : ساعت دقیق با Mega8L و کریستال ساعت 32768 هرتزه

                    سلام دوستان . من کریستال 32736 هم به میکرو و هم به ds1307 وصل میکنم ولی خطا داره یا عقب میفته و یا جلو میفته . وقتی هم که کریستال برمیدارم . باز هم کار میکنه یعنی نویز میفته روش . وقتی خازن 22pf میزارم میزان نویز خیلی کم میشه . عیب از چی میتونه باشه که جلو میره ؟؟؟

                    دیدگاه


                      #25
                      پاسخ : ساعت دقیق با Mega8L و کریستال ساعت 32768 هرتزه

                      سلام به همه ، من چند پروژه ساعت و روز شمار با کریستال ساعت ساختم ، در بعضی از مدارها بدون هیچ مشکلی روزشمارم کار میکنه ولی در بعضی از اونها بعد از چند روز مدارات یه روز رو چهار پنج روز میشمارن

                      دیدگاه


                        #26
                        پاسخ : ساعت دقیق با Mega8L و کریستال ساعت 32768 هرتزه

                        کدت را بفرست احتمالا از اونه.

                        دیدگاه


                          #27
                          پاسخ : ساعت دقیق با Mega8L و کریستال ساعت 32768 هرتزه

                          باعرض سلام و خسته نباشید.میخواستم ببینم این پروژه های روز شمار با قطع برق حافظشون هم به طور کامل پاک میشه؟ینی اگه روز 12 برق بره و بیاد از روز 1 شروع به شمارش میکنه؟ اگر جواب مثبت هس پیشنهادی برای حل این مشکل دارید؟
                          باتشکر

                          دیدگاه

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