PIC16F877A:基本の内訳とプロジェクト用の選択方法
マイクロコントローラ
ソース:Pixabay
プロジェクトをすばやく成功させる有名なマイクロコントローラーを探している場合は、PIC16F877A を検討できます。それとは別に、このデバイスは非常に使いやすく、コントローラーのコーディングやプログラミングが簡単です。
さらに、このデバイスにはフラッシュ メモリ テクノロジが搭載されており、複数回の書き込みと消去が可能です。 PIC マイクロコントローラ プロジェクトやデジタル電子回路で使用する前に、このデバイスについて詳しく知りたいですか?
良いニュースは;
この記事は、PIC16F877A の基本、アプリケーション、プログラミング方法などを説明することで、PIC16F877A の知識を高めるために作成しました。
さぁ、始めよう!
PIC16F877A マイクロコントローラ:概要と機能
PIC16F877A マイクロコントローラ
出典:ウィキメディア コモンズ
PIC16F877A は、プログラムが簡単で堅牢な CMOS 8 ビット マイクロコントローラーで、次のようなさまざまなデバイスと互換性があります。
- PIC16C7X
- PIC16C5X
- PIC162CXXX
さらに、このデバイスは 40 または 44 ピンのパッケージに多くの電力を搭載しています。
また、マイクロコントローラーには EEPROM があり、受信機の周波数や送信機のコードなどの重要なデータを永続的に保存できます。
興味深いことに、PIC16F877A は費用対効果が高く、取り扱いが簡単です。また、その柔軟性のおかげで、これまでマイクロコントローラーを使用したことがない場所でもデバイスが機能します。
PIC16F877A の特長
- このデバイスは最大 20 MHz の周波数で動作します。
- 内部発振器は付いていません。
- 最大約 100mA の電流を供給できます。したがって、PIC16F877A の GPIO ピンの電流制限は 10mA です。
- PIC16F877A には、35 個の命令セットが含まれています。
- マイクロコントローラは、44 ピン QFN、40 ピン PDIP、44 ピン TQFP、44 ピン PLCC の 4 つの IC パッケージで利用できます。
PIC16F877A の動作電圧範囲は 4.2 ~ 5.5V です。そのため、5.5V を超える電圧を提供すると、マイクロコントローラーに永久的な損傷を与える可能性があります。
PIC16F877A のその他の機能を以下の表に示します:
データ EEPROM | 256 バイト |
プログラム メモリ タイプ | フラッシュ |
通信周辺機器 | MSSP (SPI/12C)、UART (1)、12C (1)、SPI (1) |
タイマー モジュール | 8 ビット (2)、16 ビット (1) |
RAM バイト | 368 |
CPU | 8 ビット PIC |
I/O ピン数 | 33 |
CPU 速度 (MIPS) | 5 MIPS |
DAC モジュール | なし |
ピン数 | 40 |
プログラム メモリ (KB) | 14KB |
ADC モジュール | 8ch、10ビット |
コンパレーター | 2 |
表> PIC16F877A マイクロコントローラ:ピン配置構成
以下は、PIC16F877A のピン配置構成の概要です:
PIC16F877A シリアル ポート
PIC16F877A は、シリアル ポートのおかげでデータ通信に効果的に機能します。前述のように、送信ピンまたは RC6/Tx/CK は、シリアル通信を実現するのに役立ちます。さらに、シリアル データの送信にも使用できます。
ただし、シリアル データを受信する場合は、レシーバー ピンまたは RC7/Rx/DT が理想的です。
PIC16F877A マイクロコントローラ用コンパイラ
44 ピン PIC16F877A マイクロコントローラ
ソース:Flickr
PIC16F877A マイクロコントローラで使用できるさまざまなコンパイラが存在します。そのため、好みのコンパイラを入手したら、コードを記述してデバイスにアセンブルします。
その結果、プログラマーを使用して PIC マイクロコントローラーにアップロードできる 16 進ファイルが生成されます。
PIC16F877A で LED を点滅させるための回路図
PIC16F877A 回路図
出典:Pic Learning
マイクロコントローラーで LED を点滅させるための回路図は、適切な接続 (LED と PIN の接続方法) を示しています。また、電流制限抵抗として機能する抵抗があれば役立ちます。それは、1 つのピンから最大 5mA の電流しか得られないからです。
方法は次のとおりです。
1. Proteus 組み込みライブラリに移動し、PIC16F877A マイクロコントローラとその他のコンポーネントを選択します。
2. 抵抗 (330R) を使用して、LED を PIC16F877A のピン 16 に接続します。
3. 発振させるには、PIC マイクロコントローラのクロック入力 (ピン 13) とクロック出力 (ピン 14) の間に 4MHz 水晶を接続します。その間、水晶の両側に 2 つのコンデンサ (C1 と C2) を接続します。
4. 次に、コントローラの MCLR ピンに移動し、プルアップ抵抗を取り付けます。その後、抵抗の反対側を Vdd に接続できます。
PIC マイクロコントローラの選択方法
PIC プロジェクトに最適な PIC マイクロコントローラーを選択する前に、次の質問に答えることが重要です。
あなたは専門家ですか、それとも初心者ですか?初心者の場合は、幅広いアプリケーションと優れたオンライン サポートを備えたマイクロコントローラーを選択することをお勧めします。 PIC18F4520 は、このカテゴリのマイクロコントローラーの完璧な例です。
システムの動作電圧は? 3.3V の場合は、3.3V マイクロコントローラーを選択します。ただし、約 5V の場合は、5V マイクロコントローラーを使用してください。
予算が限られていますが、小さなサイズが必要ですか?小型の 8 ピン マイクロコントローラーを入手できます。
どのモジュールが必要ですか?ここでの目標は、サポートする解像度と ADC チャネルを備えた PIC を選択することです (多くのアナログ電圧を読み取る場合)。
PIC プロジェクトには、CAN、UART、I2C などの通信プロトコルが含まれていますか?その場合は、通信プロトコルをサポートする PIC を入手してください。
PIC マイクロコントローラのプログラミング方法
PIC マイクロコントローラをプログラムするには、さまざまな方法があります。アセンブリ言語を使用して、廃止された方法を選択できます。または高度な方法を使用します。まず、統合開発環境 (IDE) (MPLABX v3.35 など) を入手してプログラミングを行います。
次に、XC8 などのコンパイラを入手して、プログラムを HEX ファイル (マイクロコントローラで読み取り可能な形式) に変換します。 3 番目に、HEX ファイルを統合プログラミング環境 (IPE) (MPLAB IPE v3.35 など) に入れます。
興味深いことに、このソフトウェアはすべて Microchip 社から無料でダウンロードしてインストールできます。
PIC16F877A のアプリケーション
PIC16F877A は次のようなアプリケーションで使用できます。
- Arduino モジュールの交換
- 自動化プロジェクト
- 組み込みシステム プロジェクト
- ロボット工学
最後の言葉
PIC16F877A は、市場で入手可能な最高のマイクロコントローラーの 1 つであり、使いやすさ、複数の書き込み消去機能、簡単なプログラミングの条件を満たしています。
また、このデバイスは、産業および自動車産業の A/D アプリケーションに最適です。さらに、複数の通信プロトコルと I/O インターフェイスを必要とするプロジェクトに最適です。
PIC16F877A についてどう思いますか?次のプロジェクトに使用する予定はありますか?お気軽にお問い合わせください。