问题标签 [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 回答
5758 浏览

opencv - USB网络摄像头在带有opencv的树莓派上运行缓慢

我有一些代码,我已经适应了使用 USB 网络摄像头在无头 Rpi 上运行,它运行有点慢,所以我的问题是:

  1. 如果我将 GPI 引脚与专用网络摄像头一起使用会更快吗?

  2. 有什么方法可以加快我的 Rpi 代码吗?

  3. 我在哪里可以获得 Rpi 网络摄像头?

我的代码在这里,我很难粘贴内联,所以它是一个链接

0 投票
1 回答
1279 浏览

javafx - 是否可以在没有 X-server 的情况下运行 JavaFx?

我的计划是在 Raspberry Pi 上运行 JavaFx 应用程序。通常的方法是启动 GUI,然后将其重定向到 HDMI 端口,从而在电视上呈现整个桌面。

但是,我不想看到桌面或其他任何东西,除了我的应用程序在电视上呈现的内容。是否可以将渲染输出直接发送到 HDMI 端口?

0 投票
2 回答
4347 浏览

linux - 在 Kiosk 模式下在 Linux 上禁用 Chromium Ctrl+T、Ctrl+N、Ctrl+W、Alt+F4 等?

有没有办法在 Linux 中禁用 Chromium 的快捷键?我已经尝试了--appand--kiosk标志,但它们并没有禁用快捷方式,您仍然可以使用 + 创建一个新的(虽然不可用)选项卡,并且可以使用Ctrl+T创建一个新的(功能齐全的)Ctrl窗口N。此外,Chromium 似乎对Alt+进行了自己的检查,F4因为即使我在窗口管理器中禁用了它,它也会关闭 Chromium。如何禁用 Chromium 中的所有快捷方式?窗口管理器是火柴盒,以 xorg + nodm 开始(默认的 lightdm+openbox 系统不允许我自动重启会话或摆脱Alt+ Tab)。

这是针对在后台使用 node.js 处理硬件 io 的嵌入式系统,但它需要网络连接才能运行,所以我想确保用户被锁定在浏览器之外(各种Ctrl+ Alt+ F* 快捷方式已被删除, Chromium 是使其成为真正的信息亭系统所剩下的一切)。 Alt+F4不是主要问题(尽管摆脱它会非常好),因为当 Chromium 崩溃时 nodm 会自动重新启动它并且它会稍微合理地处理Alt+ F4(黑屏,闪烁白色,然后它会备份 - 这不是安全问题只是人们可能偶然发现的一个非常丑陋的“功能”)。

0 投票
2 回答
3308 浏览

c - 从 UDP 多播树莓派读取

我已经在这里(链接)开始了一个关于我正在做的这个项目的问题,并且我一直遇到很多问题。

在我之前的问题中,我想从同一台机器上读取 udp 多播,我发现了如何做到这一点,但不是使用 ipmidi。(如果您没有阅读上面链接的上一个问题,ipmidi 是 mac/win 的工具允许我通过 UDP 多播发送 midi 事件)。

我一直在使用wireshark,并设法看到ipmidi 正在向ip 225.0.0.37 端口21928 发送数据报,这告诉我实际上是多播。然后我使用这段代码(监听器)尝试回显 ipmidi 发送的数据报,但没有成功(我更改了多播 ip 和端口)。在此之后,我决定尝试从树莓派运行这段代码,因为我只想让它在我的 mac 中运行以进行测试,所以我去了真实的东西。

在我的 raspi 中,我再次编译了代码,gcc 声称它setsockopt()有一个无效的参数。perror()足以告诉我问题出在这里:

所以我删除了它向内核请求多播地址的部分,并使其成为端口 21928 的简单侦听套接字,但它仍然无法工作。我让我的 mac 通过以太网将 midi 发送到 raspi。

现在,实际问题:

  1. 我现在怀疑我的多播知识:如果我的 mac 正在多播 ipmidi 的数据报,这意味着数据报正在通过我的 mac 中所有可能的地方发送,对吗?我的意思是,ip 225.0.0.37 意味着通过 wifi 和以太网进行多播,或者我必须将它路由到我选择的网络接口?

  2. 据称,由于我的 raspi 是通过以太网接收数据报,因此让我的程序在 ipmidi 的数据报目标端口上侦听就足够了,还是我必须明确告诉它这些数据报来自哪里?

  3. 有没有更简单的方法来制作多播接收应用程序,比如 C/C++ 的 api?我目前正在使用 C 风格的套接字,正如您在我链接的代码中看到的那样,但这不是我正在做的程序的主要目的,我发现自己花了很多时间来学习网络而不是专注于真实的东西。

很抱歉这个问题很长,有很多疑问,我想在上下文中。

谢谢您的帮助!

0 投票
1 回答
1129 浏览

c# - DateTime.Now.Tostring() - 奇怪的结果

我在 Raspberry Pi(运行 Raspbmc)上使用 Mono。大多数事情(令人惊讶!)都可以正常工作,但是有一段代码表现得很奇怪。

使用csharpC#“shell”,我得到了这个(编译后的结果相同):

...但是,访问单独的属性有效:

知道发生了什么,或者至少我应该在哪里提交错误?

FWIW:这就是我正在运行的

0 投票
3 回答
966 浏览

c - 如何在linux中删除^M ^J字符

我有一台外部机器,可以在我的 Raspberry pi 中向我发送结果。在我的模拟器 Cutecom 中,我一行一行地得到结果,没有问题。我使用 Codeblocks 并编写了自己的 C 应用程序,每 10 秒读取一次这些数据。但是奇怪的事情发生了。有时我有一行一行的结果,有时我在每行的末尾都有奇怪的字符^M ^J,结果我的决赛结果很糟糕。我认为这些EOF字符是因为外部机器在Windows中开发的。

好的结果

糟糕的结果

好的,直到这里唯一的问题是命令行显示结果的方式,但我的结果还可以。但是,如果我尝试使用 strtok 来获取一些令牌,那么由于这些字符,我会遇到严重的问题。我能做些什么?我可以添加一些东西来转义这些字符吗?这是我用来从机器读取数据的代码部分

0 投票
1 回答
2189 浏览

python - 树莓派上的 SSL 错误

我最近购买了一个 Raspberry Pi 来运行一些 Python 脚本,但是当我移植它时,我编写的通过 Windows Live 发送电子邮件的功能在成功握手后突然开始发出 SSL 错误,具体来说:

经过广泛的搜索,我发现很多人都有同样的错误,但情况却大不相同。我能找到的最相关的事情是,它似乎是特定版本的 OpenSSL 的问题,但我找不到关于在我的 Pi (1.0.1e) 上运行的版本的任何信息。

该功能(在Win7上运行良好):

我正在运行完全更新和升级的 Raspbian“Wheezy”图像和 Python 2.7.3

0 投票
0 回答
208 浏览

python - 通过cron运行两个python脚本,改变同一个mysql数据库中的两个不同的表

我对编程比较陌生,因此在让脚本按我想要的方式工作所涉及的逻辑方面经验有限。

简而言之,我有一个连接到树莓派(Raspbian)的 Arduino。Arduino 控制传感器,而树莓派充当网络服务器。我在 MySQL 中创建了一个数据库,其中包含一个带有两个表的数据库。第一个表需要INSERT 每 5 分钟接收一次(通过脚本1.py),第二个表UPDATE每分钟接收一次。两个表都从 Arduino 接收值。

我可以单独运行每个脚本,而且效果很好。我可以加入这两个脚本,这也可以,但是因为我使用 cron,它们都以相同的时间间隔(例如,5 分钟)运行。如果我通过 cron 运行两个脚本(5 分钟间隔和 1 分钟间隔),则只有一个有效。我认为这与打开和关闭连接的时间有关吗?

关于如何让它发挥作用有什么建议吗?理想情况下,我希望 1 个脚本每 5 分钟运行一次,另一个脚本每 5 秒运行一次(cron 不能执行秒数)。

0 投票
1 回答
716 浏览

c - Raspberry Pi 中的 Uart 较高 BaudRate 问题

知道为什么我的原生 C 应用程序不能达到高于 38400 的波特率吗?我有完全相同的应用程序,我成功初始化它以在 9600、19200、38400 波特上收听和传输。但是,一旦我设置了 57600,我就会从发射器中取出垃圾(我不知道接收器)。我正在用终端收听它,所以我直接从针头看到垃圾。

我在 GPIO 接头的 Pin 14 和 15 上使用 Raspbian 和 uart。

是否有任何导致问题的精确分数的调整?

现在我只是这样做(并且它有效): cfsetispeed(&options,B38400); cfsetospeed(&options,B38400); tcsetattr(uart0_filestream, TCSANOW, &options); fcntl(uart0_filestream, F_SETFL,O_NDELAY);

TX部分:int a = write(uart0_filestream, StartOfTheMessage, Length);

谢谢你。

0 投票
1 回答
2354 浏览

assembly - 访问树莓派的 gpio 地址时出现分段错误

我一直在关注本教程 http://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/os/ok01.html 并且因为我想在不更换操作系统的情况下控制 gpio,所以我只想编译汇编代码,然后像程序一样运行它,

我改变了程序的开始,

然后在 Pi 上做这些

但是当我这样做时

我遇到了分段错误

当我这样做的时候

没有分段错误,但它什么也不做,它假设永远点亮 LED 然后循环,请帮助我将不胜感激有关如何使用 ARM 程序集访问 gpio 而无需替换 kernel.img。