2006年11月06日

SDCC再インストール @ 電子工作

img1

何故かSDCC+GPUTILSで作ったPIC16F84A用のプログラムが上手く動かないので、SDCCを再インストールすることにしました。試しに別のマシンに現在のSDCCとは違う形で、自分でmakeしてインストールしました。もしかするとSDCCのバイナリーが具合悪いのかなと思って、やり直してみました。

先ずはGPUTILSをダウンロードしてきて、./configureしてmake、sudo make installでインストール。

次にSDCCも同様に./configureしてmake、sudo make installでインストール。

試しに、簡単なプログラムをコンパイル。しかし、リンカーでエラーが出ます。どうやらオブジェクトファイルが一部不足しているらしい。調べてみたら、 /usr/local/bin/にパスが通ってない事が原因で、SDCCのインストール時にライブラリーの一部が作られてないことが原因でした。と言うことなので、パスを通して、再度SDCCを./configureからやり直し。

今度は問題なくコンパイルが終了。ココまでは、今までと同じなので、出来たhexファイルをWindowsマシンに持って行き。PICProg4Uで読み込み。前回はココで読み込みのエラーが出たのですが、今回は問題なし。PIC16F84Aの書き込みも問題なく終了し、テストでブレッドボードに装着してLEDの点滅を確認。どうやら問題ないようです。

テストのソースコードですが、PIC-Lite用に書かれたモノをほぼそのまま使いました。コンフィグの部分だけ追加して、そのままSDCCで通ったので、互換性が有るっぽいです。

取り敢えず、上手く行ったのですが、これでは普段使っているマシンで作業が出来ないので、同じ事をメインのマシンでもやってみます。上手く行くと良いのですが・・・。

・・・

見事に成功です。SDCCの何処かに問題があったようです。Mac OS X用のバイナリーを使うよりは、自分でソースを入手してインストールした方が良いようです。

ついつい忘れがちなので、コンパイルのコマンドをメモ。

sdcc -V -mpic14 -p16f84a test.c

それから、テスト用プログラムのhexファイルの中身も書いておきます。テキストファイルのようなので、コピーペーストで問題ないのではないかと思います。

:020000040000FA
:0400000000005D2877
:06000A008316860183123B
:100010008E018F010F08803E803E031D11280230A3
:100020000E0203182028FF30831286005020AA30C9
:1000300083128600502083128E0A03198F0A0A2821
:100040008E018F010F08803E803E031D292802305B
:100050000E0203183828FF308312860050205530D6
:1000600083128600502083128E0A03198F0A2228D9
:100070008E018F010F08803E803E031D4128023013
:100080000E0203180728FF308312860050208312C7
:100090008601502083128E0A03198F0A3A2808001D
:1000A00083128C017D308D00FF308C07031C8D0383
:0C00B0000C080D04031D5428080005284E
:02400E00FA3F77
:00000001FF

PORTBにLEDを繋ぐと点滅を繰り返します。それだけです。

SDCC - Small Device C Compiler
>>関連リンク

GPUTILS - GNU PIC Utilities
>>関連リンク

これでPICへのプログラムの書き込み以外はMacで作業できる形になりました。本当は出来ることならば全てMacで作業できると効率的なんですけどね。でも、iBookにUSB接続でPICライターを付けるのも邪魔なので、WindowsマシンでPICへ書き込みでも問題ないかな。PICライターは基板剥き出しなので、iBookに繋ぐよりはデスクトップマシンに繋いでいた方が安心です。ノートパソコンだと繋いでいることを忘れて移動して、事故になりそうです。数千円のモノなので壊れても直ぐに買えますが、時間的なロスの方が怖いです。

閲覧数: 4369 / はてなブックマークusers

blog comments powered by Disqus

関連日記

アマゾン広告

この日記ページは閲覧数などの条件に応じて、閲覧制限を行っています。他からリンクしていただいても、そのリンクから辿った閲覧者が当ページの内容をご覧頂けない場合があります。ご了承下さい。

▼日記検索

Mac

Shade

3D

Flash

ゲーム

ウェブ

音楽

映画

デジカメ

Windows

Linux

携帯電話

テレビ

広島

電子工作

iOS

▼ 最近のトラックバック

▼ランキング

▼関連サイト