问题标签 [beagleboard]
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.
python - 如果您不知道有多少数据通过,如何接收套接字信息?
我正在开发基于 Python 的 GUI 界面,以与运行 Python 的机器人和作为电机控制器和传感器控制器的Arduino Mega进行交互。
最初,我打算使用远程桌面从机器人加载我的 GUI。由于远程桌面,这变得非常慢。我认为服务器和客户端会更好。
我在我的 Arduino 上运行了一个草图,它捕获电机命令并执行它们。它还等待“Ping”命令通过,此时它应检查三个不同位置的超声波传感器,然后将此信息写回服务器,服务器应捕获此数据并将其传递给客户端图形用户界面。我已经完成了大部分工作,但我似乎无法将数据从服务器返回到客户端。我曾认为一个简单的“client.recv()”可以实现这一点,但事实并非如此。
如果我不知道到底有多少数据返回,我该如何接收这些数据?
Arduino 将数据发送为“dist1,dist2,dist3 \n”。
这是我的 Arduino 代码:
这是我的 Python 服务器代码:
最后但并非最不重要的一点是客户端 GUI 代码(这也是我认为我的问题所在......):
c++ - 如何在 BeagleBoard 上的 Angstrom Linux 上启动时运行 C++、PortAudio 应用程序?
我有一个名为 xooky_nabox 的命令行应用程序,它是使用 c++ 编写的。它读取纯数据补丁,处理来自 beagleboard 的音频输入插孔的信号,并通过音频输出插孔输出信号。
我希望应用程序在 beagleoard 启动时运行并保持运行直到板关闭。没有图形用户界面,也没有连接键盘或显示器,只有音频输入和输出插孔。
如果我手动运行应用程序一切正常:
如果我在后台运行它也可以正常运行:
现在,让我展示两个版本的程序的代码布局(完整的东西在https://github.com/rvega/XookyNabox):
版本 1,主线程保持活动状态:
版本 2,执行被分叉并与启动它的终端分离:
尝试在启动时运行它
我尝试使用几种方法在启动时运行该程序的两个版本。结果总是一样的。当小猎犬启动时,我可以听到几分之一秒的声音输出,然后声音停止并出现登录屏幕(我有一个连接到板上的串行终端,并且我的计算机上正在运行 minicom)。对我来说最奇怪的是 xooky_nabox 进程实际上在登录后一直在运行但没有声音输出......
这是我尝试过的:
将 @reboot 条目添加到 crontab 并使用尾随 & 号启动程序(程序的版本 1):
向 crontab(版本 1)添加了一个 start-stop-daemon:
在 /etc/init.d/xooky 创建了一个脚本并做了
并尝试了不同版本的启动脚本:版本 1 的 start-stop-daemon,直接使用尾随 & 号调用程序(版本 1),直接调用不带尾随 & 号的程序(版本 2)。
此外,如果我从串行终端或 ssh 会话(usb 网络)手动运行程序;然后我运行 top,程序将运行几秒钟,消耗大约 15% 的 cpu。然后它会停止输出声音,它的cpu消耗会上升到30%左右。在这种情况下,我的 log.txt 文件显示操作系统没有向程序发送信号。
当程序的第 2 版在启动时运行时,日志将显示如下内容:
有人对如何调试有任何想法吗?关于如何在启动时启动我的程序的建议?
gcc - crosstool-ng 构建失败
我正在使用来自Free-Electrons.com的指南
我正在尝试安装 crosstool-ng 编译器,并已转到第 6 页标题下的Produce The Toolchain下运行以下命令的位置。
应该注意的是,文章说要使用我已经完成的 Crosstool-ng 1.4.2 版。
在构建期间,它会失败,说它无法下载 似乎记录在此处的sstrip
失败示例:
简而言之,原因是存储库已移动,并且发布的解决方案是:
好的,所以安装补丁有点奇怪,但基于自述文件
补丁应该直接应用在 crosstool-NG 目录的顶层,命令如下:
(将 ..../xxx-blabla.patch 替换为实际的补丁名称)
所以我所做的是:
我不确定上面的命令是否正确,但是在运行./ct-ng 构建时,它现在会下载脚本,所以我想没关系。
我应该应用其他两个补丁但不确定源文件,无论如何新版本继续到这一点:
这就是我卡住任何想法的地方?
embedded - Beagleboard 裸机编程
我刚拿到我的 BeagleBoard-Xm,我想知道是否有详细的分步教程介绍如何在硬件上运行一个非常简单的裸机软件?
我问的原因是我想深入了解硬件架构是如何工作的,从引导加载程序、链接器、中断、异常、MMU 等一切。我认为最好的方法是让一个简单的 hello world 程序在 beagleboard xm 上执行而无需一个操作系统。没什么先进的,只需启动板并在屏幕上获得“hello world”输出。就是这样!
下一步是运行一个微型操作系统,它可以安排一些非常简单的任务。不需要文件系统,只需了解操作系统的基础知识。
beagleboard - Beagleboard 在第一次启动时不显示欢迎屏幕
我买了一个 Beagleboard xm。它带有一个包含演示程序的微型 SD 卡。我将 Hdmi 连接到 dvi 转换器和显示器。当我连接电源线时,我想看到一个欢迎屏幕。但是屏幕上什么也没有出现,显示器进入睡眠状态。
我应该如何进行?
linux - Buildroot:运行 Lighttpd
我正在尝试让 Lighttpd 启动并运行,但我遇到了一些问题,想知道是否有人能指出我正确的方向。我只使用了 Apache2,在我的 Ubuntu 机器上启动和运行很容易,但我需要在我的 BeagleBoard-xm 上新建一个服务器,我认为 Lighttpd 值得尝试,所以我添加了所有依赖项和重建它。构建完成后,我将系统备份,只能在 /usr/sbin/ 中找到 lighttpd 和 lighttpd-angel,在 usr/lib/lighttphd/ 中找到 mods 库。运行 lighttpd 返回“没有可用的配置。尝试使用 -f 选项。”。配置文件是在这里的某个地方,我找不到它,我需要创建一个,还是它丢失了方法?我假设我也会在 /etc/ 下得到一些东西,但那里没有 lighttpd 文件夹。就像我说的那样
rfid - 与 Beagle Board 连接的 RFID 阅读器
有人能告诉我与 Beagle Board 兼容的 RFID 阅读器吗?
linux - 有人可以指出我的 bitbake 或 openembedded 教程吗?
我一直在为 BeagleBoard使用Angstrom Linux 发行版。任何人都可以向我指出有关 bitbake 和OpenEmbedded如何实际工作的教程或参考吗?例如,当我像这样调用 bitbake 时:
到底发生了什么?我已经 grep 了 Angstrom 配方并搜索了 Angstrom 文件系统,但我似乎无法找到对虚拟或内核的引用。在没有真正了解 bitbake 的工作原理的情况下,我对使用这个工具链和制作内核补丁感到有些困惑。
qt4 - 在 Qt Creator 上交叉编译 Qt GUI 应用程序:库不兼容错误
我正在尝试为 Beaglebord (ARM) 编译 Qt 一段时间并运行一些基本的 Hello Word GUI 应用程序。我已经为交叉编译构建了 Qt,其中包含下面提到的一些错误和警告,并将我的 Qt Creator 配置为与我的交叉编译工具链一起使用。我创建了一个简单的 Qt GUI 项目,但是当我尝试构建我的项目时,我收到了这些错误:
此外,列表项 Qt Creator->Options->Qt4 Qt Versions 列表上有一个黄色警告图标:
我正在使用 Ubuntu 10.10 x86 和最新的 Angstrom 工具链。我已经使用 Angstrom 在线构建器来构建我的工具链。我已经用最新的离线 Qt SDK v4.7.4 安装了我的 Qt Creator。之后我下载了 Qt 源代码 qt-everywhere-opensource-src-4.7.4.zip 并配置如下:
将 qws/linux-arm-gnueabi-g++/qmake.conf 更改为:
使用以下设置配置 Qt:
这是我的配置脚本的控制台输出。
正如您在配置输出中看到的那样,只有树警告:
还有一个关于浮点格式的警告:
请帮我找出问题所在。提前致谢。
更新 1
如果您以前阅读过这个问题,我已经更改了我的配置并重新编译并安装了 Qt,并根据新配置和新结果更新了我的问题。它让我摆脱了 make install 错误,但主要问题仍未解决。
更新 2
我注意到 Qt Creator为linux-g++-32调用qmake而不是qws/linux-arm-gnueabi-g++所以我用所需的设置更改了 linux-g++-32/qmake.conf。现在我可以构建我的应用程序了。但是我还没有测试应用程序二进制文件,因为我现在在家。我将测试我的申请并明天在这里发布结果。
haskell - ARM Beagleboard 上的 Haskell
我想在基于 ARM OMAP 的Beagleboards上使用 Haskell GHC / Haskell 平台。有什么办法可以在短期内做到这一点,但我不必先尝试交叉编译,例如 LLVM,然后是 GHC 等几个星期?