من مدتیه بااین ماژول 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


دیدگاه