• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:トランジスタ技術9月号の第2章ADコンバータで躓きました)

トランジスタ技術9月号の第2章ADコンバータで躓きました

このQ&Aのポイント
  • トランジスタ技術8、9月号に連載されたPICマイコン関連の記事に取り組んでいます。
  • ADコンバータの部分で進行につまずいています。
  • 9月号でエラーが発生し、BUILDができない状態です。

質問者が選んだベストアンサー

  • ベストアンサー
  • zwi
  • ベストアンサー率56% (730/1282)
回答No.2

やはりライブラリファイルの設定が足りません。 ソースと一緒に入っていたReadme.txtを見ると分かるのですが、 ●ライブラリ・ファイル: libp30F2012-coff.a を追加してください書いてあります。 ソースと同様な手順で追加してください。 これを失敗していたとすると一度もリンクには成功していないハズですから、前に成功したのは何か手順や環境が違ったか勘違いだと思います。

6473
質問者

お礼

zwiさん有難うございました。おかげさまでLOGGERが動きました。本のとおりやっていて、動いている時は好いのですが、躓くと対処できませんでした。少しはCをしていましたので、LIBファイルも当然必要なのが解ります。但し、最初にいけてたのがなぜだめになったかが解りません。また本にもp30f2012.gldだけを追加する手順になっています。  トラブルの時にどうやって対処できるかが、実力有る無しの分かれ目ですね。これを題材にして勉強します。有難うございました。  解らない時はまた投稿しますのでよろしくお願いいたします。                            以上

その他の回答 (1)

  • zwi
  • ベストアンサー率56% (730/1282)
回答No.1

>warning:Options has been disabled due to expired license 警告:オプションはライセンス有用期限超過により無効になりました。 でwarningですから、そこでコンパイラが止まったわけではありません。 それよりは、 undefined reference to 'BusyUART1' が致命的なリンクエラーです。 私のところで試しにコンパイルしてみましたが、 warning:Options has been disabled due to expired license は出てますが、ちゃんと正常にBUILD SUCCEEDEDします。 リンク時にBusyUART1がライブラリに見つからないと言っていますので、何も修正していないならMPLABの環境が壊れているとか別の原因が考えられますね。今のところメモリが足らないとかの心配は無用です。 手順的にミスが無かったかもう一度確認してみてください。

6473
質問者

お礼

早速のご返事有難うございました。もう一度最初からやってみます。

6473
質問者

補足

すみませんトライが遅れまして。 結局まだだめです。 1.MPLABの最初の画面でLOGGER.Cを左クリックして、コンパイルすると成功します。 なおソースプログラムのディレクトリ構造は下記です。   C:\work\logger1\logger1\LOGGER.c 2.ところが、ProjectメニューよりBuild Allしますと、エラーになります。 Clean: Deleting intermediary and output files. Clean: Deleted file "C:\work\logger1\logger1\LOGGER.o". Clean: Done. Executing: "C:\Program Files\Microchip\MPLAB C30\bin\pic30-gcc.exe" -mcpu=30F2012 -c -x c "LOGGER.c" -o"LOGGER.o" -g -Wall Microchip MPLAB C30 License Manager Version v3.00 (Build Date Feb 28 2007). Copyright (c) 2005 Microchip Technology Inc. All rights reserved. The MPLAB C30 license has expired. pic30-coff-cc1.exe: warning: Options have been disabled due to expired license Executing: "C:\Program Files\Microchip\MPLAB C30\bin\pic30-gcc.exe" -Wl,"C:\work\logger1\logger1\LOGGER.o",-L"C:\Program Files\Microchip\MPLAB C30\lib",--script="C:\Program Files\Microchip\MPLAB C30\support\gld\p30f2012.gld",-o"mydspic1.cof",-Map="mydspic1.map",--report-mem Program Memory Usage section address length (PC units) length (bytes) (dec) ------- ------- ----------------- -------------------- .reset 以下部分省略 0x816 0x3ea (1002) Maximum dynamic memory (bytes): 0x3ea (1002) C:\work\logger1\logger1\LOGGER.o(.text+0x6): In function `main': C:\work\logger1\logger1\LOGGER.c:65: undefined reference to `CloseUART1' C:\work\logger1\logger1\LOGGER.o(.text+0xa):C:\work\logger1\logger1\LOGGER.c:67: undefined reference to `ConfigIntUART1' C:\work\logger1\logger1\LOGGER.o(.text+0x1e):C:\work\logger1\logger1\LOGGER.c:91: undefined reference to `OpenUART1' C:\work\logger1\logger1\LOGGER.o(.text+0x28):C:\work\logger1\logger1\LOGGER.c:99: undefined reference to `SetChanADC12' C:\work\logger1\logger1\LOGGER.o(.text+0x2c):C:\work\logger1\logger1\LOGGER.c:100: undefined reference to `ConfigIntADC12' C:\work\logger1\logger1\LOGGER.o(.text+0x54):C:\work\logger1\logger1\LOGGER.c:118: undefined reference to `OpenADC12' C:\work\logger1\logger1\LOGGER.o(.text+0x62):C:\work\logger1\logger1\LOGGER.c:124: undefined reference to `ReadUART1' C:\work\logger1\logger1\LOGGER.o(.text+0x68):C:\work\logger1\logger1\LOGGER.c:129: undefined reference to `BusyADC12' C:\work\logger1\logger1\LOGGER.o(.text+0x70):C:\work\logger1\logger1\LOGGER.c:131: undefined reference to `ReadADC12' C:\work\logger1\logger1\LOGGER.o(.text+0x7a):C:\work\logger1\logger1\LOGGER.c:133: undefined reference to `WriteUART1' C:\work\logger1\logger1\LOGGER.o(.text+0x7c):C:\work\logger1\logger1\LOGGER.c:134: undefined reference to `BusyUART1' C:\work\logger1\logger1\LOGGER.o(.text+0x8a):C:\work\logger1\logger1\LOGGER.c:135: undefined reference to `WriteUART1' C:\work\logger1\logger1\LOGGER.o(.text+0x8c):C:\work\logger1\logger1\LOGGER.c:136: undefined reference to `BusyUART1' BUILD FAILED: Sat Oct 06 10:55:02 2007 3.8月号のCQ\tr0708\の下にあるソースプログラムは全部BUILD に成功します。 \tr0709の下にあるソースプログラムが失敗するようです。 なおプロジェクトは8月号のとおり下記としています。  C:\work\mydspic1\mydspic1 上記tr0708のプログラムは、BUILDする時にC:\work\mydspic1\mydspic1 のディレクトリにコピーはしていません。 4. tr0709にあるプログラムがうまくリンクできていないようです。  MPLABおよびCコンパイラも再インストールしましたが一緒でした。  ただし一度、8/FにLOGGER.cは動きました。 どうしたらうまくリンクするようにできるのでしょうか?  初心者で申し訳有りませんが教えてください。

関連するQ&A