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


PIC−USBIO using BASIC

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
USBインターフェースを内蔵したPICを使ってWindowsパソコンで外部回路を制御するための各種I/O基板の製作記事です。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

[第136回]



●PICUSBIO−03(85)ICモード(7)マスターモード(6)DS1307送信プログラムの波形

前回実行したDS1307日時データ送信プログラムの波形をCPLDロジアナで観測しました。
下がその波形です。

最初のSTARTコンディションです。

PROBE0はクロックSCLです。
PROBE1はSDAです。
SCLがHのときにSDAをLにするとSTARTコンディションになります。

最初の送信データ(スレーブアドレス+R/Wビット)です。

8クロックで11010000を送信しています。
最後の9クロック目はDS1307からのACK(=0)です。
この波形で見る限りSDAはSCLの下がりエッジで変化しているように見えます。

2番目の送信データ(書き込み開始アドレス)です。

アドレス’00000000’を送信しています。

レジスタ0のデータ(秒)です。

00秒(00000000)を送信しています。

レジスタ1のデータ(分)です。

00110000(30H)を送信しています。
DS1307に送る8ビットの日時データはBCD2桁です。
30Hは30分を示します。

レジスタ2のデータ(時)です。

00011000(18H)を送信しています。
18Hは18時を示しています。

レジスタ3のデータです。

レジスタ3は曜日のデータです。
普通は使わないのでここは00Hを送りました。

レジスタ4のデータ(日)です。

00000110(06H)を送信しています。
06Hは6日を示しています。

レジスタ5のデータ(月)です。

00010010(12H)を送っています。
12Hは12月を示しています。

レジスタ6のデータ(年)です。

00100010(22H)を送っています。
22Hは22年を示しています。

このあとレジスタ7のデータ(パルス出力制御)を送っているのですがうっかりしてそこのところの画面コピーを撮るのを忘れてしまったようです。

最後のSTOPコンディションです。

SCLがHのときにSDAをLからHにするとSTOPコンディションになります。

PIC−USBIO using BASIC[第136回]
2022.12.23upload

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