ランニングエレクトロニクスサポート掲示板

BLEファームのコンパイルができない - TK

2016/05/25 (Wed) 22:24:19

本日購入したSBDBTが届きさっそくテストをしました。

出荷時ファームでPCとの通信はうまくいったので、IOSとの通信をしたくMPLABとSBDBのiOS通信用ファームをダウンロードしコンパイルしたのですが、どうもエラーが出てうまくいきません。何が原因かわかりますでしょうか。

ソース Ver.150529

①MPLAB X IDE v3.30
②MPLAB® XC32 Compiler v1.40
③MPLAB® XC16 Compiler v1.26

当初①②のみのインストールでエラーが出ていて、そのエラーがコンフィグの設定がXC16で書かれてる?!のようなものと理解しまして③のXC16をインストールしました。
エラーの内容が変わりましたが、やはりコンパイルできません。
(すみません、何がどう変わったまではよくわかりmせん)
いかにエラー内容を添付します。

①②③をインストールしてコンパイルしたものです。

make -f nbproject/Makefile-default.mk SUBPROJECTS= .build-conf
make[1]: Entering directory 'D:/sbxbt_ble/sbxbt_ble.X'
make -f nbproject/Makefile-default.mk dist/default/production/sbxbt_ble.X.production.hex
make[2]: Entering directory 'D:/sbxbt_ble/sbxbt_ble.X'
"C:\Program Files (x86)\Microchip\xc16\v1.26\bin\xc16-gcc.exe" ../main.c -o build/default/production/_ext/1472/main.o -c -mcpu=24FJ64GB004 -MMD -MF "build/default/production/_ext/1472/main.o.d" -g -omf=elf -no-legacy-libc -O0 -I".." -I"../Common" -I"../btstack" -I"../USB" -I"." -msmart-io=1 -Wall -msfr-warn=off
../main.c:3:19: fatal error: ports.h: No such file or directory
nbproject/Makefile-default.mk:366: recipe for target 'build/default/production/_ext/1472/main.o' failed
make[2]: Leaving directory 'D:/sbxbt_ble/sbxbt_ble.X'
compilation terminated.
nbproject/Makefile-default.mk:84: recipe for target '.build-conf' failed
make[2]: *** [build/default/production/_ext/1472/main.o] Error 255
make[1]: Leaving directory 'D:/sbxbt_ble/sbxbt_ble.X'
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2
nbproject/Makefile-impl.mk:39: recipe for target '.build-impl' failed

BUILD FAILED (exit value 2, total time: 269ms)

BUILD FAILED (exit value 2, total time: 6s)

Re: BLEファームのコンパイルができない - ランエレ

2016/05/25 (Wed) 23:10:07

TK様

SBDBTをお買い上げいただきまして誠にありがとうございます。
コンパイル環境についてご案内不足で申し訳ございません。

お察しの通りMPLAB X IDEとXC16でコンパイル可能です。
ただし最近のXC16では、さらにペリフェラルライブラリのインストールが必要となってしまいました。

microchip社の以下のページの下の方のDownloadタブをクリックします。
(こちらからXC16をダウンロードされたと思います)
http://www.microchip.com/mplab/compilers

その状態で更に下のほうにスクロールしていきますと「Peripheral Libraries (PLIBS)」という項目が出てくると思います。
その下の「Legacy Peripheral Libraries」の中の「PIC24/dsPIC® DSCs」の中からお使いの環境のものをダウンロードしてインストールしてください。
(画像のような表示の個所です。)

お手数をおかけいたしますが何卒よろしくお願い申し上げます。

Re: BLEファームのコンパイルができない - TK

2016/05/26 (Thu) 09:29:17

回答いただきありがとうございます。
ライブラリを入れたとことろ無事ビルドできました。

この他の方の参考になるように記載しておきますが、ライブラリを入れるときにXC16がインストールされていないというメッセージが一度出ましたが、適切なフォルダを指定することでライブラリのインストールができます。

具体的にはXC16のデフォルトのインストール先は
C:\Program Files (x86)\Microchip\xc16\v1.26

ライブラリのデフォルトの参照先が
C:\Program Files (x86)\Microchip\xc16

となっていますので上記フォルダを指定すれば問題なくライブラリがインストールできました。


また、Pickit3の書き込みがうまくいかなかったので質問させてください。

下記メッセージが表示され、どうやら電源の問題のようですが、外部電源が必要ということなのでしょうか?何か設定の変更が必要なのでしょうか。

Connecting to MPLAB PICkit 3...

Currently loaded firmware on PICkit 3
Firmware Suite Version.....01.42.18
Firmware type..............dsPIC33F/24F/24H

PICkit 3 is trying to supply 3.375000 volts from the USB port, but the target VDD is measured to be 3.125000 volts. This could be due to the USB port power capabilities or the target circuitry affecting the measured VDD.

The target circuit may require more power than the debug tool can provide. An external power supply might be necessary.
Connection Failed.

Re: BLEファームのコンパイルができない - TK

2016/05/26 (Thu) 11:40:00

PICKit3の電源不足?が怪しいようなので外部電源で供給し書き込みしたところになりました。

これで書き込みはOKなのでしょうか?
Programmer to go modeというのになっているようですが…。

Connecting to MPLAB PICkit 3...

Currently loaded firmware on PICkit 3
Firmware Suite Version.....01.42.18
Firmware type..............dsPIC33F/24F/24H


The following memory area(s) will be programmed:
program memory: start address = 0x0, end address = 0x59ff
configuration memory

Device Erased...

Programming...
Programming/Verify complete

PICkit 3 is now in Programmer to go mode. The next time you connect to this unit, you will have the choice to take it out of Programmer to go mode.

Re: BLEファームのコンパイルができない - TK

2016/05/26 (Thu) 12:04:56

上記は自己解決しました。
書き込み時にprogrammer to go を選択していたため、そのモードに入っているだけでした。

押すのはmake and program device main project ですね。

ですがまた問題が出ています。
デバイスが見つからないと出ます。
ConfigrationのデバイスはきちんとPIC24FJ64GB004Fが選択されています。

何か考えられる要因はございますでしょうか。

Connecting to MPLAB PICkit 3...

Currently loaded firmware on PICkit 3
Firmware Suite Version.....01.42.18
Firmware type..............dsPIC33F/24F/24H

Target device was not found (could not detect target voltage VDD). You must connect to a target device to use PICkit 3.

Re: BLEファームのコンパイルができない - ランエレ

2016/05/26 (Thu) 12:45:42

TK様

ご連絡ありがとうございます。
まずはビルドができたようでよかったです。

書き込みについてですが、「Target device was not found (could not detect target voltage VDD). You must connect to a target device to use PICkit 3.」というメッセージが出るとき、外部から電源を供給しながら書き込むとどうなりますでしょうか。

プロジェクトの設定でpickit3から電源を供給することもできるのですが、外部から供給できるのであればそちらをまず試されると良いと思います。

何卒よろしくお願い申し上げます。

Re: BLEファームのコンパイルができない - TK

2016/05/26 (Thu) 13:04:22

回答ありがとうございます。

外部電源で行った場合、
Target device was not found (could not detect target voltage VDD). You must connect to a target device to use PICkit 3.
が出ます。


Pickit3より供給する場合は
PICkit 3 is trying to supply 3.375000 volts from the USB port, but the target VDD is measured to be 3.125000 volts. This could be due to the USB port power capabilities or the target circuitry affecting the measured VDD.

The target circuit may require more power than the debug tool can provide. An external power supply might be necessary.
Connection Failed.
が出ます。

外部電源は5Vを印加。
このときPickit3の電源は供給しないに設定。
外部電源のGNDとUSBのGNDもつないで同じになるようにしています。

どうして良いのかさっぱり見当がつきません。。。

Re: BLEファームのコンパイルができない - ランエレ

2016/05/26 (Thu) 13:13:24

TK様

ご連絡ありがとうございます。

お知らせいただいた状況だと、PICKITとSBDBTの接続になにか問題があるのではないかと思います。

また、SBDBTの電源電圧は3.6Vまでとなっていますので、5Vをかけてしまうと故障する可能性がございます。

または、既に故障してしまっていて、正しいピンに接続しても上記現象が起きている可能性もございます。

差し支えなければ、PICKITとSBDBTを接続している写真などを見せていただけると何かわかるかもしれません。

何卒よろしくお願い申し上げます。

Re: Re: BLEファームのコンパイルができない - TK

2016/05/26 (Thu) 13:21:55

申し訳ありません。SBDBTと言っていましたが購入したのはSBDBT5Vです。
画像を添付します。
〔配線の色が同じものを使っていてわかりにくく申し訳ないです〕

Re: Re: Re: BLEファームのコンパイルができない - TK

2016/05/26 (Thu) 13:37:12

写真を取り直しました。

Re: BLEファームのコンパイルができない - ランエレ

2016/05/26 (Thu) 13:56:44

TK様

写真ありがとうございました。

SBDBT5Vでしたら5Vを供給しても問題ございません。

写真を拝見いたしますと、pickit3の2番ピンに電源を配線していないように見えますが、もしそうでしたら外部から電源を供給する場合、pickit3の2番ピンにも供給していただく必要がございます。

ご確認いただけますと幸いです。

何卒よろしくお願い申し上げます。

Re: BLEファームのコンパイルができない - TK

2016/05/26 (Thu) 20:46:57

回答ありがとうございました。
Pickit3の2番ピンに電源を供給したところ、無事認識しました。
また、ペアリング、LightBlueとの通信も問題なく行えました。
このサポートがなかったら今も永遠に彷徨っていたと思います。本当に助かりました。

これからiOS側のアプリ作成を行いたいと思っていますが、Bluetoothを実装するためのソースコードサンプル、もしくは参考になるサイトなどがありましたらご紹介いただけると幸いです。

以上よろしくお願い致します

Re: BLEファームのコンパイルができない - ランエレ

2016/05/27 (Fri) 04:00:27

TK様

ご連絡ありがとうございました。
うまくいったようで何よりです。

参考になるものは、Bluetoothの仕様書だと思います。
https://www.bluetooth.com/ja-jp
こちらからダウンロードできるのと思いますので、わからないときは調べてみると良いかと思います。

今後とも宜しくお願い致します。

Re: BLEファームのコンパイルができない - TK

2016/05/27 (Fri) 16:23:03

ご紹介ありがとうございます。
参考のURLを開いてみましたが特に何も表示されません。
確認していただけますでしょうか。

お手数おかけしますがよろしくお願いします。

Re: BLEファームのコンパイルができない - ランエレ

2016/05/27 (Fri) 22:37:06

TK様

ご連絡ありがとうございます。

https://www.bluetooth.com/ja-jp
について、昨日はページが表示されたのですが、今日は横線3本のみになってしまっているようですね。

メンテナンス中ではないかと思いますので、数日待ってから再度お試しください。

何卒よろしくお願い申し上げます。

Re: BLEファームのコンパイルができない - mchino

2022/08/12 (Fri) 16:44:05

お世話になります。
SBDBTのBLEファームでコンパイルエラーが出てしまい、調べていましたらこちらのスレッドにたどり着きました。
エラーの内容はmain.cで、以下のファイルが見つからないというものです。
#include <ports.h>
#include <pps.h>
#include <outcompare.h>

前の方と同じかと思い、スレッドを参考に以下のライブラリを探したのですが見つからず困っています。
PIC24/dsPIC Peripheral Libraries

お教えいただけましたら幸いです。

Re: BLEファームのコンパイルができない - mchino

2022/08/13 (Sat) 15:26:39

すみません、削除キーが分からなくなってしまったので。
上記のコンパイルが出来ない件ですが、windowsの環境で行ったら無事コンパイルできました。
また不明点が出てきましたら問い合わせさせていただきます。

Re: BLEファームのコンパイルができない - ランエレ

2022/08/13 (Sat) 16:30:19

mchino様

返信が遅くなり申し訳ありません。
無事解決されたとのことですが、現状PIC24/dsPIC Peripheral Librariesは下記URLよりダウンロード可能なようです。
https://www.microchip.com/SWLibraryWeb/product.aspx?product=PIC24%20MCU%20dsPIC%20Peripheral%20Lib
何卒よろしくお願いいたします。

名前
件名
メッセージ
画像
メールアドレス
URL
文字色
編集/削除キー (半角英数字のみで4~8文字)
プレビューする (投稿前に、内容をプレビューして確認できます)

Copyright © 1999- FC2, inc All Rights Reserved.