我需要一些帮助来让nfc/rfid阅读器在ubuntu上运行pcduino
由于我正在使用HSU
(高速uart)和SDA
和SCL
管脚,我发现在pcduino v2上,在arduino管脚头部的最末端有专用管脚。
做sudo i2cdetect -y 2
时,我发现这个设备出现在0x24
上,所以我现在正在尝试一种读取数据的方法。
我发现这个:
http://i.got.nothing.to/hack/on/run-the-sl030-rfid-reader-on-linux/
使用我从那里复制的c代码,并使用g++命令,我试图编译该代码,但没有成功。
它显示编译时出错;我得到以下错误消息:
root@ubuntu:/home/ubuntu/Documents# g++ RFID.CPP -o RFID
RFID.CPP: In function \u2018int main()\u2019:
RFID.CPP:57:22: warning: format not a string literal and no format arguments [-Wformat-security]
RFID.CPP:79:22: warning: format not a string literal and no format arguments [-Wformat-security]
所以现在我被困在这个问题上
http://elinux.org/Interfacing_with_I2C_Devices#Completed_Code
通过阅读那篇文章,我可能可以使用以下命令进行调试,但我不知道如何进行调试:
$ i2cdetect -r 2
任何帮助都会很好:)
最佳答案
问题是您的web浏览器在代码中添加了一些utf-8字符,这很奇怪,因为代码中没有该字符:
U+2018为‘
;
U+2019成为’
(不,不一样!;—))
我刚刚做了一个Gist检查,对奇怪的字符,你可以download。
最后,正如我在博客文章中所解释的,正如在elinux上所解释的:
i2cdetect -r 2
将列出这些地址上的所有地址和连接的设备,如我的博客文章所示。然后您可以使用
i2cget
命令访问给定的设备,如果该设备使用基于寄存器的协议,这在i2c设备中是非常标准的,但是我在文章中提到的SL030
设备是一个例外!i2cget <device address> <register in device>
基本上,你应该首先阅读你的设备的数据表,看看如何与它通信,然后你就会知道如何与…无论您是可以在shell中使用
i2cget
还是需要使用类似于我破解的代码。注:我是http://i.got.nothing.to/blog/