今回はMCC設定画面で、マイコンの基本設定を行います。
設定の流れ
これから、デフォルトで表示されている機能モジュール、「System Module」「Pin Module」「Interrupt Module」の設定を順に行います。
最初に「System Module」が選択されていると思いますが、選択されていない場合は「System Module」を選択してください。
「System Module」を選択すると、右側の領域にシステムに関する設定項目が表示されます。この領域は以下のように3つのタブ、「Easy Setup」「Registers」「Notifications」があります。
それぞれのタブは以下の内容になっています。
- Easy Setup
代表的な設定項目のみが表示されています。とりあえず動作させるだけであればこのタブに表示されている項目を設定すればOKですが、細かい設定はできません。 - Registers
Easy Setupでは代表的な設定しかできませんが、このRegistersタブでは全ての機能レジスタの設定を行うことができます。このタブのみに表示される必須設定項目も多いので、基本的にはEasy Setupで設定を行なった場合でも、こちらのRegistersタブでレジスタの設定を確認してした方がいいと思います。 - Notifications
このタブには、設定に矛盾があるときに、その内容が表示されます。デフォルト状態では1つ警告が表示されていると思いますが、正しい設定を行うことにより警告が消えます。
このような構成になっていますので、設定の流れとしては、「Project Resources」から機能モジュールを選択し、右側の「Registers」タブで設定を行う、という作業を、全ての機能モジュールに対して行っていくことになります。
なお、機能モジュールによっては表示されるタブの種類が異なることもあります。その場面が出てきたら別途説明いたします。
それでは、「System Module」「Pin Module」「Interrupt Module」の順で設定していきましょう。
「System Module」設定
Sysetm Moduleの設定は、「Easy Setup」タブは使用せずに「Registers」タブで以下のようにしてみました。なお、Mac版のMPLABX IDE(Version4.05)では、「MCLRE」設定で「MCLR/VPP pin function is digital input」を選択したくてもなぜか選択できませんでした。原因不明ですが、今回のMCC確認用の回路では、RA3は使用しませんのでこのままにします。
「Pin Module」設定
次に「Project Resources」から「Pin Moudle」を選択します。選択するとEasy Setup画面には何も表示されず、下の方にピン設定の画面が表示されていると思います。
「Pin Module」では、最初に画面下の方にある設定画面でピンの設定を行います。以下の図の青点線枠で囲んだ部分で、それぞれのピンの入出力設定を行います。PIC12F1822のGPIO(入出力ピン)はRA0〜RA5の6ピンありますので、0〜5の番号の列に対して、「output」か「input」の鍵マークをクリックすることにより、入出力を指定します。
なお、この設定はあくまでデジタル入出力の設定です。今回、RA2をアナログ入力ピンに設定します。アナログ入力ピンにする場合は、ここでは何も設定しない点に注意してください。RA5ピン(LED接続ピン)は出力設定します。その他のピンは使用しませんので、とりあえず出力に設定しておきます。設定が終わると以下のようになっていると思います。
これでピンの入出力設定ができました。この設定を行うと、画面の上の方に、以下のように各ピンの詳細設定項目が表示されます。
いろいろ設定があります。ちょっと眠くなりそうですが、、、各項目を説明します。
- ピン名
「RAx」の形式のピン名が表示されています。ピン番号ではありませんので注意します。 - ピンのカスタム名
ピンは「RAx」という呼び方で区別できますが、プログラム上「RAx」という名称で扱うとわかりづらくなることがありますので、自分でピンの名前を設定することができます。今回はRA2のスイッチ、RA5のLEDを使用しますので、それぞれ「SWITCH」「LED」という名称に設定しようと思います。またついでですが、RA4も「BUZZER」に設定することにします。このように設定を行うと、プログラム上、どのように記述することができるか、プログラムを作成するところで説明します。 - 初期出力設定
ピンを出力設定にした場合、電源投入直後の出力状態をどうするか設定します。通常はOFFですが、ONにしたい場合はチェックボックスにチェックを入れます。 - アナログ設定
ピンのアナログ/デジタルを設定します。アナログにする場合はチェックし、デジタルにする場合はチェックを外します。今回はRA2ピンをアナログ入力にしますので、この列のRA2にチェックします。 - 入出力設定
入出力設定で、入力にする場合はチェックを外し、出力にする場合はチェックしますが、これは最初に設定しましたの特に変更の必要はありません。 - プルアップ設定
内部プルアップを使用する場合はチェックし、使用しない場合はチェックを外します。今回はプルアップは使用しませんのでチェックを全て外します。なお、入門編、応用編ではプルアップを行うために抵抗を外付けしています。プルアップ抵抗は内部に持っているのになぜわざわざ抵抗を外付けしたか、というと、、、ちょっと難しい話になりますが、内部プルアップ抵抗は普通のプルアップ抵抗に比べて抵抗値が高く、ノイズに弱くなったりします。そのため、入門編と応用編ではプルアップ抵抗は外部につけています。内部プルアップ抵抗を使用する場合は、回路特性を理解した上で使用するとよいと思います。よくわからなかったら、ちょっと面倒ですが10kΩ程度の抵抗を外付けすることをお勧めします。 - 割込み設定
ピンの入力変化があった場合に割り込みを発生させる場合、該当のピンのチェックをつけます。今回は割り込み処理は使用しませんので、すべてチェックを外します。
今回の回路・プログラムに合わせた設定は以下のようになります。
「Interrupt Module」設定
基本設定の最後は「Interrupt Module」設定です。ただ、今回の例では割り込み処理は実装しませんので、設定の変更はありません。以下のままにします。
以上で基本設定の部分は終わりです。次回、ADコンバータ機能を追加して、設定を行い、プログラムを自動生成します。
更新履歴
日付 | 内容 |
---|---|
2017.12.18 | 新規投稿 |
>>「MCLR/VPP pin function is digital input」を選択したくてもなぜか選択できませんでした。
LVPをOFFにした状態でないと、選択できないようです。
参照
kuppさま、
コメントどうもありがとうございました!
このあたりの仕組みはよく理解できていないので、何かわかれば補足記事を書きたいと思います。