トップ > 製品情報 > SPI/I2C > REX-USB61mk2
■SPI/I2Cプロトコルエミュレーター (ハイグレードモデル) REX-USB61mk2

Device Control Utility スクリプト例

結線図

本製品(REX-USB61mk2)を使用し、SEIKO EPSON製リアルタイムクロックモジュールRTC-8564NBとI2C通信をおこないます。


スクリプト実行画面

クロックモジュールに現在の日時とアラームの時刻を設定。アラームの時刻になったら、割り込み処理でウィンドウ上にメッセージを表示します。


スクリプト

###################################################
#
# REX-USB61mk2 USB-SPI/I2C Converter
# Device Control Utility スクリプトデモストレーション Rev1.0
#
# SEIKO EPSON製 RTC-8564NB I2C制御スクリプト
#
# Copyright (C) 2015 RATOC Systems,Inc.
###################################################

# Converterモードを設定
MODE=I2C
# I2Cモード
# I2Cの周波数設定
FREQUENCY=400
# 周波数を400KHzに設定
# デバイス電源供給設定
POWER=ON3
WAIT=10
# 外部電源出力3.3V
# 電源安定時間待ち(1秒)
# I2C信号線のプルアップ制御
PULLUP=ON
# SCL、SDAラインプルアップ
# デバイスアドレスモード設定&デバイスアドレス設定
ADDRESSMODE=7
ADDRESS=51h
# アドレスモード7ビット
# スレーブアドレス50h
# スタート時にダイアログメッセージを表示します
SET R0=0
MSGOK "RTC-8564NBに時刻を設定します。",R0
 
 
# 日付及び時刻の設定を行います 2015年1月19日 15時36分00秒 とします
WRITE 00h
WRITE 20h
WRITE 00h
WRITE 00h, 36h, 15h
WRITE 19h, 01h, 01h, 15h
# コントロールレジスタ1を指定する
#  〃 1 時計を停止する
#  〃 2 割り込みイベントを停止する
# 時計カウンター 秒、分、時をセットする
# カレンダー 日、曜日、月、年をセットする
# アラームの時刻の設定を行います アラームは19日15時37分00秒 とします
WRITE 37h,15h,19h,01h
STOP
# アラームレジスタ 分、時、日、曜日をセットする
 
# アラーム割り込みを検出するDIOの設定を行います
# アラーム用割り込み端子はDIOポートの0とする
DIODIR=00h
DIOINT=01h,03h
# DIO端子をすべて入力にします
# DIOポート0を割込検出可能としHigh→Low変化で有効とする
# アラーム割り込みを有効にします
WRITE_AND_STOP 00h, 00h, 02h
 
# コントロールレジスタ0のSTOPビットに0を設定し時計を開始
#  〃 1のAIEビットに1を設定し割り込み信号を許可する
# 時を刻んでいるか1秒毎に3回読み出し確認する
REPEAT 3
{
  WRITE 02h
  READ_AND_STOP 7
  WAIT= 10
}
# アラーム割り込みを待ちます
WAITINT=60000,R0
# アラーム割り込みが発生するまで待つ(60秒のタイムアウト)
# アラーム割り込みが発生したらダイアログメッセージを表示します
MSGOK "アラームが発生しました。",R0
# メッセージ表示(R0レジスタの値も表示)
# デバイス電源供給設定
POWER=OFF
# 外部電源出力0V

END
ページのトップへ戻る