我有关于在Raspberry Pi上获取数据的问题。我知道我们可以在RPi.GPIO库的帮助下创建RESTful服务以从GPIO获取数据。但是,如果我想从传统USB设备获取数据怎么办?假设我有一个USB蓝牙适配器,我可以通过命令行中的操作读取数据。但是可以通过Web服务执行相同的操作吗?非常感谢任何可能的帮助!
答案 0 :(得分:0)
只是一个想法。我不确定您想要接收哪些数据,但是..由于您可以通过命令行工具(也许是hcitool)从您的BT设备读取数据,您可以编写cgi脚本以通过网页与其进行交互。这是perl中的示例代码。此代码生成带有smartctl程序输出的html页面。您可以修改它以发送某些参数并在perl脚本中解析输出行。
#!/usr/bin/perl
use CGI qw(:standard);
# header lines
print "Content-type: text/html\n\n";
print "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">\n";
print "<html>\n";
print "<head>\n";
print " <title>S.M.A.R.T. data</title>\n";
print "</head>\n";
print "<body>\n";
print "S.M.A.R.T. output.\n";
my $cmd="/usr/bin/sudo /usr/sbin/smartctl -d sat -a /dev/sda";
my @list=`$cmd`;
foreach $ln (@list)
{
print "$ln<br>";
}
print "</body>\n";
print "</html>\n";
P.S。代码并不完美,但它适用于我的RPi。