2023年7月15日土曜日

PIC16F1705にアナログコンパレーターを組み込む

 PIC16F1705で作っている装置にアナログコンパレーターを使う必要が出てきたのでコンパレーターのモジュールを組み込んでみた。


モジュールの組み込み

今まで、PIC16Fにモジュールを組み込には、
データーシートを開き
1)モジュールの構成を理解して
2)レジスター割り付け、設定内容をチェックして
3)初期設定の内容をプログラムに書く

という手順が必要でした。

私は、この手順でいつも
レジスター名を間違えたり、設定の値を間違えたりで
思うように動かすまでに、結構時間がかかりました。



MCCを使ったやり方
X IDEの開発環境で提供されている 
(MAPLAB X IDE v6.00)
MCCを使うと、次のように簡単にできる

1)X IDEを立ち上げ、MCCアイコンをクリック
2)デバイスリソース表示メニューからCMP1, CMP2を追加
3)コンパレーター設定メニューで必要な項目をチェック
 ・入力信号を選択
 ・基準信号を選択
 ・ヒステリシス設定を選択
 ・出力極性を選択
 など
4)Pin moduleでピンの特性を設定
        Pin Manager:Grid Viewでピンを割り付け
5)MCC画面の左上にあるGenerateをクリックして、
        コードを生成
6)終了

MCCを使えば、モジュールの初期設定、ピン割り付けも
簡単になる

今回、少し迷ったところは、入力信号の選択とピン割り付けの関係が
よくわからなくて、データーシートを読み直してしまったこと。


ピン割り付けの規則
PIC16F1705では、概ね次のような感じになっている
1)ほぼ全てに割り付け可能    デジタルピン
2)グループ内で選ぶ                例、アナログコンパレターの入力ピンなど
3)固定されているもの            オペアンプの入出力ピン、 RCポートを使う。

データーシートに記載されている
アナログコンパレータのピン割り付け

Pin Allocation Tables

14/16-PIN ALLOCATION TABLE (PIC16(L)F1705)

          コンパレータ1    コンパレータ2    ピン番号
Cin+    RA0                                                        13p
                                            RC0                        10p

Cin0    RA1                        RA1                        12p
Cin1    RC1                        RC1                        9p
Cin2    RC2                        RC2                        8p
Cin3    RC3                        RC3                        7p

COUT    任意                    任意


MCCのメニューでは、Cin+, Cin0, Cin1, Cin2, Cin3
を選ぶようになっている。

まとめ

MCCを使ったモジュールの組み込みは、
今までに比べて格段に簡単にできる。

ピン割り付けは、次の手順で進めると
比較的うまくいく。

1)アナログピンを使用するモジュールのピンを割り付ける
2)残ったピンにデジタル関連のピンを割り付ける

それでも、
データーシートのモジュール構成ブロック図をみておいた方が
全体の把握ができるので、わかりやすい。




0 件のコメント:

コメントを投稿

手作り電磁石の力をゼムクリップで計ってみた

手作りした電磁石があるので どのくらいの錘を吊り下げられるか 計ってみることにした 調べると、 バネ計りを使う方法などが紹介されているが 家にはないので、身近なもので試す。 大きなおもりの下にゼムクリップを ぶら下げていき、クリップが落ちた前が 限界とすると...