このように LED を制御することは、マイクロコントローラーや電子機器に慣れるのに最適な方法です。データシートの読み方、低レベルのシステム構成の実行方法、電子回路の構築方法を学びます。しかし、既にご覧になっていると思いますが、最も単純なタスクであっても、最初は多少の調整と試行錯誤が必要です。幸いなことに、基本を理解すれば、同じ手法をマイクロコントローラーのクラス全体に適用でき、独自の関数ライブラリーを開発して、新しいプロジェクトの構築をますます簡単にすることができます。
16F628A にはメモリ マップド I/Oがあります。これは、その内部レジスタが特殊機能ピンの動作を制御することを意味します。
データシート(PDF) によると、28A には 2 つのアナログコンパレータがあります。各コンパレータは、28A の 3 つのピンに接続されています。入力には 2 つのピンが使用されます。比較する電圧に接続されています。3 番目のピンは出力に使用されます。コンパレータは、出力ピンの電圧を高くまたは低く設定することによって、どちらの入力電圧が高いかを示します。
28A には、別のピンに接続された基準電圧もあります。これにより既知の電圧が生成され、それをコンパレータ入力の 1 つに接続できます。テスト電圧をもう一方のコンパレータ入力に接続し、出力ピンを使用して LED を駆動します。次に、テスト電圧が基準よりも高い場合、LED がオンまたはオフになります。(28A は実際に構成可能です。どの条件で LED を点灯させるかを選択できます。)
データ シートには、コントロール レジスタに適切なビットを設定してコンパレータを構成する方法を示すアセンブリ コードが含まれています。
また、28A が LED を直接駆動できるかどうかも確認する必要があります。一部のデバイスには、適切な電流制限回路が内部に含まれています。それ以外の場合は、自分で提供する必要があります。
「16F628A アプリケーション ノート」(メーカーの提案) または「16F628A アプリケーション」(ユーザーが作成したアプリ) を Web 検索すると、うまくいくかもしれません。これは面白そうで、作者は彼のソフトウェアをあなたに電子メールで送信することを提案しています。たぶん、彼もいくつかのヒントを提供するでしょう。
幸運を!