<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.mcselec.com/bavr/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.mcselec.com/bavr/index.php?action=history&amp;feed=atom&amp;title=DAYOFWEEK</id>
		<title>DAYOFWEEK - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.mcselec.com/bavr/index.php?action=history&amp;feed=atom&amp;title=DAYOFWEEK"/>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=DAYOFWEEK&amp;action=history"/>
		<updated>2026-04-17T08:53:42Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.18.6</generator>

	<entry>
		<id>http://wiki.mcselec.com/bavr/index.php?title=DAYOFWEEK&amp;diff=567&amp;oldid=prev</id>
		<title>Admin: Created page with &quot;= &lt;span class=&quot;f_Header&quot;&gt;Action&lt;/span&gt; =  Returns the Day of the Week of a Date.  &lt;span style=&quot;font-family: Arial;&quot;&gt;&amp;nbsp;&lt;/span&gt;  &lt;span style=&quot;font-family: Arial;&quot;&gt;&amp;nbsp;&lt;/sp...&quot;</title>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=DAYOFWEEK&amp;diff=567&amp;oldid=prev"/>
				<updated>2013-02-08T13:49:32Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Action&amp;lt;/span&amp;gt; =  Returns the Day of the Week of a Date.  &amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt; &amp;lt;/span&amp;gt;  &amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt; &amp;lt;/sp...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Action&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
Returns the Day of the Week of a Date.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Syntax&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
Target =&amp;amp;nbsp;&amp;lt;span class=&amp;quot;f_Syntax&amp;quot;&amp;gt;DayOfWeek&amp;lt;/span&amp;gt;()&lt;br /&gt;
&lt;br /&gt;
Target =&amp;amp;nbsp;&amp;lt;span class=&amp;quot;f_Syntax&amp;quot;&amp;gt;DayOfWeek&amp;lt;/span&amp;gt;(bDayMonthYear)&lt;br /&gt;
&lt;br /&gt;
Target =&amp;amp;nbsp;&amp;lt;span class=&amp;quot;f_Syntax&amp;quot;&amp;gt;DayOfWeek&amp;lt;/span&amp;gt;(strDate)&lt;br /&gt;
&lt;br /&gt;
Target =&amp;amp;nbsp;&amp;lt;span class=&amp;quot;f_Syntax&amp;quot;&amp;gt;DayOfWeek&amp;lt;/span&amp;gt;(wSysDay)&lt;br /&gt;
&lt;br /&gt;
Target =&amp;amp;nbsp;&amp;lt;span class=&amp;quot;f_Syntax&amp;quot;&amp;gt;DayOfWeek&amp;lt;/span&amp;gt;(lSysSec)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Remarks&amp;lt;/span&amp;gt; =&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px; margin: 0px 0px 0px 4px;&amp;quot;&amp;gt;&lt;br /&gt;
{| width=&amp;quot;609&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 2px solid rgb(0, 0, 0); border-spacing: 0px; border-collapse: collapse;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;23%&amp;quot; style=&amp;quot;width: 136px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
Target&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;width: 464px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
A Byte – variable, that is assigned with the day of the week&lt;br /&gt;
&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;23%&amp;quot; style=&amp;quot;width: 136px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
BDayMonthYear&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;width: 464px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
A Byte – variable, which holds the Day-value followed by Month(Byte) and Year (Byte)&lt;br /&gt;
&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;23%&amp;quot; style=&amp;quot;width: 136px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
StrDate&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;width: 464px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
A String, which holds a Date-String in the format specified in the&lt;br /&gt;
&lt;br /&gt;
CONFIG DATE statement&lt;br /&gt;
&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;23%&amp;quot; style=&amp;quot;width: 136px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
WSysDay&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;width: 464px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
A Word – variable, which holds the System Day (SysDay)&lt;br /&gt;
&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;23%&amp;quot; style=&amp;quot;width: 136px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
LSysSec&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;width: 464px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
A Long – variable, which holds the System Second (SysSec)&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Function can be used with five different kind of Input:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px; margin: 0px 0px 0px 35px;&amp;quot;&amp;gt;&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;baseline&amp;quot; style=&amp;quot;vertical-align: baseline;&amp;quot;&lt;br /&gt;
| width=&amp;quot;15&amp;quot; | &amp;lt;span style=&amp;quot;font-size: 10pt;&amp;quot;&amp;gt;1.&amp;lt;/span&amp;gt;&lt;br /&gt;
| Without any parameter. The internal Date-values of SOFTCLOCK (_day, _month, _year) are used.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;padding: 0px; margin: 0px 0px 0px 35px;&amp;quot;&amp;gt;&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;baseline&amp;quot; style=&amp;quot;vertical-align: baseline;&amp;quot;&lt;br /&gt;
| width=&amp;quot;15&amp;quot; | &amp;lt;span style=&amp;quot;font-size: 10pt;&amp;quot;&amp;gt;2.&amp;lt;/span&amp;gt;&lt;br /&gt;
| With a user defined date array. It must be arranged in same way (Day, Month, Year) as the internal SOFTCLOCK date. The first Byte (Day) is the input by this kind of usage. So the Day of the Week can be calculated of every date.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;padding: 0px; margin: 0px 0px 0px 35px;&amp;quot;&amp;gt;&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;baseline&amp;quot; style=&amp;quot;vertical-align: baseline;&amp;quot;&lt;br /&gt;
| width=&amp;quot;15&amp;quot; | &amp;lt;span style=&amp;quot;font-size: 10pt;&amp;quot;&amp;gt;3.&amp;lt;/span&amp;gt;&lt;br /&gt;
| With a Date-String. The date-string must be in the Format specified in the Config Date Statement&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;padding: 0px; margin: 0px 0px 0px 35px;&amp;quot;&amp;gt;&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;baseline&amp;quot; style=&amp;quot;vertical-align: baseline;&amp;quot;&lt;br /&gt;
| width=&amp;quot;15&amp;quot; | &amp;lt;span style=&amp;quot;font-size: 10pt;&amp;quot;&amp;gt;4.&amp;lt;/span&amp;gt;&lt;br /&gt;
| With a System Day – Number.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;div style=&amp;quot;padding: 0px; margin: 0px 0px 0px 35px;&amp;quot;&amp;gt;&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; cellspacing=&amp;quot;0&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;baseline&amp;quot; style=&amp;quot;vertical-align: baseline;&amp;quot;&lt;br /&gt;
| width=&amp;quot;15&amp;quot; | &amp;lt;span style=&amp;quot;font-size: 10pt;&amp;quot;&amp;gt;5.&amp;lt;/span&amp;gt;&lt;br /&gt;
| With a System Second - Number&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Return-Value is in the range of 0 to 6, Monday starts with 0.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Function is valid in the 21th century (from 2000-01-01 to 2099-12-31).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;See Also&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
[[DATETIME|Date and Time routines]]&amp;amp;nbsp;,&amp;amp;nbsp;[[CONFIG DATE|CONFIG DATE]]&amp;amp;nbsp;,&amp;amp;nbsp;[[CONFIG CLOCK|CONFIG CLOCK]],&amp;amp;nbsp;[[SYSDAY]],&amp;amp;nbsp;[[SYSSEC]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Example&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;source lang=&amp;quot;bascomavr&amp;quot;&amp;gt;&lt;br /&gt;
'-----------------------------------------------------------------------------------------&lt;br /&gt;
'name : datetime_test1,bas&lt;br /&gt;
'copyright : (c) 1995-2005, MCS Electronics&lt;br /&gt;
'purpose : show how to use the Date-Time routines from the DateTime.Lib&lt;br /&gt;
'micro : Mega103&lt;br /&gt;
'suited for demo : no&lt;br /&gt;
'commercial addon needed : no&lt;br /&gt;
'-----------------------------------------------------------------------------------------&lt;br /&gt;
 &lt;br /&gt;
$regfile = &amp;quot;m103def.dat&amp;quot; ' specify the used micro&lt;br /&gt;
$crystal = 4000000 ' used crystal frequency&lt;br /&gt;
$baud = 19200 ' use baud rate&lt;br /&gt;
$hwstack = 32 ' default use 32 for the hardware stack&lt;br /&gt;
$swstack = 10 ' default use 10 for the SW stack&lt;br /&gt;
$framesize = 40 ' default use 40 for the frame space&lt;br /&gt;
 &lt;br /&gt;
Const Clockmode = 1&lt;br /&gt;
'use i2c for the clock&lt;br /&gt;
 &lt;br /&gt;
#if Clockmode = 1&lt;br /&gt;
Config Clock = Soft ' we use build in clock&lt;br /&gt;
Disable Interrupts&lt;br /&gt;
#else&lt;br /&gt;
Config Clock = User ' we use I2C for the clock&lt;br /&gt;
'configure the scl and sda pins&lt;br /&gt;
Config Sda = Portd.6&lt;br /&gt;
Config Scl = Portd.5&lt;br /&gt;
 &lt;br /&gt;
'address of ds1307&lt;br /&gt;
Const Ds1307w = &amp;amp;HD0 ' Addresses of Ds1307 clock&lt;br /&gt;
Const Ds1307r = &amp;amp;HD1&lt;br /&gt;
#endif&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
'configure the date format&lt;br /&gt;
Config Date = Ymd , Separator = - ' ANSI-Format&lt;br /&gt;
'This sample does not have the clock started so interrupts are not enabled&lt;br /&gt;
' Enable Interrupts&lt;br /&gt;
 &lt;br /&gt;
'dim the used variables&lt;br /&gt;
Dim Lvar1 As Long&lt;br /&gt;
Dim Mday As Byte&lt;br /&gt;
Dim Bweekday As Byte , Strweekday As String * 10&lt;br /&gt;
Dim Strdate As String * 8&lt;br /&gt;
Dim Strtime As String * 8&lt;br /&gt;
Dim Bsec As Byte , Bmin As Byte , Bhour As Byte&lt;br /&gt;
Dim Bday As Byte , Bmonth As Byte , Byear As Byte&lt;br /&gt;
Dim Lsecofday As Long&lt;br /&gt;
Dim Wsysday As Word&lt;br /&gt;
Dim Lsyssec As Long&lt;br /&gt;
Dim Wdayofyear As Word&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' =================== DayOfWeek =============================================&lt;br /&gt;
' Example 1 with internal RTC-Clock&lt;br /&gt;
 &lt;br /&gt;
_day = 4 : _month = 11 : _year = 2 ' Load RTC-Clock for example - testing&lt;br /&gt;
Bweekday = Dayofweek()&lt;br /&gt;
Strweekday = Lookupstr(bweekday , Weekdays)&lt;br /&gt;
Print &amp;quot;Weekday-Number of &amp;quot; ; Date$ ; &amp;quot; is &amp;quot; ; Bweekday ; &amp;quot; = &amp;quot; ; Strweekday&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 2 with defined Clock - Bytes (Day / Month / Year)&lt;br /&gt;
Bday = 26 : Bmonth = 11 : Byear = 2&lt;br /&gt;
Bweekday = Dayofweek(bday)&lt;br /&gt;
Strweekday = Lookupstr(bweekday , Weekdays)&lt;br /&gt;
Strdate = Date(bday)&lt;br /&gt;
Print &amp;quot;Weekday-Number of Day=&amp;quot; ; Bday ; &amp;quot; Month=&amp;quot; ; Bmonth ; &amp;quot; Year=&amp;quot; ; Byear ; &amp;quot; is &amp;quot; ; Bweekday ; &amp;quot; (&amp;quot; ; Date(bday) ; &amp;quot;) = &amp;quot; ; Strweekday&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 3 with System Day&lt;br /&gt;
Wsysday = 2000 ' that is 2005-06-23&lt;br /&gt;
Bweekday = Dayofweek(wsysday)&lt;br /&gt;
Strweekday = Lookupstr(bweekday , Weekdays)&lt;br /&gt;
Print &amp;quot;Weekday-Number of System Day &amp;quot; ; Wsysday ; &amp;quot; (&amp;quot; ; Date(wsysday) ; &amp;quot;) is &amp;quot; ; Bweekday ; &amp;quot; = &amp;quot; ; Strweekday&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 4 with System Second&lt;br /&gt;
Lsyssec = 123456789 ' that is 2003-11-29 at 21:33:09&lt;br /&gt;
Bweekday = Dayofweek(lsyssec)&lt;br /&gt;
Strweekday = Lookupstr(bweekday , Weekdays)&lt;br /&gt;
Print &amp;quot;Weekday-Number of System Second &amp;quot; ; Lsyssec ; &amp;quot; (&amp;quot; ; Date(lsyssec) ; &amp;quot;) is &amp;quot; ; Bweekday ; &amp;quot; = &amp;quot; ; Strweekday&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 5 with Date-String&lt;br /&gt;
Strdate = &amp;quot;04-11-02&amp;quot; ' we have configured Date in ANSI&lt;br /&gt;
Bweekday = Dayofweek(strdate)&lt;br /&gt;
Strweekday = Lookupstr(bweekday , Weekdays)&lt;br /&gt;
Print &amp;quot;Weekday-Number of &amp;quot; ; Strdate ; &amp;quot; is &amp;quot; ; Bweekday ; &amp;quot; = &amp;quot; ; Strweekday&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' ================= Second of Day =============================================&lt;br /&gt;
' Example 1 with internal RTC-Clock&lt;br /&gt;
_sec = 12 : _min = 30 : _hour = 18 ' Load RTC-Clock for example - testing&lt;br /&gt;
 &lt;br /&gt;
Lsecofday = Secofday()&lt;br /&gt;
Print &amp;quot;Second of Day of &amp;quot; ; Time$ ; &amp;quot; is &amp;quot; ; Lsecofday&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 2 with defined Clock - Bytes (Second / Minute / Hour)&lt;br /&gt;
Bsec = 20 : Bmin = 1 : Bhour = 7&lt;br /&gt;
Lsecofday = Secofday(bsec)&lt;br /&gt;
Print &amp;quot;Second of Day of Sec=&amp;quot; ; Bsec ; &amp;quot; Min=&amp;quot; ; Bmin ; &amp;quot; Hour=&amp;quot; ; Bhour ; &amp;quot; (&amp;quot; ; Time(bsec) ; &amp;quot;) is &amp;quot; ; Lsecofday&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 3 with System Second&lt;br /&gt;
Lsyssec = 1234456789&lt;br /&gt;
Lsecofday = Secofday(lsyssec)&lt;br /&gt;
Print &amp;quot;Second of Day of System Second &amp;quot; ; Lsyssec ; &amp;quot;(&amp;quot; ; Time(lsyssec) ; &amp;quot;) is &amp;quot; ; Lsecofday&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 4 with Time - String&lt;br /&gt;
Strtime = &amp;quot;04:58:37&amp;quot;&lt;br /&gt;
Lsecofday = Secofday(strtime)&lt;br /&gt;
Print &amp;quot;Second of Day of &amp;quot; ; Strtime ; &amp;quot; is &amp;quot; ; Lsecofday&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' ================== System Second ============================================&lt;br /&gt;
 &lt;br /&gt;
' Example 1 with internal RTC-Clock&lt;br /&gt;
 ' Load RTC-Clock for example - testing&lt;br /&gt;
_sec = 17 : _min = 35 : _hour = 8 : _day = 16 : _month = 4 : _year = 3&lt;br /&gt;
 &lt;br /&gt;
Lsyssec = Syssec()&lt;br /&gt;
Print &amp;quot;System Second of &amp;quot; ; Time$ ; &amp;quot; at &amp;quot; ; Date$ ; &amp;quot; is &amp;quot; ; Lsyssec&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 2 with with defined Clock - Bytes (Second, Minute, Hour, Day / Month / Year)&lt;br /&gt;
Bsec = 20 : Bmin = 1 : Bhour = 7 : Bday = 22 : Bmonth = 12 : Byear = 1&lt;br /&gt;
Lsyssec = Syssec(bsec)&lt;br /&gt;
Strtime = Time(bsec)&lt;br /&gt;
Strdate = Date(bday)&lt;br /&gt;
Print &amp;quot;System Second of &amp;quot; ; Strtime ; &amp;quot; at &amp;quot; ; Strdate ; &amp;quot; is &amp;quot; ; Lsyssec&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 3 with System Day&lt;br /&gt;
 &lt;br /&gt;
Wsysday = 2000&lt;br /&gt;
Lsyssec = Syssec(wsysday)&lt;br /&gt;
Print &amp;quot;System Second of System Day &amp;quot; ; Wsysday ; &amp;quot; (&amp;quot; ; Date(wsysday) ; &amp;quot; 00:00:00) is &amp;quot; ; Lsyssec&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 4 with Time and Date String&lt;br /&gt;
Strtime = &amp;quot;10:23:50&amp;quot;&lt;br /&gt;
Strdate = &amp;quot;02-11-29&amp;quot; ' ANSI-Date&lt;br /&gt;
Lsyssec = Syssec(strtime , Strdate)&lt;br /&gt;
Print &amp;quot;System Second of &amp;quot; ; Strtime ; &amp;quot; at &amp;quot; ; Strdate ; &amp;quot; is &amp;quot; ; Lsyssec ' 91880630&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' ==================== Day Of Year =========================================&lt;br /&gt;
' Example 1 with internal RTC-Clock&lt;br /&gt;
_day = 20 : _month = 11 : _year = 2 ' Load RTC-Clock for example - testing&lt;br /&gt;
Wdayofyear = Dayofyear()&lt;br /&gt;
Print &amp;quot;Day Of Year of &amp;quot; ; Date$ ; &amp;quot; is &amp;quot; ; Wdayofyear&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 2 with defined Clock - Bytes (Day / Month / Year)&lt;br /&gt;
Bday = 24 : Bmonth = 5 : Byear = 8&lt;br /&gt;
Wdayofyear = Dayofyear(bday)&lt;br /&gt;
Print &amp;quot;Day Of Year of Day=&amp;quot; ; Bday ; &amp;quot; Month=&amp;quot; ; Bmonth ; &amp;quot; Year=&amp;quot; ; Byear ; &amp;quot; (&amp;quot; ; Date(bday) ; &amp;quot;) is &amp;quot; ; Wdayofyear&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 3 with Date - String&lt;br /&gt;
Strdate = &amp;quot;04-10-29&amp;quot; ' we have configured ANSI Format&lt;br /&gt;
Wdayofyear = Dayofyear(strdate)&lt;br /&gt;
Print &amp;quot;Day Of Year of &amp;quot; ; Strdate ; &amp;quot; is &amp;quot; ; Wdayofyear&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 4 with System Second&lt;br /&gt;
 &lt;br /&gt;
Lsyssec = 123456789&lt;br /&gt;
Wdayofyear = Dayofyear(lsyssec)&lt;br /&gt;
Print &amp;quot;Day Of Year of System Second &amp;quot; ; Lsyssec ; &amp;quot; (&amp;quot; ; Date(lsyssec) ; &amp;quot;) is &amp;quot; ; Wdayofyear&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 5 with System Day&lt;br /&gt;
Wsysday = 3000&lt;br /&gt;
Wdayofyear = Dayofyear(wsysday)&lt;br /&gt;
Print &amp;quot;Day Of Year of System Day &amp;quot; ; Wsysday ; &amp;quot; (&amp;quot; ; Date(wsysday) ; &amp;quot;) is &amp;quot; ; Wdayofyear&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' =================== System Day ======================================&lt;br /&gt;
' Example 1 with internal RTC-Clock&lt;br /&gt;
_day = 20 : _month = 11 : _year = 2 ' Load RTC-Clock for example - testing&lt;br /&gt;
Wsysday = Sysday()&lt;br /&gt;
Print &amp;quot;System Day of &amp;quot; ; Date$ ; &amp;quot; is &amp;quot; ; Wsysday&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 2 with defined Clock - Bytes (Day / Month / Year)&lt;br /&gt;
Bday = 24 : Bmonth = 5 : Byear = 8&lt;br /&gt;
Wsysday = Sysday(bday)&lt;br /&gt;
Print &amp;quot;System Day of Day=&amp;quot; ; Bday ; &amp;quot; Month=&amp;quot; ; Bmonth ; &amp;quot; Year=&amp;quot; ; Byear ; &amp;quot; (&amp;quot; ; Date(bday) ; &amp;quot;) is &amp;quot; ; Wsysday&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 3 with Date - String&lt;br /&gt;
Strdate = &amp;quot;04-10-29&amp;quot;&lt;br /&gt;
Wsysday = Sysday(strdate)&lt;br /&gt;
Print &amp;quot;System Day of &amp;quot; ; Strdate ; &amp;quot; is &amp;quot; ; Wsysday&lt;br /&gt;
 &lt;br /&gt;
' Example 4 with System Second&lt;br /&gt;
Lsyssec = 123456789&lt;br /&gt;
Wsysday = Sysday(lsyssec)&lt;br /&gt;
Print &amp;quot;System Day of System Second &amp;quot; ; Lsyssec ; &amp;quot; (&amp;quot; ; Date(lsyssec) ; &amp;quot;) is &amp;quot; ; Wsysday&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' =================== Time ================================================&lt;br /&gt;
' Example 1: Converting defined Clock - Bytes (Second / Minute / Hour) to Time - String&lt;br /&gt;
Bsec = 20 : Bmin = 1 : Bhour = 7&lt;br /&gt;
Strtime = Time(bsec)&lt;br /&gt;
Print &amp;quot;Time values: Sec=&amp;quot; ; Bsec ; &amp;quot; Min=&amp;quot; ; Bmin ; &amp;quot; Hour=&amp;quot; ; Bhour ; &amp;quot; converted to string &amp;quot; ; Strtime&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 2: Converting System Second to Time - String&lt;br /&gt;
Lsyssec = 123456789&lt;br /&gt;
Strtime = Time(lsyssec)&lt;br /&gt;
Print &amp;quot;Time of Systemsecond &amp;quot; ; Lsyssec ; &amp;quot; is &amp;quot; ; Strtime&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 3: Converting Second of Day to Time - String&lt;br /&gt;
Lsecofday = 12345&lt;br /&gt;
Strtime = Time(lsecofday)&lt;br /&gt;
Print &amp;quot;Time of Second of Day &amp;quot; ; Lsecofday ; &amp;quot; is &amp;quot; ; Strtime&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 4: Converting System Second to defined Clock - Bytes (Second / Minute / Hour)&lt;br /&gt;
 &lt;br /&gt;
Lsyssec = 123456789&lt;br /&gt;
Bsec = Time(lsyssec)&lt;br /&gt;
Print &amp;quot;System Second &amp;quot; ; Lsyssec ; &amp;quot; converted to Sec=&amp;quot; ; Bsec ; &amp;quot; Min=&amp;quot; ; Bmin ; &amp;quot; Hour=&amp;quot; ; Bhour ; &amp;quot; (&amp;quot; ; Time(lsyssec) ; &amp;quot;)&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 5: Converting Second of Day to defined Clock - Bytes (Second / Minute / Hour)&lt;br /&gt;
Lsecofday = 12345&lt;br /&gt;
Bsec = Time(lsecofday)&lt;br /&gt;
Print &amp;quot;Second of Day &amp;quot; ; Lsecofday ; &amp;quot; converted to Sec=&amp;quot; ; Bsec ; &amp;quot; Min=&amp;quot; ; Bmin ; &amp;quot; Hour=&amp;quot; ; Bhour ; &amp;quot; (&amp;quot; ; Time(lsecofday) ; &amp;quot;)&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
' Example 6: Converting Time-string to defined Clock - Bytes (Second / Minute / Hour)&lt;br /&gt;
Strtime = &amp;quot;07:33:12&amp;quot;&lt;br /&gt;
Bsec = Time(strtime)&lt;br /&gt;
Print &amp;quot;Time &amp;quot; ; Strtime ; &amp;quot; converted to Sec=&amp;quot; ; Bsec ; &amp;quot; Min=&amp;quot; ; Bmin ; &amp;quot; Hour=&amp;quot; ; Bhour&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' ============================= Date ==========================================&lt;br /&gt;
 &lt;br /&gt;
' Example 1: Converting defined Clock - Bytes (Day / Month / Year) to Date - String&lt;br /&gt;
Bday = 29 : Bmonth = 4 : Byear = 12&lt;br /&gt;
Strdate = Date(bday)&lt;br /&gt;
Print &amp;quot;Dat values: Day=&amp;quot; ; Bday ; &amp;quot; Month=&amp;quot; ; Bmonth ; &amp;quot; Year=&amp;quot; ; Byear ; &amp;quot; converted to string &amp;quot; ; Strdate&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 2: Converting from System Day to Date - String&lt;br /&gt;
Wsysday = 1234&lt;br /&gt;
Strdate = Date(wsysday)&lt;br /&gt;
Print &amp;quot;System Day &amp;quot; ; Wsysday ; &amp;quot; is &amp;quot; ; Strdate&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 3: Converting from System Second to Date String&lt;br /&gt;
Lsyssec = 123456789&lt;br /&gt;
Strdate = Date(lsyssec)&lt;br /&gt;
Print &amp;quot;System Second &amp;quot; ; Lsyssec ; &amp;quot; is &amp;quot; ; Strdate&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 4: Converting SystemDay to defined Clock - Bytes (Day / Month / Year)&lt;br /&gt;
 &lt;br /&gt;
Wsysday = 2000&lt;br /&gt;
Bday = Date(wsysday)&lt;br /&gt;
Print &amp;quot;System Day &amp;quot; ; Wsysday ; &amp;quot; converted to Day=&amp;quot; ; Bday ; &amp;quot; Month=&amp;quot; ; Bmonth ; &amp;quot; Year=&amp;quot; ; Byear ; &amp;quot; (&amp;quot; ; Date(wsysday) ; &amp;quot;)&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 5: Converting Date - String to defined Clock - Bytes (Day / Month / Year)&lt;br /&gt;
Strdate = &amp;quot;04-08-31&amp;quot;&lt;br /&gt;
Bday = Date(strdate)&lt;br /&gt;
Print &amp;quot;Date &amp;quot; ; Strdate ; &amp;quot; converted to Day=&amp;quot; ; Bday ; &amp;quot; Month=&amp;quot; ; Bmonth ; &amp;quot; Year=&amp;quot; ; Byear&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' Example 6: Converting System Second to defined Clock - Bytes (Day / Month / Year)&lt;br /&gt;
Lsyssec = 123456789&lt;br /&gt;
Bday = Date(lsyssec)&lt;br /&gt;
Print &amp;quot;System Second &amp;quot; ; Lsyssec ; &amp;quot; converted to Day=&amp;quot; ; Bday ; &amp;quot; Month=&amp;quot; ; Bmonth ; &amp;quot; Year=&amp;quot; ; Byear ; &amp;quot; (&amp;quot; ; Date(lsyssec) ; &amp;quot;)&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
' ================ Second of Day elapsed&lt;br /&gt;
 &lt;br /&gt;
Lsecofday = Secofday()&lt;br /&gt;
_hour = _hour + 1&lt;br /&gt;
Lvar1 = Secelapsed(lsecofday)&lt;br /&gt;
Print Lvar1&lt;br /&gt;
 &lt;br /&gt;
Lsyssec = Syssec()&lt;br /&gt;
_day = _day + 1&lt;br /&gt;
Lvar1 = Syssecelapsed(lsyssec)&lt;br /&gt;
Print Lvar1&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
Looptest:&lt;br /&gt;
 &lt;br /&gt;
' Initialising for testing&lt;br /&gt;
_day = 1&lt;br /&gt;
_month = 1&lt;br /&gt;
_year = 1&lt;br /&gt;
_sec = 12&lt;br /&gt;
_min = 13&lt;br /&gt;
_hour = 14&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
Do&lt;br /&gt;
If _year &amp;gt; 50 Then&lt;br /&gt;
 Exit Do&lt;br /&gt;
End If&lt;br /&gt;
 &lt;br /&gt;
_sec = _sec + 7&lt;br /&gt;
If _sec &amp;gt; 59 Then&lt;br /&gt;
 Incr _min&lt;br /&gt;
 _sec = _sec - 60&lt;br /&gt;
End If&lt;br /&gt;
 &lt;br /&gt;
_min = _min + 2&lt;br /&gt;
If _min &amp;gt; 59 Then&lt;br /&gt;
 Incr _hour&lt;br /&gt;
 _min = _min - 60&lt;br /&gt;
End If&lt;br /&gt;
 &lt;br /&gt;
_hour = _hour + 1&lt;br /&gt;
If _hour &amp;gt; 23 Then&lt;br /&gt;
 Incr _day&lt;br /&gt;
 _hour = _hour - 24&lt;br /&gt;
End If&lt;br /&gt;
 &lt;br /&gt;
_day = _day + 1&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
If _day &amp;gt; 28 Then&lt;br /&gt;
 Select Case _month&lt;br /&gt;
 Case 1&lt;br /&gt;
 Mday = 31&lt;br /&gt;
 Case 2&lt;br /&gt;
 Mday = _year And &amp;amp;H03&lt;br /&gt;
 If Mday = 0 Then&lt;br /&gt;
 Mday = 29&lt;br /&gt;
 Else&lt;br /&gt;
 Mday = 28&lt;br /&gt;
 End If&lt;br /&gt;
 Case 3&lt;br /&gt;
 Mday = 31&lt;br /&gt;
 Case 4&lt;br /&gt;
 Mday = 30&lt;br /&gt;
 Case 5&lt;br /&gt;
 Mday = 31&lt;br /&gt;
 Case 6&lt;br /&gt;
 Mday = 30&lt;br /&gt;
 Case 7&lt;br /&gt;
 Mday = 31&lt;br /&gt;
 Case 8&lt;br /&gt;
 Mday = 31&lt;br /&gt;
 Case 9&lt;br /&gt;
 Mday = 30&lt;br /&gt;
 Case 10&lt;br /&gt;
 Mday = 31&lt;br /&gt;
 Case 11&lt;br /&gt;
 Mday = 30&lt;br /&gt;
 Case 12&lt;br /&gt;
 Mday = 31&lt;br /&gt;
 End Select&lt;br /&gt;
 If _day &amp;gt; Mday Then&lt;br /&gt;
 _day = _day - Mday&lt;br /&gt;
 Incr _month&lt;br /&gt;
 If _month &amp;gt; 12 Then&lt;br /&gt;
 _month = 1&lt;br /&gt;
 Incr _year&lt;br /&gt;
 End If&lt;br /&gt;
 End If&lt;br /&gt;
End If&lt;br /&gt;
If _year &amp;gt; 99 Then&lt;br /&gt;
 Exit Do&lt;br /&gt;
End If&lt;br /&gt;
 &lt;br /&gt;
Lsecofday = Secofday()&lt;br /&gt;
Lsyssec = Syssec()&lt;br /&gt;
Bweekday = Dayofweek()&lt;br /&gt;
Wdayofyear = Dayofyear()&lt;br /&gt;
Wsysday = Sysday()&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
Print Time$ ; &amp;quot; &amp;quot; ; Date$ ; &amp;quot; &amp;quot; ; Lsecofday ; &amp;quot; &amp;quot; ; Lsyssec ; &amp;quot; &amp;quot; ; Bweekday ; &amp;quot; &amp;quot; ; Wdayofyear ; &amp;quot; &amp;quot; ; Wsysday&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
Loop&lt;br /&gt;
End&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
'only when we use I2C for the clock we need to set the clock date time&lt;br /&gt;
#if Clockmode = 0&lt;br /&gt;
'called from datetime.lib&lt;br /&gt;
Dim Weekday As Byte&lt;br /&gt;
Getdatetime:&lt;br /&gt;
I2cstart ' Generate start code&lt;br /&gt;
I2cwbyte Ds1307w ' send address&lt;br /&gt;
I2cwbyte 0 ' start address in 1307&lt;br /&gt;
 &lt;br /&gt;
I2cstart ' Generate start code&lt;br /&gt;
I2cwbyte Ds1307r ' send address&lt;br /&gt;
I2crbyte _sec , Ack&lt;br /&gt;
I2crbyte _min , Ack ' MINUTES&lt;br /&gt;
I2crbyte _hour , Ack ' Hours&lt;br /&gt;
I2crbyte Weekday , Ack ' Day of Week&lt;br /&gt;
I2crbyte _day , Ack ' Day of Month&lt;br /&gt;
I2crbyte _month , Ack ' Month of Year&lt;br /&gt;
I2crbyte _year , Nack ' Year&lt;br /&gt;
I2cstop&lt;br /&gt;
_sec = Makedec(_sec) : _min = Makedec(_min) : _hour = Makedec(_hour)&lt;br /&gt;
_day = Makedec(_day) : _month = Makedec(_month) : _year = Makedec(_year)&lt;br /&gt;
Return&lt;br /&gt;
 &lt;br /&gt;
Setdate:&lt;br /&gt;
_day = Makebcd(_day) : _month = Makebcd(_month) : _year = Makebcd(_year)&lt;br /&gt;
I2cstart ' Generate start code&lt;br /&gt;
I2cwbyte Ds1307w ' send address&lt;br /&gt;
I2cwbyte 4 ' starting address in 1307&lt;br /&gt;
I2cwbyte _day ' Send Data to SECONDS&lt;br /&gt;
I2cwbyte _month ' MINUTES&lt;br /&gt;
I2cwbyte _year ' Hours&lt;br /&gt;
I2cstop&lt;br /&gt;
Return&lt;br /&gt;
 &lt;br /&gt;
Settime:&lt;br /&gt;
_sec = Makebcd(_sec) : _min = Makebcd(_min) : _hour = Makebcd(_hour)&lt;br /&gt;
I2cstart ' Generate start code&lt;br /&gt;
I2cwbyte Ds1307w ' send address&lt;br /&gt;
I2cwbyte 0 ' starting address in 1307&lt;br /&gt;
I2cwbyte _sec ' Send Data to SECONDS&lt;br /&gt;
I2cwbyte _min ' MINUTES&lt;br /&gt;
I2cwbyte _hour ' Hours&lt;br /&gt;
I2cstop&lt;br /&gt;
Return&lt;br /&gt;
 &lt;br /&gt;
#endif&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
Weekdays:&lt;br /&gt;
Data &amp;quot;Monday&amp;quot; , &amp;quot;Tuesday&amp;quot; , &amp;quot;Wednesday&amp;quot; , &amp;quot;Thursday&amp;quot; , &amp;quot;Friday&amp;quot; , &amp;quot;Saturday&amp;quot; , &amp;quot;Sunday&amp;quot;&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;br/&amp;gt;{{Languages}}&lt;br /&gt;
&lt;br /&gt;
[[Category:BASCOM Language Reference]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>