エネルギーメーターのハードウェア回路設計によれば、エネルギーメーターの操作プロセスは次のように表すことができます。1. CS5460Aが電力パルス、方向パルス、および割り込みパルスを出力しない場合、シングルチップAT89C51は周期的にウォッチドッグプログラムを実行し、今月の累積電力値を表示する表示プログラムを実行し、時間値を更新するかどうかを決定し、赤外線通信が発生するかどうかを決定します。 CS5460Aの電流瞬時レジスタと電圧瞬時レジスタの値を読み取って、過電流、過電圧、または低電圧の電源オフ保護のどちらであるかを判断します。上記の機能が完了すると、プログラムは外部割り込みを受け取り、サイクルごとにキースイッチの状態を問い合わせ、押されたスイッチに応じて対応するプログラムを実行する準備が整います。2. CS5460Aの電源出力ピン()および電源方向インジケーターピン()がパルスを出力すると、割り込みサービスプログラムは、クロックチップDS1302に保存されている期間パラメーターとリアルタイムクロックの値に従って、現在の期間タイプを判断します。外部割り込みに応じて電力を蓄積します。結果を拡張データメモリに保存し、割り込みサービスルーチンを終了してプロセスに入ります。図4-1に示すように、コンパイルされたプログラムは、設計されたエネルギーメーターのすべての機能を実行できます。各機能ユニットのプログラム実装方法は、以下の部分で説明できます。CS5460Aチップには16個の24ビットレジスタが含まれています:構成レジスタ、DC電流オフセットレジスタ、AC電圧レジスタ、AC / DC電流ゲインレジスタ、AC / DC電圧ゲインレジスタ、サイクルカウントレジスタ、パルスレートレジスタ、符号付きレジスタ、なしシンボルレジスタ、タイムベースキャリブレーションレジスタ、パワーオフセットレジスタ、AC電流オフセットレジスタ、AC電圧オフセットレジスタ、ステータスレジスタ、マスクレジスタ、コントロールレジスタ。これらのレジスタを使用して、CS5460Aの設定、収集されたデータの保存、シリアル入出力の制御を完了します。CS5460Aのシリアルポートには、受信バッファと送信バッファを含むコマンド解釈ステートマシンがあります。ステートマシンは、シリアルクロックの立ち上がりエッジで8ビットのコマンドワードを解釈し、コマンドワードを解釈した直後に外部マイクロコントローラーから要求されたコマンドを実行するか、レジスターのデータ転送の準備をします。送信を実行する前に24シリアルへの書き込み操作を行った場合クロックが完了すると、読み取りデータ要求を送信バッファに転送するために内部レジスタが必要になります。