MikroBasic Ver7からMikroBasicPro 移行の覚書

FilterWheelを作り変えている。コントロールプログラムの基本的なところは、変更がないので、パラメーターを変更してそのまま使用することにした。
この際だからと、Mikrobasic7 のプログラムを MikrobasicPro に変更したところ、難航した。

Mikrobasic7 のプロジェクトファイルを MikrobasicPro では、直接読むことはできない。どこかに、コンバーターがあるのかも知れないが、探しきれなかった。Proで新しいプロジェクトを起こして、Ver7 からテキストで貼り付ける、ということで移植した。

この際に問題になるのが、CONFIGファイルである。PICはこの設定がうまくないと、まったく動作しない。Mikrobasic7と MikrobasicProでは、projectの設定の方法がすこしちがい、 今回もそれに悩まされた。以前にも、16F88を使ったときに、RB3が出力されないということで、バグリポートを出していたのだが、CONFIGファイルの設定ミスであった。
Ver7では、デフォルトで LowVoltageProgramming がOFFであるが、Pro ではONとなるのである。そのほかにも違いがあるようだ。今回は、クロック設定でつまづいた。

よくわからなかったので、Ver7 と Pro それぞれで、Edit Project を起動し、CONFIG REGISTERの値を比較して、同じになるように設定した。動作しているプログラムを移植するにはこの方法がよさそうだ。

Ver7 に比較して Pro の良いところは、生成されるコードが小さいということがある。つまりは、最適化が適切になされるということだと思う。サブルーチン(procedure)を記述してあっても、それを参照しなければ、LINKERがよけてくれて、小さいコードでオブジェクトを作ってくれる。生成されるコードが2KB制限のある無料版では、最適化はありがたい機能である。
使い込むほどに良く出来たコンパイラであると思う。とても、MPLABアセンブラでプログラミングしようという気にならない。