今回から回路図設計に入ります。最初は使用する部品について確認します。
回路図設計を始める前に
これからPIC16F18857を中心に、センサやLCDモジュール、LEDを制御する回路を設計します。
回路図設計に入る前に、動作電圧の確認やPIC18857のピン配置などの基本的な確認を行います。
動作電圧
第1回の記事で説明しまたが、製作するシステムの動作電圧は3.3Vにします。
ここでもう一度各部品の動作電圧使用を確認しておきましょう。
部品 | 動作電圧 |
---|---|
PIC16F18857 | 2.3V 〜 5.5V |
温度センサ(ADT7410) | 2.7V 〜 5.5V |
温湿度・気圧センサ(BME280) | 1.71V 〜 3.6V |
LCDモジュール | 3.1V 〜 5.5V |
(参考) 2色LED | 2.9V以上 |
これらのデータから、動作電圧としては、3.1V 〜 3.6Vに範囲に収める必要があります。基礎編、応用編で使用した電圧(4.5V〜5V)では高すぎますので、電池ボックスの電圧を3.3Vに変換して動作電源として使用します。この電圧にした理由や電圧変換回路の設計は、次回の記事で詳しく説明します。
なお、LEDは使用する製品により電圧が異なりますが、どのLEDも今回の動作電圧3.3Vであれぱ点灯します。上の表は参考として記載しました。
PIC16F18857ピン配置
次にPIC16F18857のピン配置を確認しておきます。
(Microchip社「PIC16F18857データシート」より抜粋)
今まで使用してきたPIC12F1822では、RAポートのみで、制御できるピンはRA0〜RA5の6ピンでした。PIC16F18857はRA、RB、RC、REポートがあり、それぞれRA0〜RA7(8ピン)、RB0〜RB7(8ピン)、RC0〜RC7(8ピン)、RE3(入力専用1ピン)の合計25ピン使用できます。
PIC12F1822に比べてピン数が多いので、なんだか難しそうな印象を受けますが、単に制御できるピン数が多いだけです。PIC12F1822の知識があれば、十分対応できます。
PIC16F18857にもPWMやADコンバータなどいろいろな機能があります。これらの機能はプログラムで設定することにより基本的に自由にピン割り当てができます。例えば、PWM機能を例に説明します。PIC16F18857はPWMモジュールが2個搭載されています。
これらの2個のPWMモジュールはデフォルトではRC1とRC2に割り当てられていますが、プログラムで設定することにより、RB0〜RB7、RC0〜RC7のどこかのピンに割り当てることができます。
この実践編では、PIC16F18857が搭載しているI2C通信モジュールを使用します。このI2C通信モジュールのデフォルトのピン割り当てではブレッドボード配線上の都合が悪いため、I2C機能のピン割り当てを行います。このピンの割り当ては意外に難しく、ちょっと心が折れそうなところもありますので、詳しく説明したいと思います。
なお、SPI通信とLED制御は普通のデジタル入出力ピンで制御しますので、PIC12F1822のRAポート、LATAポートと同じ扱いで特に難しいところはありません。
また、上のデータシート抜粋の図には、PICKit3でプログラム書き込み時のピンの表記がありません。PICKit3接続時は以下のピン配置になっています(MCLRは記載されていますが、以下の表に念のため記載します)。
信号名 | PICKit3のコネクタピン番号 | PIC16F18857のピン番号 |
---|---|---|
ICSPCLK | ||
ICSPDAT | ||
MCLR |
PIC16F18857の電源
もう一度最初のピン配置の図を確認してみてください。電源はVDDピン(プラス)とVSSピン(マイナス=グランド)です。VDDは20番ピンにありますが、VSSは8番ピンと19番ピンの2ピンあります。
PICマイコンに限らず、他のマイコンなどでもVDDやVSSが複数ピンあるケースも多いです。このような場合は必ず全ての電源ピンを接続するようにしてください。例えば、VSSは2本あるからどちらか都合のいい方だけを接続する、ということは避けます。理由ですが、簡単に説明すると、複数のピンで電源を確保することにより、マイコンの内部回路の動作を安定化させるためです。
PIC16F18857の場合は、VDD(20番ピン)は電源のプラス、VSS(8番と19番)は両方とも電源のマイナスに接続します。また、パスコンも付けた方がノイズに強くなりますので、実践編でも積層セラミックコンデンサ(0.1μF)を付けます。
回路設計の順番
それでは次回以降の記事で、PIC16F18857を中心に以下の順番で回路を設計していきます。
- 電源回路
電池ボックスから供給される4.5V〜5Vの電圧を3.3Vに変換する回路を設計します。また、PIC16F18857への電源供給とパスコンの設計もします。 - PICKit3書き込み回路
書き込み回路はPIC12F1822と全く同じです。特に注意点もないので回路図を念のため確認するだけ、という感じです。 - センサ・LCDモジュール回路
温度センサと温湿度・気圧センサの回路を設計します。ただこの段階ではまだ通信方式を説明していませんので、単に「こう接続します」という説明だけになってしまいます。すみません。なぜそのような接続になるかは通信方式の時に詳しく説明します。 - LED回路
PIC18F1822のLED点灯回路と同じで、こちらも特に注意点はありませんので、回路図の確認になります。
それでは次回から回路図設計です!
更新履歴
日付 | 内容 |
---|---|
2018.3.21 | 新規投稿 |
お話の進展が早くて楽しみです。
全パーツ揃えて毎日楽しみにしております。よろしくお願いいたします。
質問なのですが液晶を
https://strawberry-linux.com/catalog/items?code=27002
にそのまま置き換え可能でしょうか?
jh3gpnさま、
ご質問どうもありがとうございます。
Strawberry Linuxさんから発売されているLCDモジュールの仕様を確認したところ、搭載しているコントローラは同じですのでおそらく置き換えるだけで動作すると思います。実物は持っていないので、確認まではできませんが、同じ通信プロトコルで同じコマンド体系なので、理論上は動作します。なお、動作電圧が3.6Vまでですので、もしかしたら設定コマンドが異なる可能性があります。実践編の記事ではコマンドも詳しく説明しますので、ご確認いただければと思います。
(もちろんわからないようでしたらご質問くださればと思います)
回路図設計とブレッドボード組み立ての記事はなるべく早めに書くつもりですので、今後ともよろしくお願いいたします。