问题标签 [raspbian]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3395 浏览

python - 如何从网页更改正在运行的 Python 脚本/服务中的变量?

我在树莓派上使用 Raspbian。我有一个 Python 脚本 (LCD.py),它使用 supervisord 控制作为服务运行的 LCD。

我希望能够在我的网页上输入一条消息并将其显示在 LCD 上。我认为这意味着我必须更改 LCD.py 脚本读取的一些变量,可能是更改模式的标志,然后使用服务器执行的另一个 Python 脚本 (CGI.py) 更改消息本身。

最好的方法是什么?还是我应该做一些完全不同的事情?我认为它与普通 CGI 类型的东西不同,因为我不能在每个页面加载时执行脚本,它需要在后台运行(用于滚动、闪烁等)

编辑:到目前为止,感谢您的帮助,今晚我回家后将发布我的 LCD 守护程序代码。

我对此有了更进一步的了解,我尝试使用 SimpleXMLRPCServer 和线程,目前这不起作用。我认为这是因为线程实际上并不同时运行。这是我正在测试的服务器代码:

和我的客户代码:

如果我取消注释我的 lcdThread().start() 行,我认为它卡在 lcd while 循环中并且服务器没有响应。多处理会有什么不同吗?请您详细说明 exec() 函数,我将如何使用 exec() 更改不同脚本中的全局变量?

编辑:这是我的 LCD.py 代码,它是一个守护进程,我试图设置的消息变量大约是一半。

谢谢乔

0 投票
5 回答
24971 浏览

webcam - 在树莓派上使用动作来解决网络摄像头流问题

我有一个 USB 网络摄像头(未知品牌,没有标记),在我的 Raspberry Pi 上检测到很好。

这是 lsusb 的输出

但是,当我运行运动时,使用带有唯一默认配置的 /dev/video0 更改了分辨率并将网络摄像头主机设置为关闭,以便我可以在网络上流式传输它。这是我跑步时的日志

相机上的灯在开始时亮起然后又熄灭,有人知道我遇到的任何错误吗?

谢谢!

0 投票
3 回答
3723 浏览

c - 在不运行 x 的情况下在 linux 上显示图像

有谁知道通过命令行或 C 显示图像的方法?我可以在不使用 omxplayer 运行 X 的情况下正常运行视频,但我还想通过 C 或我可以从 shell 运行的东西来显示图像而无需加载桌面

0 投票
2 回答
368 浏览

rvm - RVM 不是 Raspbian RVM 安装中的功能

在使用 LXTerminal 在 Raspbian 上安装 RVM 时,我正在寻找“RVM 不是函数”问题的解决方案。以下线程讨论了此问题的解决方法:

rvm 安装不工作:“RVM 不是函数”

一种解决方案是通过执行 /bin/bash --login 以“登录模式”启动终端,但这对 Raspbian 没有帮助,因为它使用 LXTerminal。其他人建议将以下行放在 .bash_rc 文件的末尾:

源 ~/.rvm/scripts/rvm

...这似乎工作。只是想知道(a)上述解决方法是否合法并且不会搞砸任何事情,以及(b)是否有人在 Raspbian 上找到了更优雅的 RVM 解决方案。

0 投票
2 回答
688 浏览

bash - 带 sed 命令的 Bash 脚本中的引号和 \

我正在编写一个 bash 脚本来帮助我更快地设置我的 rpi 的网络接口。它现在已经基本完成,并且使用 sed 来更改 /etc/network/interfaces 文件的不同部分,具体取决于网络接口的设置方式。我的问题是我在不想要引号的地方插入引号,如果我删除引号,我会插入包含要作为变量名字符串插入的数据的变量,而不是将它们作为值插入。

我的代码如下(虽然我已经把它删掉了)

问题是这里的这些行

哪个插入address "(var_address)"。正如我所说,我可以让它插入address $address。但不是,如我所愿,address (var_address)。有人可以解释如何在 sed 命令中使用 / 和 \ 以及 " 和 ' 以便我可以解决问题。正如您可能已经猜到我对 bash 有点陌生,因此感谢您的帮助。

0 投票
2 回答
24357 浏览

python - 在 raspbian 软浮点上使用 FTDI D2XX 驱动程序和来自 Raspberry Pi 的 Python

我们有一个由 FTDI 的 D2XX 驱动程序控制的 USB 设备。它目前通过 Python 接口从 Windows 机器控制,作为一个有趣的项目,我尝试将控制转移到 Raspberry Pi(大约是 PC 成本的 1/10,不包括操作系统成本)。

有许多障碍需要清除,但几周后,我终于找到了所有答案并让它发挥作用。答案分布在多个论坛上,因此感谢 Stack Overflow 社区,我想我会在这里整合它们。

一、项目要求:

我下载了 Wheezy 发行版并使用 Win32DiskImager 写入 4 GB SD 卡。Raspberry Pi 启动没有问题。然后我解压 D2XX 库 (libftd2xx.so) 并将其安装到/usr/local/lib.

PyUSB (1.6) 目前仅针对 Windows 进行测试,但它们提供了源代码。为 Raspberry Pi 编译一个副本非常简单。基本上,修改 setup.py 以链接到 libftd2xx.so 库(无需复制它)。还要编辑 d2xx/_d2xx.c 以注释掉没有 Linux 实现的例程(当前为 ftobj_Rescan、ftobj_Reload ftobj_GetComPortNumber)。将 FTDI D2XX 驱动程序下载(在发行版中)目录中的 WinTypes.h 和 ftd2xx.h 复制到 ftdi-win32 并运行python setup.py install,它将编译和安装 Python 模块。

完成所有这些后,我编写了一个简单的 Python 脚本来与 FTDI 芯片对话。请注意,您需要通过 sudo 运行。

d2xx 模块似乎找不到 libftd2xx.so 文件。因此,我调整了 setup.py 脚本以链接到库的静态副本 libftd2xx.a。瞧,我得到了问题的第一个线索:D2XX 库是使用软浮点构建的,而我的 Wheezy 发行版被配置为使用浮点寄存器。也就是说,我系统上的 gcc 生成的代码与 D2XX 库二进制不兼容,并且不允许链接到它们。

为了解决这个问题,我下载了soft-float debian "wheezy" 发行版(2012-08-08) 并写入了 4 GB SD 卡。这次映像无法启动。环顾四周后,我发现了这个有用的答案. 简而言之,软浮点的启动映像存在问题,因此对于某些 Raspberry Pi 板,它不会启动。解决方案是将软浮点发行版中的 start.elf 文件替换为可以正常工作的文件,例如硬浮点 Raspbian 映像的副本。幸运的是,SD 卡有两个分区:一个 FAT 分区和一个 ext3(?) 分区。启动映像位于 FAT 分区上,因此将硬浮动 SD 卡弹出到 Windows 框中,复制 start.elf 文件,弹出软浮动 SD 卡并使用硬浮动更新其 start.elf 是微不足道的-浮动一个。之后,Raspberry Pi 启动没有问题。

在安装 FTDI 的 D2XX 驱动程序并从 PyUSB 构建 d2xx Python 模块后,我再次尝试了测试脚本。又失败了。d2xx 模块可以毫无问题地读取 libftd2xx.so 库,但由于某种原因无法与设备通信。

0 投票
2 回答
3706 浏览

mysql - mysql拒绝访问

我是 mySql 的新手,只是将下载的 sql 文件放入数据库时​​遇到了很多麻烦。我正在我的树莓派上使用最新版本的 raspbian 的命令行。

当我尝试将我的 sql 文件(lahman2012.sql)链接到数据库时,即使我使用上面的密码(密码),我也会收到错误消息

0 投票
2 回答
7468 浏览

qt - 加载共享库时出错:libstdc++.so ------ 困惑..?

我已经使用以下链接构建了我的工具链,启用了交叉编译器 c++ 支持:----- http://www.bootc.net/archives/2012/05/26/how-to-build-a-cross-compiler -为你的树莓派/

我正在使用 Scratchbox 和 Qemu。

现在我在 Scratchbox2 中编译我的代码,c++ 代码正在编译但无法运行它会抛出这个错误:-------

编译器版本 :-----------------

编译成功:----------------

[SB2 简单 armhf] ignite@ignite 测试 $ g++ new.cpp

输出文件格式:----------------

抛出错误:---------

当我运行此命令时:--------- >>> whereis libstdc++.so 它显示了库

即使我运行 ldconfig -v 也有同样的错误:-----

请建议做什么....?

任何建议为什么会出现此错误。请建议。

交叉编译器配置文件:-----
http://www.bootc.net/archives/2012/05/26/how-to-build-a-cross-compiler-for-your-raspberry-pi/

0 投票
0 回答
1211 浏览

python - Python RuntimeError: 关键字列表条目 (5) 多于格式说明符 (1)

我正在尝试用 Python 为我的 Raspberry Pi 开发一个简单的 Sound2Light 应用程序。我正在使用 Ian Halpern ( https://github.com/ianhalpern/Impulse )编写的 Impulse Library

但是,我首先尝试从音频阵列脉冲中提取 3 个值(Sub、Mid、Hi)。

这是代码:

但是,此代码在我的笔记本电脑上完美运行(archlinux x64 python 2.7)

但无法在我的 Rapsberry Pi 上运行(运行 Raspbian)

这是错误消息

我试图用谷歌搜索它,但一无所获......我唯一发现的是,错误是由 getargs.c 文件引发的(http://svn.python.org/projects/python/branches/ release27-maint/Python/getargs.c )

在此先感谢您的帮助:) 菲利克斯

0 投票
1 回答
167 浏览

linux - 初始化脚本不会“停止”分叉的 C 程序

我有一个 C 程序,它有一个“守护进程”模式,这样我就可以让它在后台运行。当它使用“-d”运行时,它使用以下代码进行分叉:

我创建了一个初始化脚本,当我手动运行初始化脚本来启动我的守护进程时,它启动正常,但是,如果我用“停止”运行它,守护进程不会停止。

我想问题是由于分叉导致PID发生了变化,我没有错,我该如何解决?