من مدتیه بااین ماژول ds1307 کار میکنم اما الان به یه درگیریهایی باهاش خوردم
من ساعت و تاریخ این ماژول رو ست میکنم اما سالش رو همیشه موقع فراخوانی 2048 نمایش میده و همینطور روز هفته رو هم کلا دوشنبه میزنه . اینو باید چیکارش کنم ؟ لطفا سریعتر جواب بدین. ممنون
اینم کدم
من ساعت و تاریخ این ماژول رو ست میکنم اما سالش رو همیشه موقع فراخوانی 2048 نمایش میده و همینطور روز هفته رو هم کلا دوشنبه میزنه . اینو باید چیکارش کنم ؟ لطفا سریعتر جواب بدین. ممنون
اینم کدم
کد:
_sec = 00 _min = 54 _hour = 10 Gosub Settime Wait 2 M_day = 17 M_month = 11 _year = 2017 Gosub Setdate Do Gosub Read_date_time If _sec <> _seci_1 Then Locate 3 , 1 Lcd M_year : Lcd "/" : Lcd M_month : Lcd "/" : Lcd M_day If Weekday = 7 Then Lcd " sun" If Weekday = 1 Then Lcd " mon" If Weekday = 2 Then Lcd " tus" If Weekday = 3 Then Lcd " wen" If Weekday = 4 Then Lcd " Thr" If Weekday = 5 Then Lcd " fri" If Weekday = 6 Then Lcd " sat" Lcd " " Lcd Weekday . Locate 4 , 1 Lcd " " Locate 4 , 1 Lcd "TIME: " ; _hour ; ":" ; _min ; ":" ; _sec ; " " _seci_1 = _sec End If Loop '======================= Gsmint: Return End Check_card: Return End '======================= '******************************************************************************* '****************************** READ DATE AND TIME **************** '****************************** **************** '******************************************************************************* Read_date_time: I2cstart ' Generate start code I2cwbyte Ds1307w ' send address I2cwbyte 0 ' start address in 1307 I2cstart ' Generate start code I2cwbyte Ds1307r ' send address I2crbyte _sec , Ack I2crbyte _min , Ack ' MINUTES I2crbyte _hour , Ack ' Hours I2crbyte Weekday , Ack ' Day of Week I2crbyte M_day , Ack ' Day of Month I2crbyte M_month , Ack ' Month of Year I2crbyte _year , Nack ' Year I2cstop _sec = Makedec(_sec) : _min = Makedec(_min) : _hour = Makedec(_hour) M_day = Makedec(m_day) : M_month = Makedec(m_month) : _year = Makedec(_year) M_year = 2000 + _year Weekday = Makedec(weekday) Return '******************************************************************************* '****************************** **************** 'WWW.ISEEE.IR ***************** SET TIME **************** '****************************** **************** '******************************************************************************* Settime: _sec = Makebcd(_sec) : _min = Makebcd(_min) : _hour = Makebcd(_hour) I2cstart ' Generate start code I2cwbyte Ds1307w ' send address I2cwbyte 0 ' starting address in 1307 I2cwbyte _sec ' Send Data to SECONDS I2cwbyte _min ' MINUTES I2cwbyte _hour ' Hours I2cstop Return '******************************************************************************* '****************************** **************** 'WWW.ISEEE.IR ***************** SET DATE **************** '****************************** **************** '******************************************************************************* Setdate: _year = M_year - 2000 M_day = Makebcd(m_day) : M_month = Makebcd(m_month) : _year = Makebcd(_year) I2cstart ' Generate start code I2cwbyte Ds1307w ' send address I2cwbyte 4 ' starting address in 1307 I2cwbyte M_day ' Send Data to SECONDS I2cwbyte M_month ' MINUTES I2cwbyte _year ' Hours I2cstop Return
دیدگاه