■ BASCOM-AVR (DEMO) の使用方法 ■
命令文のリファレンスマニュアル 使用方法のページへ戻る
時刻と日付に関する命令
CONFIG CLOCK TIME$とDATE$変数を使用するための、時計(タイマー)を設定します。
CONFIG DATE 日付の表現方法(形式)を設定します。
TIME$ 時刻が格納される内部変数に対して、時刻の取り出し、または設定を行います。
DATE$ 日付が格納される内部変数に対して、日付の取り出し、または設定を行います。
DAYOFWEEK 与えられた日時データから、曜日を算出し、変数に入れます。
DAYOFYEAR 与えられた日時データから、その年の経過日数を算出し、変数に入れます。
SECOFDAY 与えられた時刻データから、その日の経過秒数を算出し、変数に入れます。
SYSSEC 与えられた日時データから、システムが累計する秒数を算出し、変数に入れます。
SYSDAY 与えられた日時データから、システムが累計する日数を算出し、変数に入れます。
SECELAPSED 以前に記憶された時刻から、現在までの経過秒数を算出し、変数に入れます。
SYSSECELAPSED 以前に記憶された日時から、現在までの経過秒数を算出し、変数に入れます。
TIME 時刻値を、受け渡す変数の型に合わせて変換します。
DATE 日付と時刻値を、受け渡す変数の型に合わせて変換します。
VERSION プログラムがコンパイルされた日付と時間を、文字変数に入れます。



CONFIG CLOCK 一覧へ戻る
TIME$とDATE$変数を使用するための、時計(タイマー)を設定します。

書式 Config Clock = mode [, Gosub = Sectic]
注釈
mode = Soft - 時計用の32.768kHz水晶を、Timer2に接続できるチップの場合。
User - I2C時計チップ等の接続で、自作のルーチンを使用する場合。
Sectic = 毎秒発生する割り込み処理に、自作のルーチンを追加する場合の
       サブルーチン名。 (Softモードのみに有効) (オプション)

参照 CONFIG DATE , TIME$ , DATE$

 
Softモード
・mega88, mega164,mega103,mega128などの、時計用32.768kHz水晶をタイマー2に接続できるチップで、
 実際に水晶を接続している場合に使用できます。
・この命令で、1秒ごとに発生する割り込み処理と、時刻を生成する処理ルーチンが組み込まれます。
・割り込みを許可して下さい。(Enable Interrupts命令)
・時計用水晶を接続したタイマー(TIMER2等)は、時計専用に使用されるため、ユーザーは他の用途に
 使用できません。
・以下の変数が自動的に宣言されるので、ユーザーが使用することもできます。
   (_sec , _min , _hour, _day , _month , _year すべてバイト型)
 
・オプションの[Gosub = Sectic]は、1秒ごとに発生する割り込み処理内の、時刻を生成する
 ルーチンの後に、ユーザーの処理ルーチンを追加できます。 (1秒フラグなど)
・ラベル名は必ずSecticを使用し、RETURN命令でルーチンを終了して下さい。
・このルーチンは、レジスタの待避などで、ハードウェア スタックを30バイト追加使用します。

 
(例)
$regfile = "m88pdef.dat" ' AVRデバイスを"ATmega88P"に設定。
$crystal = 8000000 ' クロック周波数を8MHzに設定。(任意の周波数)
Config Clock = Soft ' 時計(タイマー)をSoftモードに設定。
Enable Interrupts ' 割り込みを許可。
Do ' 繰り返し。
Print Time$ ; Chr(13); ' 時刻をターミナルに連続出力。
Loop '


Userモード
・Userモードでは、 下記の変数が自動的に宣言されるので、ユーザーのプログラムで使用して下さい。
   (_sec , _min , _hour, _day , _month , _year すべてバイト型)
・1秒の割り込みルーチン等で、この変数の内容を更新して下さい。
 
・また、時刻/日付の設定命令を使用すると、下記のラベルがサブルーチンとして呼ばれますので、
 ユーザーの時計制御プログラムを記述して下さい。 (使用は任意です)
 
サブルーチンのラベル名 使用する命令 動   作
 Getdatetime  variable = Time$
 variable = Date$
 時刻、日付の取り出し。
 Settime  Time$ = "hh:mm:ss"  時刻の設定。
 Setdate  Date$ = "mm/dd/yy"  日付の設定。


詳細の解説
 
・AVRに時計用32.768kHz水晶を接続する場合は、Config Clock = Soft で、全ての
 時刻関連命令が使用できます。
 
   接続回路例

 
・12.8MHzの水晶発振器やRTC(リアルタイム・クロック・モジュール)を使用する場合は、
 Config Clock = User とします。
・Userモードでは、時刻のカウントをユーザのプログラムで行わなければいけません。
・この場合、下記の内部変数を1秒割り込み等で、時刻値としてカウントして下さい。
 (_sec , _min , _hour, _day , _month , _year すべてバイト型)
・RTCの場合は、受信した時刻データを、上記変数に格納して下さい。

・時刻や日付の設定を行う場合は、上記の内部変数に直接数値を入れます。
 (この間は、1秒割り込みを禁止して下さい)
・RTCの場合は、同時にRTCへ同データを送信して下さい。
 
 
・「Time$ = "hh:mm:ss"」や「Date$ = "mm/dd/yy"」命令で時刻を設定する場合には、操作が
 異なります。
 
・「Time$ = "hh:mm:ss"」を実行すると、時刻値が(_sec , _min , _hour)に代入されると同時に、
 ラベル「Settime:」が呼び出されますので、下記の処理を行います。
 
Settime:
RTCへ時刻データを送信する処理。(RTCを使わない場合は、何も記述しなくて可)
Return
 
・「Date$ = "mm/dd/yy"」を実行すると、日付値が(day , _month , _year)に代入されると同時に、
 ラベル「Setdate:」が呼び出されますので、下記の処理を行います。
 
Setdate:
RTCへ日付データを送信する処理。(RTCを使わない場合は、何も記述しなくて可)
Return
 
・時刻、日付の取り出し。
・「variable = Time$」や「variable = Date$」を使用すると、ラベル「Getdatetime:」が呼び出され
 ますので、下記の処理を行います。

Getdatetime:
RTCから時刻データを受信する処理。(RTCを使わない場合は、何も記述しなくて可)
受信した時刻データを、(_sec , _min , _hour, _day , _month , _year)に格納します。
Return




CONFIG DATE 一覧へ戻る
日付の表現方法(形式)を設定します。

書式 Config Date = DMY , Separator = character
注釈
DMY  =  日付の並び順を設定します。 D = 日 、 M = 月 、 Y = 年
character  =  日付を区切る文字を選択します。 (/) (-) (.)

参照 CONFIG CLOCK , TIME$ , DATE$

 
形 式 命 令 文
日本/台湾 YY/MM/DD Config Date = YMD , Separator = /
アメリカ MM/DD/YY
MM-DD-YY
Config Date = MDY , Separator = /
Config Date = MDY , Separator = -
英国/フランス DD/MM/YY Config Date = DMY , Separator = /
ドイツ DD.MM.YY Config Date = DMY , Separator = .
イタリア DD-MM-YY Config Date = DMY , Separator = -
ANSI規格 YY.MM.DD Config Date = YMD , Separator = .



TIME$ 一覧へ戻る
時刻が格納される内部変数に対して、時刻の取り出し、または設定を行います。

書式 Time$ = "hh:mm:ss"  (時刻の設定)
variable = Time$
     (時刻の取り出し)
注釈
hh:mm:ss  =  新しい時刻を、時:分:秒で設定します。
variable  =  時刻を入れる文字変数。 (8文字)

参照 CONFIG CLOCK , CONFIG DATE , DATE$

 
・TIME$は、CONFIG CLOCK命令が記述された後に、使用できるようになります。
・時刻の書式は、24時間制です。
・TIME$変数を変更すると、(_sec , _min , _hour)変数も、新しい時刻に更新されます。
・TIME$を、TIME命令と混同しないで下さい。
 
(例)
Config Clock = Soft ' 時計(タイマー)をSoftモードに設定。
Time$ = "01:23:45" ' 1時23分45秒に設定。
Print Time$ ' 時刻をターミナルに出力。



DATE$ 一覧へ戻る
日付が格納される内部変数に対して、日付の取り出し、または設定を行います。

書式 Date$ = "mm/dd/yy"  (日付の設定)
variable = Date$
      (日付の取り出し)
注釈
mm/dd/yy  =  新しい日付を、月/日/年で設定します。(日付の表現方法による)
variable  =  日付を入れる文字変数。 (8文字)

参照 CONFIG CLOCK , CONFIG DATE , TIME$

 
・DATE$は、CONFIG CLOCK命令が記述された後に、使用できるようになります。
・CONFIG DATE命令で設定した、日付の表現方法(形式)に合わせて設定して下さい。
・DATE$変数を変更すると、(_day , _month , _year)変数も、新しい日付に更新されます。
・DATE$を、DATE命令と混同しないで下さい。
 
(例)
Config Clock = Soft ' 時計(タイマー)をSoftモードに設定。
Config Date = YMD , Separator = / ' 日付の表現方法(形式)を設定。
Date$ = "08/05/04" ' (20)08年5月4日に設定。
Print Date$ ' 日付をターミナルに出力。



DAYOFWEEK 一覧へ戻る
与えられた日時データから、曜日を算出し、変数に入れます。

書式 variable = DayOfWeek()  現在の内部変数(_day, _month, _year)から算出。
variable = DayOfWeek(B3Day)  3バイトの日,月,年から算出。
variable = DayOfWeek(StrDate)  日付表現(形式)の文字列から算出。
variable = DayOfWeek(WDaySys)  システムが累計し続ける日数から算出。
variable = DayOfWeek(LSecSys)  システムが累計し続ける秒数から算出。
注釈 variable = 曜日を入れる、バイト型変数。
B3Day = 日、月、年と続く、3バイトの変数の、先頭の変数名。 (バイト型×3)
StrDate = CONFIG DATE命令で設定された、日付の表現(形式)の文字列。
         (8文字の文字列)
WDaySys = システムが累計し続ける日数。  (ワード型)
LSecSys = システムが累計し続ける秒数。  (ロング型)

参照 CONFIG CLOCK , CONFIG DATE , DATE$

 
・0 = 月曜日 , 1 = 火曜日 , 2 = 水曜日 , 3 = 木曜日 , 4 = 金曜日 , 5 = 土曜日 , 6 = 日曜日
・算出できるのは、 2000/01/01 〜 2099/12/31 までです。

(例)
Config Clock = Soft ' 時計(タイマー)をSoftモードに設定。
Config Date = YMD , Separator = / ' 日付の表現方法(形式)を設定。
Dim Strdate As String * 8 ' 使用する変数を宣言。
Dim Week As Byte '
' '
Strdate = "08/05/04" ' 日付表現(形式)の文字列。
Week = Dayofweek(strdate) ' 曜日に変換。
Print Week ' 変換結果 [6] = 日曜日
End '



DAYOFYEAR 一覧へ戻る
与えられた日時データから、その年の経過日数を算出し、変数に入れます。

書式 variable = Dayofyear()  現在の内部変数(_day, _month, _year)から算出。
variable = Dayofyear(B3Day)  3バイトの日,月,年から算出。
variable = Dayofyear(StrDate)  日付表現(形式)の文字列から算出。
variable = Dayofyear(WDaySys)  システムが累計し続ける日数から算出。
variable = Dayofyear(LSecSys)  システムが累計し続ける秒数から算出。
注釈 variable = 経過日数を入れる、ワード型変数。
B3Day = 日、月、年と続く、3バイトの変数の、先頭の変数名。 (バイト型×3)
StrDate = CONFIG DATE命令で設定された、日付の表現(形式)の文字列。
         (8文字の文字列)
WDaySys = システムが累計し続ける日数。  (ワード型)
LSecSys = システムが累計し続ける秒数。  (ロング型)

参照 SECOFDAY , SYSSEC , SYSDAY

 
・算出結果は、[ 0 〜 364 ] の範囲で、うるう年は[ 365 ]です。
・1月1日は[ 0 ] から始まります。
・算出できるのは、 2000/01/01 〜 2099/12/31 までです。

(例)
Config Clock = Soft ' 時計(タイマー)をSoftモードに設定。
Config Date = YMD , Separator = / ' 日付の表現方法(形式)を設定。
Dim Strdate As String * 8 ' 使用する変数を宣言。
Dim Lapday As Word '
' '
Strdate = "08/05/04" ' 日付表現(形式)の文字列。
Lapday = Dayofyear(strdate) ' 経過日数を算出。
Print Lapday ' 算出結果 [124] 日経過。
End '



SECOFDAY 一覧へ戻る
与えられた時刻データから、その日の経過秒数を算出し、変数に入れます。

書式 variable = Secofday()  現在の内部変数(_sec, _min, _hour)から算出。
variable = Secofday(B3Sec)  3バイトの秒,分,時から算出。
variable = Secofday(StrTime)  フォーマットが"hh:mm:ss"の文字列から算出。
variable = Secofday(LSecSys)  システムが累計し続ける秒数から算出。
注釈 variable = 経過秒数を入れる、ロング型変数。
B3Sec = 秒、分、時と続く、3バイトの変数の、先頭の変数名。 (バイト型×3)
StrTime = フォーマットが"hh:mm:ss"の文字列。  (8文字の文字列)
LSecSys = システムが累計し続ける秒数。  (ロング型)

参照 DAYOFYEAR , SYSSEC , SYSDAY

 
・算出結果は、[ 0 〜 86399 ] の範囲です。 [ 00:00:00 〜 23:59:59 ]

(例)
Config Clock = Soft ' 時計(タイマー)をSoftモードに設定。
Dim Strtime As String * 8 ' 使用する変数を宣言。
Dim Progsec As Long '
' '
Strtime = "12:34:56" ' フォーマットが"hh:mm:ss"の文字列。
Progsec = Secofday(Strtime) ' 経過秒数を算出。
Print Progsec ' 算出結果 [45296] 秒経過。
' '
Dim T(3) As Byte ' 3バイトの秒,分,時を格納する変数。
T(1) = 56 ' [秒]
T(2) = 34 ' [分]
T(3) = 12 ' [時]
Progsec = Secofday(T(1)) ' 経過秒数を算出。
Print Progsec ' 算出結果 [45296] 秒経過。
' '
Dim Lsecsys As Long ' システムが累計する秒数の変数。
Lsecsys = 86399 ' システムが累計し続ける秒数。
Progsec = Secofday(lsecsys) ' 経過秒数を算出。
Print Progsec ' 算出結果 [86399] 秒経過。
' '
Lsecsys = 86400 ' システムが累計し続ける秒数。
Progsec = Secofday(lsecsys) ' 経過秒数を算出。
Print Progsec ' 算出結果 [0] 秒経過。
End '



SYSSEC 一覧へ戻る
与えられた日時データから、システムが累計する秒数を算出し、変数に入れます。

書式 variable = Syssec()  内部変数(_sec,_min,_hour,_day,_month,_year)から算出。
variable = Syssec(B6Sec)  6バイトの秒、分、時、日、月、年から算出。
variable = Syssec(StrTime , StrDate)  時刻、日付の文字列から算出。
variable = Syssec(WDaySys)  システムが累計し続ける日数から算出。
注釈 variable = 累計する秒数を入れる、ロング型変数。
B6Sec = 秒、分、時、日、月、年と続く、6バイトの変数の、先頭の変数名。
StrTime = フォーマットが"hh:mm:ss"の文字列。  (8文字の文字列)
StrDate = CONFIG DATE命令で設定された、日付の表現(形式)の文字列。
         (8文字の文字列)
WDaySys = システムが累計し続ける日数。  (ワード型)

参照 DAYOFYEAR , SECOFDAY , SYSDAY

 
・算出結果は、[ 0 〜 2147483647 ] の範囲です。 (2000/01/01 〜 2068/01/19 の 03:14:07 まで)。
・2000/01/01の00:00:00が0で始まります。



SYSDAY 一覧へ戻る
与えられた日時データから、システムが累計する日数を算出し、変数に入れます。

書式 variable = Sysday()  現在の内部変数(_day, _month, _year)から算出。
variable = Sysday(B3Day)  3バイトの日,月,年から算出。
variable = Sysday(StrDate)  日付表現(形式)の文字列から算出。
variable = Sysday(LSecSys)  システムが累計し続ける秒数から算出。
注釈 variable = 経過日数を入れる、ワード型変数。
B3Day = 日、月、年と続く、3バイトの変数の、先頭の変数名。 (バイト型×3)
StrDate = CONFIG DATE命令で設定された、日付の表現(形式)の文字列。
         (8文字の文字列)
LSecSys = システムが累計し続ける秒数。  (ロング型)

参照 DAYOFYEAR , SECOFDAY , SYSSEC

 
・算出結果は、[ 0 〜 36524 ] の範囲です。 (2000/01/01 〜 2099/12/31 まで)。
・2000/01/01が0で始まります。



SECELAPSED 一覧へ戻る
以前に記憶された時刻(タイムスタンプ)から、現在までの経過秒数を算出し、変数に入れます。

書式 variable = Secelapsed(TimeStamp)
注釈 variable = 経過秒数を入れる、ロング型変数。
TimeStamp = 以前に記憶された時刻(タイムスタンプ)の秒数。 (ロング型)

参照 SYSSECELAPSED

 
・現在の時刻は、内部変数(_sec, _min, _hour)が使用されます。
・算出結果は、[ 0 〜 86399 ] の範囲です。 (24時間以内)

(例)
Config Clock = Soft ' 時計(タイマー)をSoftモードに設定。
Dim Strtime As String * 8 ' 使用する変数を宣言。
Dim Timestamp As Long '
Dim Progsec As Long '
' '
Strtime = "08:00:00" ' フォーマットが"hh:mm:ss"の文字列。
Timestamp = Secofday(Strtime) ' タイムスタンプを保存。
' '
Time$ = "09:00:00" ' 現在の時刻を設定。
' '
Progsec = Secelapsed(timestamp) ' 経過秒数を算出。
Print Progsec ' 算出結果 [3600] 秒経過。
End '



SYSSECELAPSED 一覧へ戻る
以前に記憶された日時(タイムスタンプ)から、現在までの経過秒数を算出し、変数に入れます。

書式 variable = Syssecelapsed(TimeStamp)
注釈 variable = 経過秒数を入れる、ロング型変数。
TimeStamp = 以前に記憶された日時(タイムスタンプ)の秒数。 (ロング型)

参照 SECELAPSED

 
・現在の日時は、内部変数(_day, _month, _year, _sec, _min, _hour)が使用されます。
・算出結果は、[ 0 〜 2147483647 ] の範囲です。 (2000/01/01 〜 2068/01/19 の 03:14:07 まで)

(例) SECELAPSED命令を参照。



TIME 一覧へ戻る
時刻値を、受け渡す変数の型に合わせて変換します。

書式
1日あたりの秒数の累計を、3バイトの秒,分,時に変換。
 B3Sec = Time(LSecDay) (バイト型×3) = (ロング型)
システムが累計し続ける秒数を、3バイトの秒,分,時に変換。
 B3Sec = Time(LSecSys) (バイト型×3) = (ロング型)
フォーマットが"hh:mm:ss"の文字列を、3バイトの秒,分,時に変換。
 B3Sec = Time(StrTime) (バイト型×3) = (8文字の文字列)
 
1日あたりの秒数の累計を、フォーマットが"hh:mm:ss"の文字列に変換。
 StrTime = Time(LSecDay) (8文字の文字列) = (ロング型)
システムが累計し続ける秒数を、フォーマットが"hh:mm:ss"の文字列に変換。
 StrTime = Time(LSecSys)  (8文字の文字列) = (ロング型)
3バイトの秒,分,時を、フォーマットが"hh:mm:ss"の文字列に変換。
 StrTime = Time(B3Sec) (8文字の文字列) = (バイト型×3)
注釈 B3Sec = 秒、分、時と続く、3バイトの変数の、先頭の変数名。 (バイト型×3)
LSecDay = 1日あたりの秒数の累計。  (ロング型)
LSecSys = システムが累計し続ける秒数。  (ロング型)
StrTime = フォーマットが"hh:mm:ss"の文字列。  (8文字の文字列)

参照 DATE

 
(例)
Config Clock = Soft ' 時計(タイマー)をSoftモードに設定。
Dim Lsecday As Long ' 使用する変数を宣言。
Dim Lsecsys As Long '
Dim B3sec As Byte , B3min As Byte , B3hour As Byte
Dim Strtime As String * 8 '
' '
Lsecday = 12345 ' 1日あたりの秒数の累計。
B3sec = Time(lsecday) ' 3バイトの秒,分,時に変換。
Print B3hour ; " " ; B3min ; " " ; B3sec ' 変換結果[3 25 45]
' '
Lsecsys = 123456789 ' システムが累計し続ける秒数。
B3sec = Time(lsecsys) ' 3バイトの秒,分,時に変換。
Print B3hour ; " " ; B3min ; " " ; B3sec ' 変換結果[21 33 9]
' '
Strtime = "01:23:45" ' フォーマットが"hh:mm:ss"の文字列。
B3sec = Time(strtime) ' 3バイトの秒,分,時に変換。
Print B3hour ; " " ; B3min ; " " ; B3sec ' 変換結果[1 23 45]
' '
Lsecday = 12345 ' 1日あたりの秒数の累計。
Strtime = Time(lsecday) ' "hh:mm:ss"の文字列に変換。
Print StrTime ' 変換結果[03:25:45]
' '
Lsecsys = 123456789 ' システムが累計し続ける秒数。
Strtime = Time(lsecsys) ' "hh:mm:ss"の文字列に変換。
Print Strtime ' 変換結果[21:33:09]
' '
B3hour = 1 : B3min = 23 : B3sec = 45 ' 3バイトの秒,分,時。
Strtime = Time(b3sec) ' "hh:mm:ss"の文字列に変換。
Print Strtime ' 変換結果[01:23:45]
End '

 ・「システムが累計し続ける秒数」とは、BASCOMが自動的にカウントする物ではありません。
 ・自作のルーチンで特定の変数を1秒ごとに+1していった物を、その経過した秒数から時:分:秒を
  割り出す命令です。
 ・例えば、10,000秒は何時間:何分:何秒かという計算です。
 ・実際の用途としては、常時通電している装置で起動から1秒ごとに変数を+1していき、稼働時間が
  どれくらい経過しているかを、時:分:秒に変換して表します。


DATE 一覧へ戻る
日付と時刻値を、受け渡す変数の型に合わせて変換します。

書式
システムが累計し続ける秒数を、3バイトの日,月,年に変換。
 B3Day = Date(LSecSys) (バイト型×3) = (ロング型)
システムが累計し続ける日数を、3バイトの日,月,年に変換。
 B3Day = Date(WDaySys) (バイト型×3) = (ワード型)
日付表現(形式)の文字列を、3バイトの日,月,年に変換。
 B3Day = Date(StrDate) (バイト型×3) = (8文字の文字列)
 
システムが累計し続ける秒数を、日付表現(形式)の文字列に変換。
 StrDate = Date(LSecSys) (8文字の文字列) = (ロング型)
システムが累計し続ける日数を、日付表現(形式)の文字列に変換。
 StrDate = Date(WDaySys)  (8文字の文字列) = (ワード型)
3バイトの日,月,年を、日付表現(形式)の文字列に変換。
 StrDate = Date(B3Day) (8文字の文字列) = (バイト型×3)
注釈 B3Day = 日、月、年と続く、3バイトの変数の、先頭の変数名。 (バイト型×3)
LSecSys = システムが累計し続ける秒数。  (ロング型)
WDaySys = システムが累計し続ける日数。  (ワード型)
StrDate = CONFIG DATE命令で設定された、日付の表現(形式)の文字列。
         (8文字の文字列)

参照 TIME

 
(例)
Config Clock = Soft ' 時計(タイマー)をSoftモードに設定。
Config Date = YMD , Separator = / ' 日付の表現方法(形式)を設定。
Dim Lsecsys As Long ' 使用する変数を宣言。
Dim Wdaysys As Word '
Dim B3day As Byte , B3month As Byte , B3year As Byte
Dim Strdate As String * 8 '
' '
Lsecsys = 123456789 ' システムが累計し続ける秒数。
B3day = Date(lsecsys) ' 3バイトの日,月,年に変換。
Print B3year ; " " ; B3month ; " " ; B3day ' 変換結果[3 11 29]
' '
Wdaysys = 2000 ' システムが累計し続ける日数。
B3day = Date(wdaysys) ' 3バイトの日,月,年に変換。
Print B3year ; " " ; B3month ; " " ; B3day ' 変換結果[5 6 23]
' '
Strdate = "08/05/04" ' 日付表現(形式)の文字列。
B3day = Date(strdate) ' 3バイトの日,月,年に変換。
Print B3year ; " " ; B3month ; " " ; B3day ' 変換結果[8 5 4]
' '
Lsecsys = 123456789 ' システムが累計し続ける秒数。
Strdate = Date(lsecsys) ' 日付表現(形式)の文字列に変換。
Print Strdate ' 変換結果[03/11/29]
' '
Wdaysys = 2000 ' システムが累計し続ける日数。
Strdate = Date(wdaysys) ' 日付表現(形式)の文字列に変換。
Print Strdate ' 変換結果[05/06/23]
' '
B3year = 8 : B3month = 5 : B3day = 4 ' 3バイトの年,月,日。
Strdate = Date(b3day) ' 日付表現(形式)の文字列に変換。
Print Strdate ' 変換結果[08/05/04]
End '

 ・「システムが累計し続ける秒数」とは、BASCOMが自動的にカウントする物ではありません。
 ・自作のルーチンで特定の変数を1秒ごとに+1していった物を、その経過した秒数から年/月/日を
  割り出す命令です。
 ・例えば、100,000秒は何年間:何ヶ月:何日かという計算です。
 ・実際の用途としては、常時通電している装置で起動から1秒ごとに変数を+1していき、稼働時間が
  どれくらい経過しているかを、年/月/日に変換して表します。
 
 ・「システムが累計し続ける日数」も同様に、1日に1回特定の変数を+1していった物を、その経過した
  日数から年/月/日を割り出す命令です。


VERSION 一覧へ戻る
プログラムがコンパイルされた日付と時間を、文字変数に入れます。

書式 variable = Version(type)
注釈 variable = コンパイルされた日付と時間を入れる文字変数。 (19文字)
type = 日付の表現形式。 (0 または 1)

参照 VER

 
・日付の表現形式。
   type = 0  MM-DD-YYYY HH:MM:SS  月-日-年 時:分:秒
   type = 1  DD-MM-YYYY HH:MM:SS  日-月-年 時:分:秒
 
・VER()命令とは、異なる命令です。




   電子工作の部屋 Top へ 前のページへ戻る