Darkside(https対応しました)

2014年5月27日(火) 21:20

最初の環境構築が大変

 PICに書き込む場合、状態レジスターを設定せねばならない。初めての場合、正しい設定方法を知るのが難しい。面倒だから Watch Dog Timer は殺しておく。クロックは果たして XT_PLL16 で良いのか?

 PWM出力ピンの論理を設定できるのは便利だが、PWMピンとして使うか通常のI/Oとして使うかの設定項目が存在するのは想定外。というのもこれでは、6系統存在するPWMピンを個別に設定でいないかのように思える。PWMは1系統で良いが、1系統は必須である。そのためにPWMモードで使うことにした場合、残りの5系統もPWMモードになってしまうのでは使い勝手が悪い。
 PWMモードでも設定次第で常時Lや常時Hに出来るだろうが、通常のI/Oピンに比べると切替が煩雑となり低速。更に、出力できても入力できない。そうなると、ピンアサイン割り当てで苦労する可能性もある。

 dsPICには3系統存在し、F4012は「モーター制御系」とされている。その意味を深く考えずに全体スペックだけで選択したが、誤ったかもしれない。駄目なら本番用は別の機種にすれば良い。


 中身空っぽのプログラムをコンパイルし、試しに書き込み実行。

 一応 F4012 は認識されているようだし、書き込みも行われているようなメッセージ。しかし、秋月ツールと違って「書き込み終了」に相当するメッセージがないため、ベリファイが正常に終了したのか無限ループにでも入っているのか分からない。

 プログラムは中身無しなのだから、LEDには何の変化もない。

 動いているのか動いていないのか、まるで分からない。
 さっさとLEDを点滅させれば良いだろ、と言われそうだが具体的にCのソースリストにどう記述すれば良いか、調べるのも大変だ。
 更に、アセンブラなら簡単だがCでコード実行時間を正確に制御する方法を探さねばならない。簡単な事を行わせる場合でも、最初は苦労する。

 距離計(高度計)では正確に時間を計測する必要があり、果たしてCでそれが出来るのかという疑問は大きい。アセンブラとCを合体させてプログラムを作る方法など、実用段階に入れば調査すべき事柄は更に増える。
 その手の解説をした書物は存在するが、XC16対応のものは見たことが無い。

written by higashino [高度測定装置] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]

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

Comments

TrackBacks

Darkside(https対応しました)

Generated by MySketch GE 1.4.1

Remodelling origin is MySketch 2.7.4