我可以用Node.js编写一个Raspberry Pi吗?

我可以用Node.js编写一个Raspberry Pi吗?,node.js,raspberry-pi,raspbian,Node.js,Raspberry Pi,Raspbian,我想学习编程Raspberry Pi,我对Node.js很在行。我在近十年里还没有接触过C++。我知道我可以在Pi上加载Linux,但如何在Node中进行编程 如果是,我如何处理输入/输出之类的事情?例如,如果我想制作一个简单的设备来检测运动并发出嘟嘟声,那么通过Pi上的Node.js可以吗?我想你需要一些C端口模块来控制硬件,但我不知道 如果有的话 不过,您可以看看哪个是嵌入式的 专用于JavaScript的开发硬件,因此可以运行Node.js 您的Pi上的应用程序可以对其进行编程。就像Dav

我想学习编程Raspberry Pi,我对Node.js很在行。我在近十年里还没有接触过C++。我知道我可以在Pi上加载Linux,但如何在Node中进行编程


如果是,我如何处理输入/输出之类的事情?例如,如果我想制作一个简单的设备来检测运动并发出嘟嘟声,那么通过Pi上的Node.js可以吗?

我想你需要一些C端口模块来控制硬件,但我不知道 如果有的话

不过,您可以看看哪个是嵌入式的 专用于JavaScript的开发硬件,因此可以运行Node.js
您的Pi上的应用程序可以对其进行编程。

就像Dave Swersky在评论中说的那样,是的,您可以,这里有一个完整的教程:

我想补充一点,它可以很好地工作,但您需要使用Leafpad(如果是GUI)或nano来编辑代码,它们是很好的文本编辑器,但没有语法着色

编辑:对于那些不想看到该链接的人,这里有一份该链接的快速简历:

正在为节点创建新目录:

sudo mkdir /opt/node
获取Raspbian的软件包:(vX.XX.X将被最新版本替换)

将node.js添加到路径:

nano /etc/profile
将此添加到“导出”之前

NODE_JS_HOME="/opt/node"
PATH="$PATH:$NODE_JS_HOME/bin"
export PATH
这是对node.js基本安装的翻版,如链接中所述,我没有编写它,但在两个Raspberry上成功地测试了它

有关为什么使用thoses命令以及如何正确配置RPi的更多信息,请转到链接,真正的作者应该得到表扬

编辑3(在编辑2之前插入,因为与问题更相关)

对于带有RPi的硬件io,您可以使用流行的socket.io包,或一些特殊模块作为pi gpio

编辑2: 对于nano语法着色,请复制到一个名为js.nanorc的文件中,本例中位于~/处 然后使用以下命令:

cp /etc/nanorc ~/.nanorc
nano ~/.nanorc
创建用户nano配置文件并对其进行编辑

阅读所有选项并取消您想要的注释,我建议您激活:

set autoindent
set tabspace 4
set tabstospace
set whitespace " °"
因此,您有自动缩进功能,制表符由4个空格组成,通过键入alt+p,您可以看到所有空格都被替换为°(仅可视,它们不会在文件中被替换)

然后,在文件末尾键入

include "~/js.nanorc"

因此,您现在也有了javascript的着色功能。

还没有使用它,但可能这正是您需要的:

在Linux系统上,您只需与上的文件以及分别安装在
/proc
/sys
/sys/kernel/config
安装点上的文件系统进行交互,就可以做很多有趣的事情

它们允许您观察系统的状态和配置,在许多情况下还提供了通过将特定数据写入文件来更改配置的机制。不需要C/C++本机插件-标准模块就足够了

举个例子,看看这个库,它允许您通过读取数据并将数据写入sysfs挂载点上的led配置端点来控制led(免责声明:我是该模块的作者)

如果您想使用Raspberry PI上提供的GPIO引脚与自定义设备交互,那么有for Node.js,它提供了一个很好的JavaScript API来发送和接收特定引脚上的信号

因此,要创建一个检测运动并发出嘟嘟声的设备,您需要将运动检测器和嘟嘟声连接到GPIO(最有可能),使用您选择的GPIO模块之一控制引脚,并开始监听传入信号。当您收到一个信号时,您会向蜂鸣器发出另一个信号

include "~/js.nanorc"