2014年3月22日土曜日

BASCOM-AVR と Pic18spx

 左写真は先回のブログでご紹介した「DDSコントローラ」の頭脳ともいうべきマイクロコントローラチップの Atmega8 に BASCOM-AVR というコンパイラで作成した、プログラムを左側に見える Pic18spx というプログラマー(書き込み器)で書き込んでいるところです。

 そして表示や動作などをチェックして、不都合があればプログラムを修正して再度書き込み、、、、ということを何度も繰り返しながら完成度を高めていくのです。

今回は以前から一度試してみたかった Pic18spx というプログラマーを製作し、 BASCOM-AVR と組み合わせて使ってみました。

  pic18spxはUSB機能を有したPIC18F14K50をうまく利用したAVRライター(プログラマー)でirukaさんsenshuさんなどの努力による結果だそうで、このあたりは私がお手本にさせていただいた kuman さんのブログ「AVR試用記」にあ pic18spx の項に詳細に述べられています。

一方、この pic18spx は、つい先日 Windows 8 にも対応可能になったとか、日々進化しているようです。

 pic18spxはAVRライターとしてはもちろんUSB-IO制御機能USB-シリアル変換機能をも持ちますが、わたしはAVRライター機能のみを使った専用機として製作しました。
 回路図を右に示しますが、部品も最小限にし、クリスタルも30pのコンデンサーを使っていませんし、パスコンも 0.1μF1個のみですが特に支障はありません。

 ただ私が使用したPIC18F14K50はピンのピッチが1/2のものであったため、小型化にはよかったのですが汎用基板の穴のピッチが0.1インチ(2.54mm)では実装できませんでした。
そこで一計を案じ、ICのピンを一つおきに伸ばし左写真のように実装しました。当然伸ばしたピンは空中配線、、、、

 完成した基板は百均の小さなプラケースに入れました。(台所用品4個セット)
 比較においた Atmel の純正ライター AVRISP mk-II (右写真上)とほぼ同じ大きさです。純正品があるのになぜつくるのかって?モノつくりは楽しいから、、、、

 ファームウエアの設定などについては上記ブログ「AVR試用記」に詳しい記述があります。


 今回の「DDSコントローラ」のファームウエア作成に BASCOM-AVR を使った話は冒頭にしました。

 これはオランダのMSC社で作られているAVR用BASICコンパイラで最新版はBASCOM-AVR 2.0.7.7です。(私が使用したものは2.0.7.5版 左写真)
 今回使用したのは無試用版のため、コンパイル後のプログラム容量に4KByteの制限があります。


 BASCOM とはBASIC compilerの略ですが、もう何十年も昔にDOS(ディスクオペレーションシステム)であるCP/Mが世に出始めのころ、まさにBASCOMというプログラムを走らせたのを思い出させます。

 せっかくですので、 BASCOM-AVR と Pic18spx を制御する avrdude-GUI というプログラムをリンクさせて見ました。


 あらかじめ上写真のように、
 BASCOM-AVR のメイン画面上のメニューにある Options の中の Programmer を開き、 avrdude-GUI.exe のある場所をインプットしておきます。また、その右下にある Use HEX File にもチェックを入れておきます。
 
 日常的には、コンパイルが無事!!に完了したら上写真のように緑色のプログラマー・ボタンを押せば、avrdude-GUI が直ちに立ち上がります。

 そしてこの avrdude-GUI からターゲットのAVRに書き込むわけです。

 avrdude-GUI は大変便利で、機能も多く(私には使いきれないくらい)一度つかったら手放せないことうけあいです。

 今回記述した、 Pic18spx や avrdude-GUI についてのプログラムや詳細については私と同様にして、 senshuさんの YCIT(senshu LAB) を訪問・登録し、ダウンロードさせていただくといいと思います。
  YCIT(senshu LAB)はネットで容易に検索できます。

最後に、 senshuさん、irukaさんkuman さんにあらためて感謝いたします。

0 件のコメント: