NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 3875 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
صفحه 1 از 3 123 آخرینآخرین
نمایش نتایج: از 1 به 20 از 41

موضوع: RTC با ds1307

  1. #1
    کاربر علاقه مند hamid6568 آواتار ها
    تاریخ عضویت
    Nov 2010
    نام
    حمید
    نوشته ها
    46
    تشکر
    26
    تشکر شده 10 بار در 8 پست

    Exclamation RTC با ds1307

    سلام
    رفقا میخوام با ds1307 و با بسکام ساعت و تاریخ رو نشون بدم
    کسی تاحالا کار کرده؟
    چجوری میتونم به ds1307 زمان بدم که ازون زمان شروع کنه؟
    چجوری زمانشو بخونم؟

  2. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نام
    Advertising world
    نوشته ها
    Many
     

  3. #2
    کاربر فعال
    تاریخ عضویت
    Jul 2010
    نام
    مرتضی مجتهدی
    نوشته ها
    313
    تشکر
    1
    تشکر شده 358 بار در 203 پست

    پیش فرض

    خود بیسکام مثالش رو داره. تنها نکته مهم که بخاطرش مدتی افراد معطل میشن بیت با ارزش ثانیه هست که خود دیتا شیت هم تاکید کرده :
    Please note that the initial power-on state of all registers is not defined. Therefore, it is important to
    enable the oscillator (CH bit = 0) during initial configuration.

  4. تشکرها از این نوشته :


  5. #3
    همکار rfbook آواتار ها
    تاریخ عضویت
    Dec 2009
    نام
    سعید علیان
    نوشته ها
    193
    تشکر
    160
    تشکر شده 458 بار در 139 پست

    پیش فرض

    http://yazdkit.com/ds1307-clock-i2c-124.html
    فايل هاي پيوست شده فايل هاي پيوست شده
    www.hoperf12.ir

    وبسایت تخصصی ماژول های RF



  6. کاربران : 2 تشکر کرده اند از شما rfbook برای ارسال این پست سودمند:


  7. #4
    کاربر علاقه مند abbas1371sa آواتار ها
    تاریخ عضویت
    Aug 2008
    نوشته ها
    46
    تشکر
    15
    تشکر شده 9 بار در 8 پست

    Red face ds1307

    سلام
    کد برنامه برای ساعت و تاریخ و ایام هفته با lcd کاراکتری
    البته این فقط یک مدار ساعته ساده است (برای آزمایش)



    $regfile = "m16def.dat"
    $crystal = 1000000
    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Db4 = Pind.2 , Db5 = Pind.3 , Db6 = Pind.4 , Db7 = Pind.5 , Rs = Pind.0 , E = Pind.1
    Config Portb = Input



    $lib "mcsbyte.lbx"
    $lib "ds1307clock.lib"
    Enable Interrupts

    Config Sda = Portc.1
    Config Scl = Portc.0
    Const Ds1307w = &HD0
    Const Ds1307r = &HD1
    Config Clock = User


    Dim Weekday As Byte
    Dim A As Word
    Dim B As String * 10
    Cursor Off

    Do

    If Weekday = 1 Then
    B = "sunday"
    End If
    If Weekday = 2 Then
    B = "monday"
    End If
    If Weekday = 3 Then
    B = "tuesday"
    End If
    If Weekday = 4 Then
    B = "wednesday"
    End If
    If Weekday = 5 Then
    B = "thursday"
    End If
    If Weekday = 6 Then
    B = "friday"
    End If
    If Weekday = 7 Then
    B = "saturday"
    End If

    Locate 1 , 1
    Gosub Getdatetime
    Lcd "" ; _hour ; ":" ; _min ; ":" ; _sec
    Locate 2 , 1
    Lcd "" ; _year ; "/" ; _month ; "/" ; _day
    Locate 2 , 9
    Lcd B
    If _sec = 59 Then
    Cls
    End If
    Loop
    End

    '************************************************* ******************************
    برای خواندن ساعت از این زیر برنامه استفاده میشه:
    Getdatetime:
    I2cstart
    I2cwbyte Ds1307w
    I2cwbyte 0
    I2cstart
    I2cwbyte Ds1307r
    I2crbyte _sec , Ack
    I2crbyte _min , Ack
    I2crbyte _hour , Ack
    I2crbyte Weekday , Ack
    I2crbyte _day , Ack
    I2crbyte _month , Ack
    I2crbyte _year , Nack
    I2cstop
    _sec = Makedec(_sec) : _min = Makedec(_min) : _hour = Makedec(_hour)
    _day = Makedec(_day) : _month = Makedec(_month) : _year = Makedec(_year)
    Weekday = Makebcd(weekday)

    Return
    اگه میخوایی تاریخ رو به اون بدی به این زیر برنامه برو و متغیر های _day_month_year_ رو مقدار دهی کن ( با سریال و کامپیوتر - کیبورد و ...)
    Setdate:
    _day = Makebcd(_day) : _month = Makebcd(_month) : _year = Makebcd(_year)
    I2cstart
    I2cwbyte Ds1307w
    I2cwbyte 4
    I2cwbyte _day
    I2cwbyte _month
    I2cwbyte _year
    I2cwbyte Weekday
    I2cstop
    Return
    گه میخوایی ساعت رو به اون بدی به این زیر برنامه برو و متغیر های _sec_min_hour را مقدار دهی کن
    Settime:
    _sec = Makebcd(_sec) : _min = Makebcd(_min) : _hour = Makebcd(_hour) : Weekday = Makebcd(weekday)
    I2cstart
    I2cwbyte Ds1307w
    I2cwbyte 0
    I2cwbyte _sec
    I2cwbyte _min
    I2cwbyte _hour
    I2cwbyte Weekday
    I2cstop
    Return




  8. کاربران : 2 تشکر کرده اند از شما abbas1371sa برای ارسال این پست سودمند:


  9. #5
    مدیر باز نشسته ROBOMAN آواتار ها
    تاریخ عضویت
    Jul 2007
    نام
    ايران
    نوشته ها
    186
    تشکر
    243
    تشکر شده 206 بار در 74 پست

    پیش فرض

    سلام
    من نیاز به کاربا تاریخ شمسی توی بسکام با 1307 دارم ،آیا لایبرری که توش تاریخ میلادی به شمسی تبدیل شده باشه وجود داره ؟(اگه هست سورس یا لایبرری)

  10. #6
    کاربر علاقه مند esmaeil21 آواتار ها
    تاریخ عضویت
    Oct 2010
    نام
    اسماعيل شادمان
    نوشته ها
    23
    تشکر
    45
    تشکر شده 25 بار در 11 پست

    پیش فرض

    سلام
    اين برنامه رو من براي يه ماشين جوجه كشي نوشته بودم كه توش تاريخ شمسي هم داره بگردي ساب روتينشو (sub shamsi) پيدا ميكني .فايل پروتئوسش هم هست.
    اگه مشكل داشتي درخدمتم.
    فايل هاي پيوست شده فايل هاي پيوست شده
    • نوع فایل: rar j m32.rar (22.0 کیلو بایت, 245 نمايش)

  11. کاربران : 3 تشکر کرده اند از شما esmaeil21 برای ارسال این پست سودمند:


  12. #7
    کاربر علاقه مند hamid6568 آواتار ها
    تاریخ عضویت
    Nov 2010
    نام
    حمید
    نوشته ها
    46
    تشکر
    26
    تشکر شده 10 بار در 8 پست

    پیش فرض

    به این تایپیکم یه نگاهی بنداز توش تقویم شمسی اومده.
    من که هنوز امتحانش نکردم اگر کار کردی یه آمار بده.
    http://www.eca.ir/forum2/index.php?topic=38492.30

  13. #8
    مدیر باز نشسته ROBOMAN آواتار ها
    تاریخ عضویت
    Jul 2007
    نام
    ايران
    نوشته ها
    186
    تشکر
    243
    تشکر شده 206 بار در 74 پست

    پیش فرض

    سلام
    ممنون
    تونستم با همون برنامه esmaeil21 تاریخ و ساعت رو درست تغییر بدم و درستش کنم اما نتونستم به صورت دستی سال و ماه و روز رو کم و زیاد کنم ،ساعت رو تغییر دادم ولی تاریخ رو با 3 تا کلید کم و زیاد کنم

  14. #9
    ناظم انجمن Ma3ood آواتار ها
    تاریخ عضویت
    Aug 2011
    نام
    مسعود
    نوشته ها
    2,248
    تشکر
    1,912
    تشکر شده 3,087 بار در 1,509 پست

    پیش فرض

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

  15. #10
    مدیر بخش STM32 sigma-mx آواتار ها
    تاریخ عضویت
    Nov 2009
    نام
    سعید شریفیان
    نوشته ها
    1,421
    تشکر
    804
    تشکر شده 2,520 بار در 978 پست

    پیش فرض

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

  16. تشکرها از این نوشته :


  17. #11
    ناظم انجمن Ma3ood آواتار ها
    تاریخ عضویت
    Aug 2011
    نام
    مسعود
    نوشته ها
    2,248
    تشکر
    1,912
    تشکر شده 3,087 بار در 1,509 پست

    پیش فرض

    نقل قول نوشته اصلی توسط sigma-mx نمایش پست ها
    تغییراتی نباید داد . بخش بکآپ کاملا جدا از مساله رجیسترها ست . اگر تغذیه قطع بشه و باطری به پایه بک آپ وصل باشه رجیستر ساعت و تاریخ به کارشون ادامه میدن تا زمانی که برق دوباره وصل بشه و میکرو اطلاعات ساعت و تاریخ رو از آیسی بخونه .
    ممنون بابت جوابتون
    مشکل از چی میتونه باشه جالبه اینه که ساعت میره از اونجایی که تغذیه قطع شده شروع میکنه
    نمی دونم از چیه 2 تا ای سی هم عوض کردم اما نشد
    وقتی باتری بک اپ داخل دستگاه هست باید ای سی کار کنه نباید اطلاعات رو حفظ کنه

  18. #12
    مدیر بخش STM32 sigma-mx آواتار ها
    تاریخ عضویت
    Nov 2009
    نام
    سعید شریفیان
    نوشته ها
    1,421
    تشکر
    804
    تشکر شده 2,520 بار در 978 پست

    پیش فرض

    اگه شماتیک رو قرار بدید بهتر میتونم کمکتون کنم .. شاید یه نکته ای باشه که شما رعایت نکردی ..!

  19. تشکرها از این نوشته :


  20. #13
    ناظم انجمن Ma3ood آواتار ها
    تاریخ عضویت
    Aug 2011
    نام
    مسعود
    نوشته ها
    2,248
    تشکر
    1,912
    تشکر شده 3,087 بار در 1,509 پست

    پیش فرض

    شماتیک دقیقا مانند دیتا شیت بسته شده
    یعنی دو مقاومت 4.7 کیلو برای پول اپ خط i2c (پایه های 6و 5)
    تغذیه به پایه 8
    زمین به پایه 4
    کریستال به پایه 1و2
    و باتری بک اپ لیتیومی به پایه 3 ( طرف مثبتش و منفی به زمین مدار)
    پایه 7 را همین جوری رها کردم !!!


  21. #14
    ناظم انجمن Ma3ood آواتار ها
    تاریخ عضویت
    Aug 2011
    نام
    مسعود
    نوشته ها
    2,248
    تشکر
    1,912
    تشکر شده 3,087 بار در 1,509 پست

    پیش فرض

    نقل قول نوشته اصلی توسط masoud70 نمایش پست ها
    شماتیک دقیقا مانند دیتا شیت بسته شده
    یعنی دو مقاومت 4.7 کیلو برای پول اپ خط i2c (پایه های 6و 5)
    تغذیه به پایه 8
    زمین به پایه 4
    کریستال به پایه 1و2
    و باتری بک اپ لیتیومی به پایه 3 ( طرف مثبتش و منفی به زمین مدار)
    پایه 7 را همین جوری رها کردم !!!

    مشکل رفع شد
    مشکل از ای سی بوده احتمالا
    فعلا که داره کار میکنه

  22. #15
    مدیر بخش STM32 sigma-mx آواتار ها
    تاریخ عضویت
    Nov 2009
    نام
    سعید شریفیان
    نوشته ها
    1,421
    تشکر
    804
    تشکر شده 2,520 بار در 978 پست

    پیش فرض

    خب خدا رو شکر

  23. #16
    مدیر باز نشسته shayanmelody آواتار ها
    تاریخ عضویت
    Jan 2011
    نام
    شایان نیکزاد
    نوشته ها
    576
    تشکر
    283
    تشکر شده 1,038 بار در 473 پست

    پیش فرض

    يه چيز جالب !
    من براي بار اول ميام تو برنامم زمان رو تنظيم ميكنم و برنامه جديد رو ميريزم تو ميكرو و به خوبي همه چيز كار ميكنه
    بار دوم ميام اون خط تنظيم زمان رو از برنامه حذف ميكنم و برنامه رو ميريزم تو ميكرو كه اگه ميكرو ريست شد دوباره زمان تنظيم نشه
    تا اينجا قبول ؟!
    بعد اينكه برنامه دوم رو ريختم يكم صبر ميكنم تا زمان اضافه شه بعدش تغذيه مدار رو قطع و وصل ميكنم (باطري بكاپ به آي سي 1307 وصله)
    كاملا انتظار دارم كه زمان طبق حالت عادي بره جلو ، اما تراشه واس هر 3 مقدار ثانيه ، دقيقه و ساعت عدد 80 رو برميگردونه !!!!!!!!!!
    كسي ميدونه ممكنه اشكال از چي باشه ؟!‌



    بعد از چند وقت برگشتم



  24. #17
    مدیر بخش STM32 sigma-mx آواتار ها
    تاریخ عضویت
    Nov 2009
    نام
    سعید شریفیان
    نوشته ها
    1,421
    تشکر
    804
    تشکر شده 2,520 بار در 978 پست

    پیش فرض

    معمولا این جور ایرادها مربوط به ست نشدن صحیح یا ایراد لایببری هست .. از چه کامپایلری استفاده میکنید ؟

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

  25. #18
    مدیر باز نشسته shayanmelody آواتار ها
    تاریخ عضویت
    Jan 2011
    نام
    شایان نیکزاد
    نوشته ها
    576
    تشکر
    283
    تشکر شده 1,038 بار در 473 پست

    پیش فرض

    كامپايلر كدويژن 2.05 هست
    قبل از اينكه تغذيه برد رو قطع كنم همه چيز خوب كار ميكنه ، اما بعد اينكه تغذيه قطع و سپس وصل ميشه ديگه كار نميكنه !



    بعد از چند وقت برگشتم



  26. #19
    کاربر فعال
    تاریخ عضویت
    Jul 2010
    نام
    مرتضی مجتهدی
    نوشته ها
    313
    تشکر
    1
    تشکر شده 358 بار در 203 پست

    پیش فرض

    فکر کنم قبلا هم گفتم، این آی سی پیش فرض بیت مربوط به شروع به کارش که آخرین بیت ثانیه هست روو وضعیت غیر فعال هست. هر بار باطری این آی سی جدا شد باید مقداری توو ثانیه نوشته بشه تا شروع به کار کنه.

  27. #20
    ناظم انجمن Ma3ood آواتار ها
    تاریخ عضویت
    Aug 2011
    نام
    مسعود
    نوشته ها
    2,248
    تشکر
    1,912
    تشکر شده 3,087 بار در 1,509 پست

    Gadid

    نقل قول نوشته اصلی توسط shayanmelody نمایش پست ها
    يه چيز جالب !
    من براي بار اول ميام تو برنامم زمان رو تنظيم ميكنم و برنامه جديد رو ميريزم تو ميكرو و به خوبي همه چيز كار ميكنه
    بار دوم ميام اون خط تنظيم زمان رو از برنامه حذف ميكنم و برنامه رو ميريزم تو ميكرو كه اگه ميكرو ريست شد دوباره زمان تنظيم نشه
    تا اينجا قبول ؟!
    بعد اينكه برنامه دوم رو ريختم يكم صبر ميكنم تا زمان اضافه شه بعدش تغذيه مدار رو قطع و وصل ميكنم (باطري بكاپ به آي سي 1307 وصله)
    كاملا انتظار دارم كه زمان طبق حالت عادي بره جلو ، اما تراشه واس هر 3 مقدار ثانيه ، دقيقه و ساعت عدد 80 رو برميگردونه !!!!!!!!!!
    كسي ميدونه ممكنه اشكال از چي باشه ؟!‌
    ببین برنامه ات درسته ( استاد مایی شما)
    منم همچین مشکلی داشتم از دو چیز مطئن شو
    1- باتری بک اپ کاملا محکم سر جاشه
    2- تراشه کاملا سالمه ( این مورد مهمه تره چون خیلی تا حالا سر کارم گذاشته این Ds 1307)
    تراشه رو تعویض کن

صفحه 1 از 3 123 آخرینآخرین

موضوعات مشابه

  1. کتابخانه ds1307
    توسط titery در انجمن LPC series (NXP)
    پاسخ: 10
    آخرين نوشته: 07-06-2014, 18:27
  2. ds1307
    توسط abolfazlk873 در انجمن PIC
    پاسخ: 2
    آخرين نوشته: 25-03-2014, 19:00
  3. ds1307 در اسمبلی ؟
    توسط Deadman در انجمن AVR
    پاسخ: 1
    آخرين نوشته: 11-02-2014, 19:55
  4. Ds1307
    توسط cmuiran در انجمن LPC series (NXP)
    پاسخ: 32
    آخرين نوشته: 02-12-2013, 12:44
  5. ds1307
    توسط pooriya_nic18 در انجمن AVR
    پاسخ: 1
    آخرين نوشته: 25-10-2013, 23:34

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •