今回は、今までの知識をもとに他のタイプのPICマイコンでLED制御回路を設計する練習をします。
今回の内容
電子回路図は一見すると難しそうですが、ポイントを押さえていけば、基本的な電子回路は組めるようになっていきます。ただ、解説を読んでいるだけですとあまり知識が身につきませんので、今回は自分で考えてみる練習をしたいと思います。
最後に解答例を示しますが、これが唯一の正解というわけではありませんので、「自分が設計した電子回路は問題ないのだろうか」など、疑問などありましたら、お問い合わせフォームからご連絡いただければと思います。
なお、回路図は最初は手書きがいいと思います。パソコンで書く場合、電子回路図を描くアプリはありますが、操作方法を覚える必要があるため、操作方法を覚えるだけで時間がかかってしまいます。
またドロー系のアプリで描く場合は意外に大変で、途中で心が折れそうになります。というわけで、それほど部品点数が多くない場合は手書きの方が要領良く描けると思います。手を動かす、というのも脳を刺激する重要な要素です。
作りたいもの
鉄道模型やジオラマなど、模型の世界でLEDを制御できるといろいろと表現が広がります。そこで、今回はPICマイコンを使って模型の信号機を制御する電子回路を作ることにします。
以下の条件で製作することにします。
- PICマイコンは「PIC18F14K50」を使用します。このマイコンはUSB機能も持っているため、パソコンに接続して制御する、という発展も考えられます。また制御ピン数がそれなりにありますので、このマイコンを使ってみます。2016年7月現在、1個220円とちょっと値段が高めのマイコンです。
- LEDは信号機3色を表現する、緑(青ですかね…)、黄、赤の3つのLEDを使用することにします。またLEDに接続する抵抗の値は470Ωとします。
- PICマイコンにはパスコンをつけることにします。パスコンは0.1μFのものを使用します。
- PICKitのコネクタを接続することにします。
- 電源は5Vとします。
資料とその他情報
回路図作成のための資料です。
使用するPICマイコンは一般的にネット通販で購入できます。例えば以下のサイトです。
以下はPIC18F14K50のデータシートから引用した、ピン仕様です。
PIC12F1822と比較して、各ピンが多くの機能を持っていますよね。ピンに書いてある文字はまだわからなくても大丈夫です。以下に、今回の練習の電子回路図をかくために必要なピン名の説明をしておきます。
PIC12F1822の回路を設計したとき、PICKitのコネクタに接続するピンとして「ICSPDAT」「ICSPCLK」がありました。これらのピンには別名があり、「ICSPDAT」は「PGD」、「ICSPCLK」は「PGC」と呼ばれることもあります。PIC18F14K50では、「PGD」「PGC」が使われています。
つまり、PICKitのICSPDATとICSPCLKは、それぞれPIC18F14K50の「PGD」「PGC」に接続することになります。
また、今回はLEDを3個接続しますので、PICマイコンの制御ピンを3ピン使用します。使用するピンは、以下の通りとします。
PIC18F14K50のピン | 接続するLED |
---|---|
RC3 | 緑LED |
RC4 | 黄LED |
RC5 | 赤LED |
PIC12F1822では、制御ピンの名前は「RA3」「RA4」など、「RA」という文字列で始まるピン名でした。PIC18F14K50では、この文字列は「RA」「RB」「RC」の3種類があります。今回はそのうち、「RC3」「RC4」「RC5」という制御ピンを使用します。
考えるポイント
以上で仕様を決めましたので、早速電子回路図を作成してみてください。と言ってもまだ電子回路図を覚えたばかりではちょっと難しそうですよね。
それでは、どのように進めていけばよいか、一緒に考えてみましょう。もちろん、上で説明した仕様だけで、電子回路図がかけそうでしたら是非挑戦してみてください。
最初はPIC18F14K50で接続が必要なピンはどこにあるか探します。必要なピンは以下になります。
- 電源系
VDDとVSSが必要です。 - PICKit系
MCLR/VPP、VDD、VSS、ICSPDAT(PGD)、ICSPCLK(PGC)が必要です。 - LED系
RC3、RC4、RC5が必要です。
とは言ったものの、これらをデータシートから探すのは大変ですよね。探すコツですが、PICマイコンの場合、型番が違ってもある程度ルールがあります。VDD、VSSは1番ピンと最後の番号のピンにあることが多いです。
また、MCLR/VPPは4番ピンであることが多いです。ICSPDAT(PGD)とICSPCLK(PGC)はVSSの隣にあることが多いです。RA、RB、RCなどの制御ピンは、、、結構バラバラなのでガチで探すしかありません。もし余力があったら、他のPICマイコンのデータシートも見てみてください。(データシートは秋月電子通商さんの通販サイトの各PICマイコンのページでリンクが貼られています)
それでは電子回路図の描き方です。
まずは主役のPIC18F14K50の図を描きましょう。ピン名はかなり複雑なのですべて書く必要はありません。必要な部分のみ書けばよいでしょう。
最初にPICKitの回路を接続します。
次にRC3、RC4、RC5のピンにそれぞれLEDの回路を接続します。抵抗を忘れないようにしましょう。
最後にPIC18F14K50に電源を接続しましょう。パスコンをつけることを忘れずに。
解答例
私は以下のように描いてみました。これと同じでなくても、電気的な接続があっていればOKです。
まず、PIC18F14K50を描きます。全部のピン番号とピン名を描くと大変なので、必要なピンのみ描いてみました。
次に、PICKitの接続回路を描きます。
次にLEDを接続します。
最後に電源を接続します。
ところで、信号機として電子回路図を作成したのはいいけど、どうやって制御するのよ、って声も聞こえてきそうです。制御方法についてはこの基礎編の後半のプログラムの解説をお読み頂ければ、信号機の制御プログラムも作れると思います。
更新履歴
日付 | 内容 |
---|---|
2016.7.27 | 新規投稿 |
2018.11.12 | PICkitコネクタ形状変更(PICkit3/4対応) |
2018.11.23 | 画像リンク修正 |
マイコン初心者です。当サイトを読みながら勉強させていただいていますが、
一通り読んでから、課題2にチャレンジしてみていますが、FOSCの設定がわからず。
PIC18F14K50の場合、INTOSCIOが設定できませんがどうすればよいのでしょうか?
解決できました。IRCの設定でINTOSCIOと同じように内部クロックの設定ができました。
habit7さま、
このチャレンジ課題は回路図作成だけでしたが、ご自分でプログラムの検討もされているんですね。自分で考えると、読むだけよりも色々な知識が身につきますので、是非頑張ってください!
PIC18F14K50の内部クロック設定は、configのFOSCレジスタで内部クロック使用の設定にして(FOSC=0b1000)、OSCCONのIRCFで周波数の設定を行います。
他に不明点がありましたらご質問いただければと思います。