DS1302 アメリカンダラスカンパニーが生産する高性能で低電力リアルタイムクロックチップです。31バイトの静的RAMが組み込まれており、SPI 3ワイヤインターフェイスを介してCPUと通信します。このチップはバーストモードをサポートし、一度に複数のバイトのクロック信号とRAMデータを送信できます。リアルタイムクロック関数は、秒、分、時間、1日、週、月、年の情報を提供します。月の日数が31日未満の場合、自動的に調整でき、繰越補正機能があります。DS1302は幅広い動作電圧範囲を持ち、2.5〜5.5Vの間で動作できます。メインパワー供給とバックアップ電源を含む二重電源システムを採用し、バックアップ電源の充電方法を設定できるため、バックアップ電源をトリクル電流で充電する機能を備えています。
代替品と同等物:
• DS1302+
• DS1302N
• DS1302S
DS1302には、次の重要な機能があります。
低消費電力設計:チップは低消費電力設計を採用しているため、バッテリーを搭載したときに長時間の時間を確保できます。
データ保持関数:DS1302にはデータ保持機能があります。つまり、電源が切断された場合でもクロックとカレンダーのデータを維持できるため、データの信頼性と連続性が確保されます。
簡素化されたインターフェイス:DS1302は、シリアルインターフェイス(2線または3線)を介してマイクロコントローラーまたはその他の外部デバイスと通信します。この単純化されたインターフェイスにより、他のシステムと統合してリアルタイムのクロック機能を実装しやすくなります。
クロックとカレンダー機能:DS1302は、数秒、分、時間、日付、月、年を追跡できます。時期と日付を正確に記録するために、完全な時計とカレンダーの関数を提供します。
クロック精度:DS1302は、32.768kHzクリスタルオシレーターを使用して参照クロック信号を提供するため、クロックの精度が高くなります。これにより、非常に小さな毎月の逸脱を備えた正確な時間情報を提供できます。
DS1302のピンアウトでは、VCC1がバックアップ電源であり、VCC2は主要な電源です。DS1302は、主電源がオフになった場合でも、継続的なクロック操作を保証します。このチップは、VCC1とVCC2の間の電圧に基づいて電源法を自動的に選択します。VCC2の電圧がVCC1+0.2Vよりも大きい場合、DS1302はVCC2を搭載しています。VCC2の電圧がVCC1未満の場合、VCC1を搭載しています。X1およびX2は、外部32.768kHz結晶発振器の振動源です。RSTはリセット/チップ選択ラインです。RSTが高く設定されると、すべてのデータ転送が開始されます。RSTの関数には、主に2つのポイントが含まれます。1つはコントロールロジックです。これにより、アドレス/コマンドシーケンスをシフトレジスタに送信できます。もう1つは、単一バイトまたはマルチバイトのデータ転送を終了する手段を提供することです。データ転送プロセス中、RSTが低レベルに設定されている場合、データ転送は終了し、I/O PINは高インピーダンス状態になります。パワーオン操作中に、チップが正常に機能するようにするために、VCC電圧が2.5Vに達する前に最初に低く保つ必要があります。同時に、SCLKが低い場合にのみ、RSTを高く設定できます。I/Oは、シリアルデータの入力および出力端子(双方向)です。特定の作業方法については、後で詳しく説明します。SCLKは常に入力端子であり、同期データ送信に使用されます。
•励起クロック周波数:DS1302の励起クロック周波数は、通常の動作に影響を及ぼさないように100kHz未満にする必要があります。
•電圧安定化:DS1302は、入力電源の電圧安定性にも敏感であるため、適切な電圧安定化回路をシステムに追加する必要があります。
•温度:DS1302の温度作業範囲は、0°Cから70°Cの間に設定されています。作業環境の温度がこの範囲を超える場合、DS1302の通常の動作に悪影響を与える可能性があります。
•電源範囲:DS1302の通常の動作電圧範囲は2V〜5.5Vです。電圧がこの範囲を超えると、チップ損傷または長期の動作不安定性を引き起こす可能性があります。
•負荷容量:DS1302出力信号の負荷電流容量は制限されています。外部LEDライトや他の機器に大きな負荷がある場合、通常の動作が影響を受ける可能性があります。
•抗静止:DS1302は通常静電環境にあるため、静電気によって干渉するのを防ぐために対応する措置を講じる必要があります。たとえば、使用する前に、接地ワイヤーを接続し、適切な抗静止手袋やその他の機器を着用する必要があります。
•登録0:最高ビットCHは、クロックストップフラグです。停止後1、正常に作業するときは0です。VCC1が浮かんでいるか、バッテリーが死んでいる場合、次回このビットを読むと、このビットを読みます。。残りの7つの高次桁は2番目の数桁で、低次の4桁は2番目の数字の数字です。
•登録1:最高のビットは未使用です。残りの7ビットの上部3ビットは、1分の数十桁で、下部4ビットは1分の桁です。
•登録2:BIT7が1の場合、12時間形式を表し、0は24時間形式を表します。BIT6は0に固定され、BIT5は12時間形式の朝を表し、1は午後を表します。24時間形式では、BIT4と同じです。一緒になって、それらは時間の数十桁を表し、4桁は時間の数字を表します。
•レジスタ3:高2ビットは0に固定され、BIT5とBIT4は日付の数十桁、低4ビットは日付の単位桁です。
•レジスタ4:高3ビットは0に固定され、ビット4は月の数十桁、低4ビットは月の数字です。
•レジスタ5:上部5ビットは0に固定され、下3ビットは曜日を表します。
•レジスタ6:高4ビットは年間数十桁を表し、4ビットは年間最優秀桁を表します。ここで00〜99が2000年から2099年を参照していることに特に注意してください。
•登録7:最高のビットは書き込み保護ビットです。このビットが1の場合、他のレジスタまたは31バイトのRAMにデータを書き込むことは禁止されています。したがって、このビットは、データを書く前に0に書き込む必要があります。
DS1302はリアルタイムのクロックチップであり、その作業原理は主にオシレーターと周波数の仕切りの組み合わせに基づいています。このチップには、32.768kHz発振器が組み込まれており、結晶の振動を通じて安定した周波数信号を生成します。この周波数信号は、周波数分割によって1Hz時間参照パルスに分割されます。作業を開始するとき、DS1302はパワーオンリセット回路を介して内部レジスタを初期化します。その後、DS1302はラッチを使用して、発振器から1Hzパルス出力を内部カウントレジスタにラッチします。これらのカウントレジスタは、現在の時間情報をBCD(バイナリコード化された小数)フォームに保存します。さらに、DS1302には書き込み保護機能もあります。対応するコントロールレジスタビットを設定することにより、読み取り専用モードにすることができ、偶発的な動作や悪意のある変更を防ぐことができます。データの信頼性のために、DS1302は内部SRAM(静的ランダムアクセスメモリ)のカウントレジスタにデータを保存します。停電が発生した場合、DS1302は自動的にバッテリーバックアップモードに切り替えて、データの永続的なストレージを維持します。外部電源が再接続されると、DS1302はSRAMからのデータを回復し、ラッチを介してカウントレジスタにリロードし、クロック関数の連続性と精度を確保します。
DS1302の基本回路を上の図に示します。その中で、Y2は32.768kHzの外部クリスタルオシレーターで、チップの安定した時計ソースを提供します。P2はバックアップバッテリーであり、メイン電源が電源が切れた後もチップを実行し続けることができるようにします。D1はダイオードであり、一方向の伝導の役割を果たし、主電源電圧が高すぎてバックアップバッテリーが損傷するのを効果的に防ぎます。R6はプルアップ抵抗器として機能し、信号伝送の安定性を高めることができます。
DS1302を使用する手順は次のとおりです。
ハードウェア接続:DS1302チップをメインコントローラーに接続します。DS1302は、マスターコントローラーのVCC(3.3Vまたは5V電源)、GND(グラウンド)、およびデータライン(DIO)、クロックライン(SCLK)、リセットライン(RST)に接続する必要があります。
クロック設定:通常の作業モードで、対応する年、月、日、時間、分、2番目のデータをDS1302に記述して、クロックを設定します。DS
DS1302は、リアルタイムクロック/カレンダーと31バイトの静的RAMを含む正確なクロックモジュールです。ホストマイクロコントローラーとの通信は、シリアルI2Cインターフェイスを介しています。
DS1302は、3つのピンSCLK、I/O(DAT)、およびCE(RST)を使用して、特別な3線型インターフェイスを介して通信します。DS1307はI2Cを介して通信するため、SDAとSCLのみが必要です。
DS1302チップは非常に電力効率が高く、3Vリチウムバッテリーで最大5年間実行できます。供給電圧は5Vです。RTCモジュールは、シリアルI2C通信プロトコルを使用して、このモジュールとマイクロコントローラーのインターフェースを非常に簡単にします。
このRTC DS1302リアルタイムクロックモジュールを使用すると、ArduinoまたはMCUを使用して、次のような時間 /日付関連機能を実行できます。ユーザーに。