Darkside(リンクエラー修正しました)

2018年6月6日(水) 21:13

開発環境

 dsPIC の開発環境は・・・MPLAB X IDE という無料ツールが使える。

 しかし、プロジェクトの初期設定では PIC の種類だけでなく書き込みハードの選択やCコンパイラーの選択がある。
 CコンパイラーはC30がインストール済みで、これが使える。もう忘れているがシステム初期設定の記述などは昔書いたソースが参考にできるだろう。
 問題は、プログラムを dsPIC に書き込む方法である。

 手持ちは PicKit 2 のはずだが、ネット情報ではなぜか Windows 7 に対応していないとある。そんなはずはない。使ってた記憶がある。
 だが、そもそも手持ちの MPLAB X IDE はバージョン2系である。最新はバージョン4系まで上がっていて、それだと PicKit 2 はサポートから外されたらしい!
 どうするか悩ましいが、悩まずに済むかもしれない。と言うのも、例によって PicKit 2 は行方不明なのだ。
 見た記憶、置いた記憶、がある場所になぜか無いというお馴染みのパターン。何年も使っていないと、ありがち。

 PicKit 4 が発売されたばかりなので、乗り換え時だろう。しかし新ハードを買うからには、dsPIC33 ともそこそこ付き合わねばもったいない。願わくば、使い易いハードであってくれよと。いちおうアセンブラではなくCでプログラムを作れる便利さはあるので、STM32F4 の性能までは必要が無い用途で活躍させられるならそれに越したことはない。
 PIC16F88 のアセンブラは比較文1つを構成するだけでも膨大な精神エネルギーを消耗する。マクロのネスティングが出来ないという昭和の MASM にも劣る貧弱なアセンブラなので、使い込んでもソフト資産が蓄積されない。

 どうしてそんな PIC16F88 を切り捨てできないかと言えば、単純設計のCPUをアセンブラで記述したソフトで動かすと「実行時間の厳密な予想」が立てられるのだ。原始的で単純でシングルタスクな制御を行う場合、ソフトウェアループで厳密なタイミングを生成できるというのは、極めて使い勝手が良い。
 性能を上げるための複雑な仕組みを内蔵したCPUをコンパイラー生成のソフトで動かしたのでは、「実行時間の厳密な予想」は立てられない。割り込み等を駆使して必要な制御を実現するものの、用途によっては「どうしてこんな単純なことをやるのにこんな面倒臭いんだ」ということになる。例えば「ここで正確に 210 マイクロ秒待つ」なんて場合、PIC16F88 ならループ回すだけである。

 それ以外の大半の用途に dsPIC33 を使う気になれるようであれば、PicKit 4 にカネを出す意味もある。

written by higashino [ドリル戦車] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]

この記事へのトラックバックPingURL

Comments

TrackBacks

Darkside(リンクエラー修正しました)

Generated by MySketch GE 1.4.1

Remodelling origin is MySketch 2.7.4