2017.7.5
前へ
次へ
ホームページトップへ戻る

マイコン独立大作戦
ROM/RAM/RTCボードの製作

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
WindowsパソコンにUSB接続して使う現行方式はそれなりに便利ではありますが、ときとしてWindows
のしがらみから開放されて、小さいながらも独立した一個のパソコンとして機能したいと思うこともあります。
独立大作戦の作戦その1はCRTインターフェースボードの製作です。
作戦その2はキーボードインターフェースです。
作戦その3は、SDカードインターフェースです。
作戦その4は、ROM/RAM/RTCボードです。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

[第6回]


●IC通信

CPUとDS1307との間の通信はICで行ないます。
Cには高速通信の規格もあるようですが、DS1307の場合は低速(100KHz)です。
通常の日時データの通信にはそれで十分ですから、なまじ高速でないほうが有り難いです。
以下備忘録を兼ねてDS1307のICによる通信についてまとめたいと思います。
ここではあくまでDS1307との通信に必要なICについてのまとめですから、一般的なICと比べて不足するところがあるかもしれません。
私としてはとりあえずDS1307と通信できればそれでよいので、そのほかのことは今は考えません。

Cはクロックとデータの2線で行なう通信です。
データ線は同じ線を送受信で共用します。
クロックもホストと端末とで双方向にできるらしいのですが、DS1307の場合、クロックはホスト(CPU側)が出力します。

Cの信号波形規格については前回お見せしましたが、もう一度下に再掲します。
こちらが信号波形です。

[出典]Maxim Integrated Products,DS1307 Datasheet

こちらが波形各部の規格値です。

[出典]Maxim Integrated Products,DS1307 Datasheet

データは8ビットで2桁のBCD数として送ります。
そのほかに特殊なコードもありますが、いずれの場合でも通信データは8ビット(1バイト)単位です。
送信の場合、最初にスタートを送ります。
データはクロックがLの期間に変化させますが、スタート、ストップマークはクロックがHの期間中に送ります。
クロックがHの期間中にデータラインをHからLに変化させるとスタートマークになります。
相手(端末)にこれからデータを送ることを知らせるためのマークです。
逆に クロックがHの期間中にデータラインをLからHに変化させるとストップマークになります。
相手(端末)にデータの終わりを知らせるためのマークです。

上は ICの信号規格ですが、それをふまえた上で、DS1307との間で日時データを送受信するための約束ごとがあります。
まずはDS1307のレジスタ構成についてです。

DS1307のレジスタ

下はDS1307のレジスタについての説明です。

[出典]Maxim Integrated Products,DS1307 Datasheet

DS1307には通常の年月日、時分秒のほかに汎用のRAMエリアがありますが、ここではカレンダーの情報以外は使いません。
レジスタの値はBCD数で示します。
CHビットを1にするとクロックオシレータが停止します。
面倒なのでここは常に0にして常時発振状態にしておきます。
レジスタ02の12時/24時の切換え部分がちょっと誤解してしまいそうな表現になっています。
BIT6が1だと12時制、0だと24時制になります。
BIT5は12時制のときはAM/PMを指定するビットになります。
24時制のときはBIT4とあわせて0時〜23時の上位桁(00、01、10)を示します。
レジスタ03は曜日を示します。
ここも誤解してしまいそうな説明になっています。
DS1307は曜日については本当のカレンダー通りではありません(関知しない)。
つまりユーザーの勝手です。
ここは1〜7の数を指定しますが、何曜日にどの数を宛てるかはユーザーの勝手です。
ただし日をまたぐときにレジスタ03の値は+1されます(7の次は1に戻る)から、日曜日を1とすれば月曜日は2ということになります。
レジスタ06は西暦年の下位2桁です。上位は20ということになりますから、2099年まではいけることになります。
その期間の閏の補正がどのくらい正確にプログラムされているのかいないのかはわかりません。
そんな先の話など、どうせそのときにはこの世にいないでしょうからどうでもよい話です。

本日も時間がなくなってしまいました。
続きは次回にいたします。

ROM/RAM/RTCボードの製作[第6回]
2017.7.5upload

前へ
次へ
ホームページトップへ戻る