2024.12.17
前へ
次へ
ホームページトップへ戻る


PICBASICコンパイラ

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
まるでインタプリタ。でもコンパイラです。超カンタン超シンプルです。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

[第182回]



●PIC18F45K20(2)動きました!

前回はPIC18F45K50用に書いたテストプログラムをそのままPIC18F45K20に書き込んでみました。
PIC18F45K20はVdd=+3Vなのですがそれを無視してVdd=+5Vで/PICWRを実行しました。
/VERIFYではCONFIGの一部でエラーが表示されたものの幸い破損することなく無事に書き込み読み出しが出来ました。
PIC18F45K50用のプログラムをそのままCONFIGの設定がまるで異なるPIC18F45K20にそのまま書いたのですからCONFIGのところでベリファイエラーになるのは想定内です。
ベリファイエラーにはなったものの前回そこのところを確認してみたところ幸いCONFIGの設定としては無難な設定になっていることが確認できました。
その設定なら多分動いてくれるのではないか、というところで前回は終りました。
その後を受けて今回は[第176回]と同じ動作テストをPIC18F45K50の代わりにPIC18F45K20でやってみたのですが。
全くうんともすんともいいません。
駄目か…。
いや。
ひょっとしたら。
前回確認したPIC18F45K20のDataSheetを思い出しました。
Operating Voltage Range: 1.8V to 3.6V
と書いてありました。
Programの書き込み時にはVdd=+5Vでもできたのですが、通常の動作はやっぱり+3.6V以下でなくてはならないのかも。

そういうことでした。

+5Vの代わりに+3Vにしたところしっかり動きました。
もっとも前回書きましたようにクロックは12MHzクリスタルのままのクロックですから実行速度はPIC18F45K50のときの1/4になりました。
PIC18F45K50テストプログラムのソースリストは[第175回]にあります。
PICの発振回路自体は12MHzのクリスタルを使っていますがPIC18F45K50のCONFIGの設定でそれを内部の4xPLL回路で4倍の48MHzにしています。
今回のPIC45K20も同じPLL回路を内蔵しているのですがCONFIGの設定が異なるためにそれが働いていません。
もとのプログラムではCLOCK=48MHzのときに256msecごとにポート出力を+1カウントしていくのですが今回のPIC18F45K20ではそこのところがもとの4倍の1024msec、約1秒ごとのカウントアップになっています。

ポート出力をオシロスコープで観測しました。

上側(CH1)はRB0で下側(CH2)はRB1です。

ここまでうまく出来ました。
次回はプログラムをPIC18F45K20用に書き換えてテストをしてみます。

PICBASICコンパイラ[第182回]
2024.12.17 upload

前へ
次へ
ホームページトップへ戻る