[Armadillo:07393] Re: Felicaリーダ(RC-S320)との接続

松本崇行 email@hidden
2011年 7月 12日 (火) 18:28:19 JST


竹之下様

 お世話になります。松本と申します。
下記回答ありがとうございます。
おっしゃる通り、usbpp.hは使われておりませんでした。
コンパイルまではできました。
プログラムは、cardtest.cを元に必要な関数や定義を
1つファイルにまとめてコンパイルをかけています。
makefileは、下記のサイトで提供されているmakearmではなく、
アットマークテクノさんから提供されている
Armadillo向けのmakefileを使わせてもらっています。
(小生の不勉強のため、makearmの利用方法がいまいちわからず断念)

その後、Armadilloへイメージを書き込み、プログラムを実行しようとしたところ
新たな問題が発生します。

[email@hidden (ttymxc4) ~]# cardtest
cardread test start....
open pasori..
pasori init ..
fsl-ehci fsl-ehci.0: HC died; cleaning up
usb 1-1: USB disconnect, address 2
polling done ..
Edy Card not found..
polling done ..
Edy Card not found..

となり、「pasori init」を実行するとUSBがdisconnectされてしまいます。
デスクトップのLinux環境下(VMware、ATDE20110704)では、サンプルプログラムの
「cardreader」も正常に動作し、
Felicaカードのidmが返ってきます。

email@hidden:/home/atmark/cardreader# ./main
cardread test start....
open pasori..
pasori init ..
polling done ..
Edy Card not found..
polling done ..
Edy Card not found..
polling done ..
idm:01010501E709142B
polling done ..
idm:01010501E709142B
polling done ..


dmesgの結果を比較するとUSBの認識時に違いがあります。
 ※Felicaリーダ(RC-S320)のUSB規格はLow-speedです。

・デスクトップ
 [100898.445258] usb 1-1: new full speed USB device using uhci_hcd and
address 11
 [100898.736708] usb 1-1: configuration #1 chosen from 1 choice
 [100898.796669] usb 1-1: New USB device found, idVendor=054c,
idProduct=01bb
 [100898.796675] usb 1-1: New USB device strings: Mfr=0, Product=0,
SerialNumber=0
・Armadillo
 usb 1-1: new low speed USB device using fsl-ehci and address 2
 usb 1-1: configuration #1 chosen from 1 choice
 fsl-ehci fsl-ehci.0: HC died; cleaning up
 usb 1-1: USB disconnect, address 2

大変恐縮ですが、これだけの情報で何かお気づきの点があったら、
教えて頂けないでしょうか。

◇開発環境
 ・Windows XP Pro
 ・VMware Player 2.5.5
 ・ATDE3-20100309
 ・atmark-dist-20110704
 ・Linux 2.6.26 at15

以上。

>竹之下です。
>
>(2011年07月08日 15:41), 松本崇行 wrote:
>  いつもお世話になっております。
> 松本と申します。
> Armadillo440にFelicaリーダ(RC-S320)を接続しようとしています。
> 某雑誌の特集で紹介されているcardreaderというサンプルを
> 参考にしています。
> http://www.objectclub.jp/ml-arch/magazine/216.html
> その中で使われているLibpasoriというライブラリの中に
>  usbpp.h
> というC++で書かれたヘッダファイルを参照しています。
http://www.objectclub.jp/ml-arch/magazine/magazine210/cardreader.zip
をダウンロードしてきて、中身をざっくり見てみたのですが、
usbpp.h を参照している部分を探すことができませんでした。

作業を行っている環境と、実際に実行したコマンド、
コマンドの実行結果(コピペで)を教えていただけますか?

> それをarm用にクロスコンパイルをかけると
> #include <string>
> #include <list>
> でファイルがみつかりませんとエラー出てきてしまいます。
> C++で記述されたファイルをコンパイルする開発環境が
> 整っていないのだと思いますが、
> どなたかご教授していただけますでしょうか。初歩的な質問ですみません。
src/makearm というファイル内に、以下の記述があります。
  C++ =           arm-linux-g++
  GCC =           arm-linux-gcc

もし、開発環境としてATDEをお使いの場合、
  C++ =           arm-linux-gnueabi-g++
  GCC =           arm-linux-gnueabi-gcc
となるはずです。

その他、インクルードパスも適切に設定しなければなりません。

>
>
> _______________________________________________
> armadillo mailing list
> email@hidden
> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
>


--
Koyo Takenoshita




armadillo メーリングリストの案内