dsPICのコンフィグ設定

TL594とか位相シフトPWMとかに使われるPWM信号が作りたいのでConfigについて色々しらべてみました。STMマイコンとかでもあったけどそっちもめんどくさそうなのでPICでやってみます。

まずPICというものでLチカをしただけなので「何となく動くんだな」ってくらいでした。

Configの設定情報も少ないので色々調べながらやっています。

 

FBS

//ブートセグメント(プログラム書込領域らしい)設定

BWRP・・・Boot Segment Write Protect

訳すとブートセグメントを書き込めないようにするか?と聞いているらしい

もちろん書き込めなくなっては意味がないので「WRPROTECT_OFF」

BSS・・・Boot Segment Program Flash Code Protection

プログラムが書かれているフラッシュメモリの保護をどうするか?と聞いてるらしいのか?

ここは何もしなくていいでしょう「NO_FLASH

 

FGS

//FBSのセット定義らしい

よくわからいのでデフォルトのままでいいでしょう。

(セキュリティがあったためにバグっても嫌ですし)

 

FOSCSEL

//クロック源の設定

時間の基準となるクロックを決めるもの。

<外部クロック使用時>

FRC・・・外部クロック、ただのRC回路のクロックで約7.37MHz

FRCPLL・・・外部クロック、FRCにPLLを通したもので速度調節可能

PRI・・・外部クロックを使う設定

PRIPLL・・・外部の発振信号にPLLを掛けることで周波数を調整可能

SOSC・・・外部クロック(32.768kHz)をつけて高精度な1秒を出すことができるそうです(外部クロックとかでバラつかないのかな?)

LPRC・・・低電圧(2.5V程度?)型のRC発振(回路。通常は使わないほうがいいだろう

FRCDIV16・・・内部クロックを16分周したもの?よく知らんけど

FRCDIVN・・・外部クロックをN分周したもの?分周させたい時用?

 

IESO

//起動時のクロック指定

簡単に言うと起動時をFRCで起動して、その後ユーザー指定のクロックに切り替えるか?

今回は「OFF」

 

POSCMD

//発振源の種類選択

NONE・・・内部発振源

EC・・・CMOS,TTXのクロック

XT・・・低速水晶クロック

HS・・・高速水晶クロック

ていうことらしい

 

OSCIOFNC

//クロック出力するか?入出力ポートとするか?

 

IOL1WAY

//再構成を許可する?よくわからないので「OFF」

 

FCKSM

//クロックをモニタするか?よくわからないので「OFF」

 

動作クロック周波数の計算

N1・・・入力クロック / a

M・・・b

N2・・・出力クロック / c   ・・・N2の式変形すると

(N2はクロック源の周波数らしい)

Fosc = Fin ・M / (N1×N2)

 

多分間違っている箇所があるかも?