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


PICBASICコンパイラ

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

[第73回]



●PIC18F2450書き込みテスト

PIC18F2450は28pinのPICです。
PIC18F2550に近い機能のPICです。
USBIFも内蔵しています。
もう10年以上も前になりますが私が最初にさわったUSBIF内蔵型のPICはPIC18F4550でした。
PIC18F4550は40pinのPICです。
当時はND80ZVを企画していたのですがそれにUSBIF内蔵型のPICを使うことを考えました。
しかしUSBIFとしてだけに使うにしてはさすがに40pinではちょっと大きすぎるので同じファミリーで28pinのPIC18F2550を選択しました。
最初はそのつもりだったのですがやはりUSBIFを内蔵していていてさらにコンパクトな20pinのPIC18F14K50があることがわかって、結局USBIF回路にはPIC18F14K50を使うことに決定しました。
それ以来ずっとその流れで来ています。
今回のPIC18F2450もPIC18F2550と発売時期は同じですから多分PIC18F4550やPIC18F2550を秋月から入手した当時にはPIC18F2450も販売されていたのではないかと思うのですがその時点では気が付きませんでした。
PIC18F2450はPIC18F2550に近いPICですがPIC18F2550と比較するとやや劣っているところがあります。
下はPIC18F2450のDATASHEETの最初のページです。

[出典]Microchip Technology Inc. PIC18F2450/4550 Data Sheet

参考までにこちらがPIC18F2550のDATASHEETです。

[出典]Microchip Technology Inc. PIC18F2455/2550/4455/4550 Data Sheet

大きく異なっているのはクロックオシレータモジュールです。
PIC18F2550には最高8MHzまでの内蔵オシレータモードがあるのに対してPIC18F2450では内蔵オシレータモードは31KHzしかありません。
外部クロックモードはともに最高48MHzまでいけます。
メモリサイズも異なっています。
PIC18F2450ではFLASH MEMORY(PROGRAM MEMORY)が16KバイトでRAMが768バイトなのに対してPIC18F2550ではFLASH MEMORYが32Kバイト、RAMは2048バイトあります。
FLASH MEMORYはともかくとしてRAMが1KB以下しかないというのは用途によってはちょっと痛いところがあります。

それはそれとして、PIC WRITERについてです。
書き込みプログラムについて調べてみたところPIC18F2450もPIC18F13K50と同じ書き込みプログラムでいけるらしいことがわかりました。
ということで下はPIC WRITER試作2号機を使ってPIC18F2450にプログラム(マシン語コード)の書き込みをしている画面です。
PIC WRTERプログラムは今までと同じ13K50C1.BINです。
下の画面では13K50C1.BINはすでにロード済みです。
PIC18F2450に書き込むプログラム(マシン語コード)はPIC BASICコンパイラのPIC18F2450用システムプログラムのHEXファイルBS2450_A.HEXです。
毎回同じような画面や説明文を書いています。
前回と同じです、と書いて省略してしまえば簡単なのですけれど。
何回も書いておりますように当ブログ風記事は私自身の備忘録、製作ノートを兼ねております。
何でも省略してしまいますと後になってから「あれはどうしたのだっけ」などということで確認しようとしたときに、省略してしまっていると確認に手間取ってしまいます。
ということで画像も説明文も前回とほとんど変わりませんが省略しないで書いていきます。
面倒と思われましたらざっと斜め読みで読み飛ばしてください。
ただ時として今までとは異なっていることを書くこともありますからもし時間がありましたならば少しはゆっくりお読みいただければと思います。

書き込みプログラムはまだデバッグ中なのでVERIFYのときに読み出したデータを画面に表示させています。
前回と同様PIC18F2450に書き込んだBASICプログラム(マシン語コードプログラム)はテストデータなどではなくて「ホンモノ」のプログラムですからプログラムサイズはそれなりに大きいです。
それをVERIFYのときに読み出して全部表示していますからとても1画面では終りません。
上の画面ではスクロールした画面を戻して最初の部分を表示させています。

下は上の画面からずっと進んで書き込みプログラムが完了したときの画面です。

今回はCONFIGを含めてVERIFYでは不一致の箇所はありませんでした。
これで書き込みは終了です。
実はPIC18F2450をPIC WRITER試作2号機で書き込む場合には今までと異なっている点についての説明が必要なのですが、それについては写真などの準備が必要です。
本日は時間が無くて準備できませんでしたので、そのことについては次回に書くことにします。

ということでその件は次回に回すことにしまして、今回はこのあと前回と同様PICBASICプログラム(マシン語コードプログラム)を書き込んだPIC18F2450が実際にBASICシステムとして正しく動作するかどうかを確認してみました。
実はPIC18F2450を使ったPICBASICプログラムのテストは既に行なっています([第52回]参照)。
しかしそのときはPIC18F2450にBASICプログラム(マシン語コードプログラム)を書き込むのに秋月のPIC WRITERを使いました。
PIC WRITER試作2号機を使ってPIC18F2450にプログラムを書き込んだのは今回が初めてです。
そういうことなので前回と同じ画面、同じ説明ですけれどあらためてPIC18F2450でのBASICプログラムのテストを行ないました。

PIC BASICコンパイラシステムを起動しました。

テストのためにロードしたBASICプログラムは前回とおなじBSPRINTT1.TXTです。

BASICプログラムをコンパイルして作成したPICマシン語コードをPIC18F2450に送ったあと/RUNコマンドでそのプログラムを実行しました。

プログラムが正しく実行された結果ABCD…XYZの文字が画面に表示されました。

PICBASICコンパイラ[第73回]
2023.9.2upload

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