اطلاعیه

Collapse
No announcement yet.

|مشکل با DS1307| نمایش ساعت و تاریخ به صورت 165:165:165

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

    |مشکل با DS1307| نمایش ساعت و تاریخ به صورت 165:165:165

    سلام دوستان :angry: :angry:
    قضیه از این قراره که تو پروتئوس به زیبایی جواب میده، اما در عمل ساعت و تاریخ رو 165:165:165 نشون میده oo:
    - جای SDL , SCL رو عوض کردم
    - باتری بکاپ گذاشتم
    - مقاومتهای پول پ رو 10k , 47k گذاشتم
    اما بازم فرقی نکرد(انصافا نگید که برای کریستالش خازن بذار که حوصلشو ندارم دنبال خازن بگردم :angry
    برنامه رو هم با CV نوشتم
    به نظرتون چه مرگشه؟!! :angry:
    پیشاپیش ممنون از توجهتون...
    اونچيزي که در دانشگاه ياد ميگيريد، "الفبايي" هست براي نوشتن يک "رمان" !!

    #2
    پاسخ : |شکلک کوبیدن سر به دیوار!!|: مشکل تکراری اما پابرجا با DS1307

    نوشته اصلی توسط ☺بابابرقی☺
    سلام دوستان :angry: :angry:
    قضیه از این قراره که تو پروتئوس به زیبایی جواب میده، اما در عمل ساعت و تاریخ رو 165:165:165 نشون میده oo:
    - جای SDL , SCL رو عوض کردم
    - باتری بکاپ گذاشتم
    - مقاومتهای پول پ رو 10k , 47k گذاشتم
    اما بازم فرقی نکرد(انصافا نگید که برای کریستالش خازن بذار که حوصلشو ندارم دنبال خازن بگردم :angry
    برنامه رو هم با CV نوشتم
    به نظرتون چه مرگشه؟!! :angry:
    پیشاپیش ممنون از توجهتون...
    تا ساغت و دقیقه و مخصوصا ثانیه رو مقدار دهی اولیه و درست نکنین ds شروع به شمارش نمیکنه
    در ضمن حتی اگر کریستا هم نداشته باشه بازم کار میکنه فقظ خیلی کند میشماره
    پروردگارا: به من زيستني عطا کن که در لحظه مرگ بر بي ثمري لحظه اي که براي زيستن گذشته است حسرت نخورم، و مردني عطا کن که بر بيهودگيش سوگوار نباشم. بگذار تا آن را خود انتخاب کنم، اما آنچنان که تو دوست ميداري

    دیدگاه


      #3
      پاسخ : |شکلک کوبیدن سر به دیوار!!|: مشکل تکراری اما پابرجا با DS1307

      نوشته اصلی توسط امیر حسنی کاخکی
      تا ساغت و دقیقه و مخصوصا ثانیه رو مقدار دهی اولیه و درست نکنین ds شروع به شمارش نمیکنه
      در ضمن حتی اگر کریستا هم نداشته باشه بازم کار میکنه فقظ خیلی کند میشماره
      ممنون امیرجان
      مقدار دهی اولیه هم کردم اما بازم :angry:
      راستی ولتاژ SDL , SCL رو که میگیرم 4.7 میزنه، اگه ds1307 دم دستتون هست این دوپایه رو اندازه بگیرید ببینید چقدره(شاید براتون عجیب باشه- شایدم نباشه oo:- اما من گاهی اوقات که عقلم به جایی قد نمیده با این روش مدارام رو عیبیابی میکنم)
      اونچيزي که در دانشگاه ياد ميگيريد، "الفبايي" هست براي نوشتن يک "رمان" !!

      دیدگاه


        #4
        پاسخ : |شکلک کوبیدن سر به دیوار!!|: مشکل تکراری اما پابرجا با DS1307

        با سلام، :bye

        یکی از علل کار نکردن DS1307 ممکنه مربوط به خراب بودن خود کریستال باشه و علت دوم ممکنه اشتباه وارد کردن آدرسش باشه ( 0xD0 ) و مورد دیگه هم ممکنه تداخلش با پروگرامر باشه!

        پس اگر از مگا 64 یا 128 استفاده میکنی، پروگرامر رو از مدار جدا کن، آدرس RTC رو چک کن که 0xD0 باشه و در نهایت، اگر مشکل حل نشد، کریستال رو عوض کن....

        ( کریستالش، خازن نمیخواد، مقاومت های پول پ هم همگی 4K7 خوبن )

        مادامی که از شخصی یاد میشود، او و افکارش زنده اند ....

        Sh_Nourbakhsh@Yahoo.com

        http://s2.picofile.com/file/7170362468/_Wall_e_.jp

        دیدگاه


          #5
          پاسخ : |شکلک کوبیدن سر به دیوار!!|: مشکل تکراری اما پابرجا با DS1307

          نوشته اصلی توسط aivhl
          با سلام، :bye

          یکی از علل کار نکردن DS1307 ممکنه مربوط به خراب بودن خود کریستال باشه و علت دوم ممکنه اشتباه وارد کردن آدرسش باشه ( 0xD0 ) و مورد دیگه هم ممکنه تداخلش با پروگرامر باشه!

          پس اگر از مگا 64 یا 128 استفاده میکنی، پروگرامر رو از مدار جدا کن، آدرس RTC رو چک کن که 0xD0 باشه و در نهایت، اگر مشکل حل نشد، کریستال رو عوض کن....

          سلام خدمت جناب نوربخش عزیز
          - آدرس درست وارد شده(یعنی خود CV درست وارد کرده! کتابخونش رو چک کردم )
          - فعلا مگا32، پروگرمر در مدار نیست
          - کریستال هم عوض شد
          - نتیجه oo: :angry: :angry:
          راستی این هم اگه براتون مقدوره، زحمتش رو بکشید لطفا
          اگه ds1307 دم دستتون هست این دوپایه رو اندازه بگیرید ببینید چقدره
          اونچيزي که در دانشگاه ياد ميگيريد، "الفبايي" هست براي نوشتن يک "رمان" !!

          دیدگاه


            #6
            پاسخ : |شکلک کوبیدن سر به دیوار!!|: مشکل تکراری اما پابرجا با DS1307

            نوشته اصلی توسط ☺بابابرقی☺
            ممنون امیرجان
            مقدار دهی اولیه هم کردم اما بازم :angry:
            راستی ولتاژ SDL , SCL رو که میگیرم 4.7 میزنه، اگه ds1307 دم دستتون هست این دوپایه رو اندازه بگیرید ببینید چقدره(شاید براتون عجیب باشه- شایدم نباشه oo:- اما من گاهی اوقات که عقلم به جایی قد نمیده با این روش مدارام رو عیبیابی میکنم)
            هر چند ربطی نداشت ولی بازم تست کردم
            4.8 ولت روی هر پایه
            یک مشکل دیگه هم که خودم یک بار بهش برخوردم این بود که جهت باطری بک پ رو اشتباه گذاشته بودم کلا ds کار نمیکرد !
            (مقدار دهی که کردین ثبت آی سی شد؟ یعنی دوباره که ای سی رو خوندین اعداد تغییر کرده بود؟)
            راستی روی پورت C اگه بستین JTAG رو غیر فعال کردین دیگه نه؟
            پروردگارا: به من زيستني عطا کن که در لحظه مرگ بر بي ثمري لحظه اي که براي زيستن گذشته است حسرت نخورم، و مردني عطا کن که بر بيهودگيش سوگوار نباشم. بگذار تا آن را خود انتخاب کنم، اما آنچنان که تو دوست ميداري

            دیدگاه


              #7
              پاسخ : |شکلک کوبیدن سر به دیوار!!|: مشکل تکراری اما پابرجا با DS1307

              نوشته اصلی توسط ☺بابابرقی☺
              سلام دوستان :angry: :angry:
              قضیه از این قراره که تو پروتئوس به زیبایی جواب میده، اما در عمل ساعت و تاریخ رو 165:165:165 نشون میده oo:
              - جای SDL , SCL رو عوض کردم
              - باتری بکاپ گذاشتم
              - مقاومتهای پول پ رو 10k , 47k گذاشتم
              اما بازم فرقی نکرد(انصافا نگید که برای کریستالش خازن بذار که حوصلشو ندارم دنبال خازن بگردم :angry
              برنامه رو هم با CV نوشتم
              به نظرتون چه مرگشه؟!! :angry:
              پیشاپیش ممنون از توجهتون...
              این آی سی به تغذیه اش خیلی حساسه و این عدد معمولا زمانی خونده می شه که تغذیه مناسب نباشد.البته بافرض اینکه ارتباط درست باشد.
              پس اول تغذیه را تست کنید که اتصالی نداشته باشد.ریپل نداشته باشد.خازن در نزدیکه آی سی بگذارید 100 نانو و 10 میکرو بد نیست...
              حتی اگر تنظیم اولیه هم نکنید.حتی اگر کریستال نداشته باشد نباید این عدد رو بخونید.
              باتری BACK رو فعلا بردارید و اون پایه ی آی سی رو که مربوط به باتری BACK هست رو حتماً زمین کنید....
              اگر نشد خبر بدید..

              دیدگاه


                #8
                پاسخ : |شکلک کوبیدن سر به دیوار!!|: مشکل تکراری اما پابرجا با DS1307

                یه مقدار رو بریز توی رم اضافی 1307 بعد اون مقدار رو دوباره بخون اگر مقدار درست بود که پروتکل ارتباطیت مقاومت های پول پت و رابط i2c مشکل نداره و مشکل میتونه از باطری بک پ و یا کریستال باشه اگرم نتونستی مقدار رو درست بخونی بدون که مشکل از سخت افزارت و یا مخصوصا باطریه البته من خودم قبلا با یه مشکل شبیه به این برخوردم که تاریخ و ساعت رو مقداردهی کردم درست شد حالا شما میگی که اینکار رو انجام دادی نشده oo: حیف که با avr کار میکنی اگر با pic کار میکردی چند تا برنامه برات میزاشتم حال کنی :wow:
                گل سرخ گل سرخ است و خار , خار . نه خار بد است و نه گل سرخ خوب . اگر انسان از روي زمين محو شود , گلها آنجا خواهند بود و خارها نيز آنجا . اما ديگر كسي نيست كه بگويد گلهاي سرخ خوبند و خارها بد !

                دیدگاه


                  #9
                  پاسخ : |شکلک کوبیدن سر به دیوار!!|: مشکل تکراری اما پابرجا با DS1307

                  نوشته اصلی توسط امیر حسنی کاخکی
                  هر چند ربطی نداشت ولی بازم تست کردم
                  4.8 ولت روی هر پایه
                  یک مشکل دیگه هم که خودم یک بار بهش برخوردم این بود که جهت باطری بک پ رو اشتباه گذاشته بودم کلا ds کار نمیکرد !
                  (مقدار دهی که کردین ثبت آی سی شد؟ یعنی دوباره که ای سی رو خوندین اعداد تغییر کرده بود؟)
                  راستی روی پورت C اگه بستین JTAG رو غیر فعال کردین دیگه نه؟
                  ممنون
                  - جهت باتری درسته
                  - بله ثبت شد، تو پروتئوس جواب میده اما عملی مقدار اشتباه خونده میشه: 165
                  - حواسم به JTAG هست، رو پورت B,A چک کردم، بنا بر احتیاط پورت A رو هم فقط DS وصل کردم
                  اینو تو یه سایت خارجکی نوشته بود:
                  // I2C Bus initialization
                  i2c_init();
                  if (i2c_start() == 0)
                  sprintf(time, "BUS NOT FREE"
                  else if (i2c_write(0xD0))
                  sprintf(time, "GOOD SLAVE"
                  else
                  sprintf(time, "BAD SLAVE"
                  i2c_stop();
                  lcd_init16);
                  lcd_puts(time);
                  delay_ms(1000);
                  برای تست ارتباط
                  برای من BUS NOT FREE میده!!!
                  اونچيزي که در دانشگاه ياد ميگيريد، "الفبايي" هست براي نوشتن يک "رمان" !!

                  دیدگاه


                    #10
                    پاسخ : |شکلک کوبیدن سر به دیوار!!|: مشکل تکراری اما پابرجا با DS1307

                    نوشته اصلی توسط vala.v
                    این آی سی به تغذیه اش خیلی حساسه و این عدد معمولا زمانی خونده می شه که تغذیه مناسب نباشد.البته بافرض اینکه ارتباط درست باشد.
                    پس اول تغذیه را تست کنید که اتصالی نداشته باشد.ریپل نداشته باشد.خازن در نزدیکه آی سی بگذارید 100 نانو و 10 میکرو بد نیست...
                    حتی اگر تنظیم اولیه هم نکنید.حتی اگر کریستال نداشته باشد نباید این عدد رو بخونید.
                    باتری BACK رو فعلا بردارید و اون پایه ی آی سی رو که مربوط به باتری BACK هست رو حتماً زمین کنید....
                    اگر نشد خبر بدید..
                    ممنون
                    بدون بکاپ هم همین مشکلو دارم(پایه 3 که مربوط به باتری بکاپ میشد رو هم زمین کرده بودم اما بازهم :angry
                    اونچيزي که در دانشگاه ياد ميگيريد، "الفبايي" هست براي نوشتن يک "رمان" !!

                    دیدگاه


                      #11
                      پاسخ : |شکلک کوبیدن سر به دیوار!!|: مشکل تکراری اما پابرجا با DS1307

                      نوشته اصلی توسط mojtaba.asgari
                      یه مقدار رو بریز توی رم اضافی 1307 بعد اون مقدار رو دوباره بخون اگر مقدار درست بود که پروتکل ارتباطیت مقاومت های پول پت و رابط i2c مشکل نداره و مشکل میتونه از باطری بک پ و یا کریستال باشه اگرم نتونستی مقدار رو درست بخونی بدون که مشکل از سخت افزارت و یا مخصوصا باطریه البته من خودم قبلا با یه مشکل شبیه به این برخوردم که تاریخ و ساعت رو مقداردهی کردم درست شد حالا شما میگی که اینکار رو انجام دادی نشده oo: حیف که با avr کار میکنی اگر با pic کار میکردی چند تا برنامه برات میزاشتم حال کنی
                      ممنون
                      این راه حل جالبیه برای تست صحت ic و ارتباط، فکر میکنم منظورتون شبیه اون کدی هست که داخل پست 8 گذاشتم که BUS NOT FREE میده oo:
                      یکم کدهام رو دستکاری کنم ببینم به کجا میرسه، احتمال داره IC 1307 مورددار باشه :sad:
                      (کاش میشد یکی از دوستان یه ds1307 سالم واسم "میل" کنه تا از صحت مدار و برنامه مطمئن شم :mrgreen
                      اونچيزي که در دانشگاه ياد ميگيريد، "الفبايي" هست براي نوشتن يک "رمان" !!

                      دیدگاه


                        #12
                        پاسخ : |مشکل با DS1307| نمایش ساعت و تاریخ به صورت 165:165:165

                        فرکانس خود میکرو هم مهمه ها
                        فکر کنم زیر 4Mhz نباید باشه!!
                        (این مورد برا خودم پیش اومده بود، گفتم بگم شاید بدرد بخوره!! :mrgreen: :mrgreen

                        دیدگاه


                          #13
                          پاسخ : |مشکل با DS1307| نمایش ساعت و تاریخ به صورت 165:165:165

                          نوشته اصلی توسط akbari.maj
                          فرکانس خود میکرو هم مهمه ها
                          فکر کنم زیر 4Mhz نباید باشه!!
                          (این مورد برا خودم پیش اومده بود، گفتم بگم شاید بدرد بخوره!! :mrgreen: :mrgreen
                          ممنون
                          فرکانس 8و16 هم جواب نداده...

                          پایین نوشت: بهتره اسم تاپیک رو به "کاملترین مرجع مشکلات DS1307 " تغییر بدیم، آخه اینجا دوستان مشکلات و راه حل هایی رو مطرح کردند که بعضا تو نت هم نبوده و فکر میکنم این برای افراد دیگه هم مفید خواهد بود"
                          اونچيزي که در دانشگاه ياد ميگيريد، "الفبايي" هست براي نوشتن يک "رمان" !!

                          دیدگاه


                            #14
                            پاسخ : |مشکل با DS1307| نمایش ساعت و تاریخ به صورت 165:165:165

                            خب
                            اومدم و دستی مقادیری رو write , read کردم، نتیجه این شد:
                            مثلا زدم:
                            rtc_write(0XA5,120); //a
                            یعنی تو خونه 0xA5 مقدار 120 رو بریز، بعدش همون خونه رو خوندمش:
                            j= rtc_read(0XA5); //a
                            اما نتیجه ثابت و 255 بود!!
                            وقتی خونه مربوط به YEAR رو هم میخوندم باز هم نتیجه 255 بود و اگه از دستورات خود CV استفاده میکردم 165 میبود!
                            خلاصه اینکه IC انگار دستور نوشتن در حافظه RTC عمل نمیکرد و خوندن هم همینطور(در هر صورت عدد 255 رو برمیگردوند)
                            احتمالش هست IC سوخته باشه؟
                            اونچيزي که در دانشگاه ياد ميگيريد، "الفبايي" هست براي نوشتن يک "رمان" !!

                            دیدگاه


                              #15
                              پاسخ : |مشکل با DS1307| نمایش ساعت و تاریخ به صورت 165:165:165

                              یه کار دیگه هم میتونی برای تست پروتکل و سخت افزار ارتباطیت بکنی این که 1307 رو ازجاش دربیاری و تست کنی ببینی عددی که میخونی همونه :redface:
                              امیدوارم هرچه زودتر نتیجه بگیری
                              نوشته اصلی توسط akbari.maj
                              فرکانس خود میکرو هم مهمه ها
                              فکر کنم زیر 4Mhz نباید باشه!!
                              (این مورد برا خودم پیش اومده بود، گفتم بگم شاید بدرد بخوره!! :mrgreen: :mrgreen
                              من با pic با نواع مختلف فرکانسها با 1307 کارکردم تاحالا مورد اینطوری ندیدم!!!

                              نوشته اصلی توسط vala.v
                              این آی سی به تغذیه اش خیلی حساسه و این عدد معمولا زمانی خونده می شه که تغذیه مناسب نباشد.البته بافرض اینکه ارتباط درست باشد.
                              پس اول تغذیه را تست کنید که اتصالی نداشته باشد.ریپل نداشته باشد.خازن در نزدیکه آی سی بگذارید 100 نانو و 10 میکرو بد نیست...
                              حتی اگر تنظیم اولیه هم نکنید.حتی اگر کریستال نداشته باشد نباید این عدد رو بخونید.
                              باتری BACK رو فعلا بردارید و اون پایه ی آی سی رو که مربوط به باتری BACK هست رو حتماً زمین کنید....
                              اگر نشد خبر بدید..
                              تغذیه این آیسی فقط در دقت اون تاثیر داره مثلا وقتی تغیه مدار خوب نباشه شاید زمان رو دقیق نشون نده
                              گل سرخ گل سرخ است و خار , خار . نه خار بد است و نه گل سرخ خوب . اگر انسان از روي زمين محو شود , گلها آنجا خواهند بود و خارها نيز آنجا . اما ديگر كسي نيست كه بگويد گلهاي سرخ خوبند و خارها بد !

                              دیدگاه

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