- ベストアンサー
PIC16F877でLCD SC1602BS*Bを駆動する際のエラー
- MPLAB IDE v8.30を使用して、PIC16F877でLCD SC1602BS*B を駆動しようとしていますが、エラーが発生しています。
- エラーはillegal # directive "byte", function declared implicit int, undefined identifier "PIN_D0"などの3種類です。
- どこが問題なのかわかりません。プログラムとヘッダーを記載しました。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
「lcd_lib3.c」は http://www.picfun.com/ の PICの基礎で紹介されている書籍から「CCS社 PIC C Compiler」の形式の様ですね。 そのために記述形式が MPLAB IDE v8.30 と合わないのでしょう。 がんばって形式を書き換えるか、MPLAB IDE v8.30で使える情報のある他の参考になるサイトを探すのがよさそうですね
その他の回答 (1)
- wormhole
- ベストアンサー率28% (1626/5665)
>どこが悪いのでしょうか? 少なくとも1つは使い方の説明を読んでないからです。 >・出てくるエラーは、 > ・illegal # directive "byte" > ・ function declared implicit int >・ undefined identifier "PIN_D0" >等の3種類のエラーです。 エラーメッセージを抜粋していませんか? 出力されているエラーメッセージはそのまま書きましょう(エラーメッセージの意味がわからない人が、なぜ抜粋できるのか私にはわからない)。 >・illegal # directive "byte" >#byte port = 8 //port D #byte は標準的なCにはありません。 >・ function declared implicit int 関数をプロトタイプ宣言や定義するより前に使用していた場合、Cコンパイラはその関数の戻り値の型をintとしてみなします。 >・ undefined identifier "PIN_D0" Cコンパイラは PIN_D0 なんて識別子は知らないといってます。 どこかで定義されていますか?
補足
初心者で申し訳ありません。 エラーについては、上記3種類がいくつも出ているので、原因は同じかと思い省略してしまいました。 >Cコンパイラは PIN_D0 なんて識別子は知らないといってます。 >どこかで定義されていますか? やはりそうなんですか。 私もやや疑問に思ったのですが、上記HPには、そのままインクルードすれば使えると書いてあったので…
お礼
どうして動かないのか、全然わからず困っていたのですが、そういうことだったんですね。 ありがとうございました。