Koda: |
Podatkicas = Mid(podatki_prejeto , 11 , 15) 'podatkicas=02112015223344 Stringtobyte = Mid(podatkicas , 1 , 2) 'dobi dan _day = Val(stringtobyte) Stringtobyte = Mid(podatkicas , 3 , 2) 'dobi mesec _month = Val(stringtobyte) Stringtobyte = Mid(podatkicas , 7 , 2) 'dobi leto (samo zadnji dve številki: 15) _year = Val(stringtobyte) Stringtobyte = Mid(podatkicas , 9 , 2) 'dobi ura _hour = Val(stringtobyte) Stringtobyte = Mid(podatkicas , 11 , 2) 'dobi minuta _min = Val(stringtobyte) Stringtobyte = Mid(podatkicas , 13 , 2) 'dobi sekunda _sec = Val(stringtobyte) Gosub Setdate Waitms 100 Gosub Settime Waitms 100 Gosub Getdatetime If _day < 10 Then Strday = "0" + Str(_day ) Else Strday = Str(_day ) End If If _month < 10 Then Strmonth = "0" + Str(_month ) Else Strmonth = Str(_month ) End If Stryear = "20" + Str(_year ) If _hour < 10 Then Strhour = "0" + Str(_hour ) Else Strhour = Str(_hour) End If If _min < 10 Then Strmin = "0" + Str(_min ) Else Strmin = Str(_min ) End If If _sec < 10 Then Strsec = "0" + Str(_sec ) Else Strsec = Str(_sec ) End If Print Strday ; Strmonth ; Stryear ; Strhour ; Strmin ; Strsec Getdatetime: 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 ' minute I2crbyte _hour , Ack ' ure I2crbyte _day , Ack ' dan I2crbyte _month , Ack ' mesec I2crbyte _year , Nack ' leto I2cstop _sec = Makedec(_sec) : _min = Makedec(_min) : _hour = Makedec(_hour) _day = Makedec(_day) : _month = Makedec(_month) : _year = Makedec(_year) Return Setdate: _day = Makebcd(_day) : _month = Makebcd(_month) : _year = Makebcd(_year) I2cstart ' Generate start code I2cwbyte Ds1307w ' send address I2cwbyte 4 ' starting address in 1307 I2cwbyte _day ' dan I2cwbyte _month ' mesec I2cwbyte _year ' leto I2cstop Waitms 10 Return 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 ' sekunde I2cwbyte _min ' minute I2cwbyte _hour ' ure I2cstop Waitms 10 Return |
joze je napisal/a: |
Dan v tednu je od 1 do 7, kaj je kaj, določiš sam, jaz ponavadi rečem, da je 1 ponedeljek, 7 pa nedelja (dan se pri nas začne s ponedeljkom).
Kako določiš sam, kaj ni vezan na datum (dan)? Če pogledaš na kolendar za določeni datum (dan), vidiš kateri dan v tednu je. Se motim? |
Koda: |
I2crbyte _Weekday , Ack |
Koda: |
Getdatetime: 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 ' sekunde I2crbyte _min , Ack ' minute I2crbyte _hour , Ack ' ure I2crbyte _Weekday , Ack ' < GLEJ TUKAJ I2crbyte _day , Ack ' dan I2crbyte _month , Ack ' mesec I2crbyte _year , Nack ' leto I2cstop _sec = Makedec(_sec) : _min = Makedec(_min) : _hour = Makedec(_hour) _day = Makedec(_day) : _month = Makedec(_month) : _year = Makedec(_year) Return |