[戻る]
過去ログ [ 0001 ]
過去ログ:     ワード検索: 条件: 表示:

タイトル
記事No
投稿日
投稿者
参照先
PIC18F4550でSPI通信
104
: 15/01/27-00:24
MAT

初めまして

PIC18F4550でSPI通信を行おうとしていますが、プロジェクトをビルドするところで躓いています。ソースファイル冒頭でspi.hをインクルードして、OpenSPI1関数を呼び出しているのですが、ビルドした時に

Error - could not find definition of symbol 'OpenSPI1' in file ファイル名

とlinker errorが出てきてビルドできません。恐らく上記の関数の本体があるライブラリ(peripheral library?)をプロジェクトに加えていないせいと思われますが、PIC18F4550に対応するSPI関連のライブラリファイル名は何でしょうか。ご教示頂けると幸いです。なお、私の開発環境はMPLAB IDE 8.88です。
▲pagetop
タイトル
記事No
投稿日
投稿者
参照先
Re: PIC18F4550でSPI通信
105
: 15/01/27-14:34
Gokan <gokan@picfun.com>

必要なファイルはお使いのCコンパイラによって異なります。
XC8またはC18コンパイラであれば下記フォルダ内にあります。

 C:\Program Files\Microchip\xc8\v1.33\lib

 名称は pic18-plib-htc-18f4550.lpp または
     pic18-plib-c18-18f4550.lpp です。


            以上

> 初めまして
>
> PIC18F4550でSPI通信を行おうとしていますが、プロジェクトをビルドするところで躓いています。ソースファイル冒頭でspi.hをインクルードして、OpenSPI1関数を呼び出しているのですが、ビルドした時に
>
> Error - could not find definition of symbol 'OpenSPI1' in file ファイル名
>
> とlinker errorが出てきてビルドできません。恐らく上記の関数の本体があるライブラリ(peripheral library?)をプロジェクトに加えていないせいと思われますが、PIC18F4550に対応するSPI関連のライブラリファイル名は何でしょうか。ご教示頂けると幸いです。なお、私の開発環境はMPLAB IDE 8.88です。
▲pagetop
タイトル
記事No
投稿日
投稿者
参照先
Re^2: PIC18F4550でSPI通信
109
: 15/01/30-00:35
MAT

Gokan様

 有難うございます。そして動作テストに手間取りまして申し訳ありません。

 その後、C18, XC8コンパイラをインストールして再挑戦した結果ですが
1. C18について
 v3.43を再インストールしたものの、pic18-plib-htc-18f4550.lpp, pic18-plib-c18-18f4550.lppの何れも見つかりませんでした。
2. XC8について
 v1.33をインストールした所、pic18-plib-htc-18f4550.lpp, pic18-plib-c18-18f4550.lppの両方がご教示頂いたディレクトリに見つかりました。しかし、これらのファイルをプロジェクトウィンドウのLibrary filesに追加してリビルドすると、
Error [499] ; 0. undefined symbol:
_OpenSPI1(SPItest.obj)
というメッセージが出てやはりビルドできません。ちなみにこの時、メインメニューのProject->Build options->ProjectでLinker optionの"Link in peripheral library"にチェックをつけています。

 どんな原因が考えられるでしょうか。度々申し訳ありませんが、ご教示頂けると幸いです。
▲pagetop
タイトル
記事No
投稿日
投稿者
参照先
Re^3: PIC18F4550でSPI
112
: 15/01/30-13:23
MOT

MPLAB Xお使いになられましたか。
MPLAB X + XC8でspi.hを追っていくと,SPIを2つ持っていないdeviceでは
OpenSPI1()がつかえないように見えます。
OpenSPI()は使えそうです。OpenSPI1()と引数は同じです。
Cファイルを追っていないので確証はありませんが。

XC8でSPI使用したことないので間違っていたらすみません

> Gokan様
>
>  有難うございます。そして動作テストに手間取りまして申し訳ありません。
>
>  その後、C18, XC8コンパイラをインストールして再挑戦した結果ですが
> 1. C18について
>  v3.43を再インストールしたものの、pic18-plib-htc-18f4550.lpp, pic18-plib-c18-18f4550.lppの何れも見つかりませんでした。
> 2. XC8について
>  v1.33をインストールした所、pic18-plib-htc-18f4550.lpp, pic18-plib-c18-18f4550.lppの両方がご教示頂いたディレクトリに見つかりました。しかし、これらのファイルをプロジェクトウィンドウのLibrary filesに追加してリビルドすると、
> Error [499] ; 0. undefined symbol:
> _OpenSPI1(SPItest.obj)
> というメッセージが出てやはりビルドできません。ちなみにこの時、メインメニューのProject->Build options->ProjectでLinker optionの"Link in peripheral library"にチェックをつけています。
>
>  どんな原因が考えられるでしょうか。度々申し訳ありませんが、ご教示頂けると幸いです。
▲pagetop
タイトル
記事No
投稿日
投稿者
参照先
Re^4: PIC18F4550でSPI
116
: 15/01/30-22:16
MAT

MOT様

有難うございます。
ご指摘の通り、OpenSPI()を使ったらビルドできました。ようやく先に進めそうで感激しています。
大変有難うございました。
▲pagetop

- WebForum -