如何向arduino发送Firmata命令以打开图钉

狂热主义者

我正在尝试实施Firmata协议,并且在解读用于编写数字引脚的规范方面有些困难:

我注意到了Firmata 2.3规范的以下部分

* type                command  channel    first byte            second byte 
------------------------------------------------------------------------------
* digital I/O message   0x90   port       LSB(bits 0-6)         MSB(bits 7-13)

/* two byte digital data format, second nibble of byte 0 gives the port number (e.g. 0x92 is the third port, port 2)
 * 0  digital data, 0x90-0x9F, (MIDI NoteOn, but different data format)
 * 1  digital pins 0-6 bitmask
 * 2  digital pin 7 bitmask 
 */

我在解释规范时遇到了一些困难。我看过其他实现,但是还看不到规范和实现之间的关系。

假设我要打开Arduino LED(引脚13),我知道它将在第二个端口(端口1)上,因此第一个字节为#{91}

我对后两个字节的位掩码感到困惑。我知道位掩码是什么,所以我想为该引脚启用正确的位。

  • 为什么数字引脚的位掩码这么大?我熟悉在PLC的数字输出上使用位掩码,这似乎有很大的不同(一个针,一个位)

  • 我的想法是引脚13将是端口1上的第7引脚。由于我不在乎其他引脚,因此我将在第2个字节#{40}中标记该引脚,并且不需要为该引脚设置任何引脚。第三字节#{00}?

我认为我对位掩码的解释不正确,这可能是我的错误所在

我是否在正确的轨道上?这是将引脚设置为高电平或低电平的正确命令吗?

狂热主义者

strace使用firmata测试应用程序进行了一些调试之后,我发现打开引脚13的简单命令是:

#{912000}

并关闭它:

#{910000}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何正确设置IBM Bluemix Node-RED Iotout节点以向设备(Arduino)发送命令?

来自分类Dev

如何向Appium发送“假”命令

来自分类Dev

如何向Appium发送“伪”命令

来自分类Dev

你如何通过java向arduino发送串行文本

来自分类Dev

如何向发送杯发送“仅用黑色墨水打印”命令?

来自分类Dev

随时向Arduino发送数据

来自分类Dev

如何通过名称向机器人发送命令?

来自分类Dev

如何向服务器发送关机命令

来自分类Dev

如何自动从 Windows 向 Linux (WSL/Ubuntu) 发送命令?

来自分类Dev

我可以向已经打开的tmux会话发送命令吗?

来自分类Dev

我可以向已经打开的tmux会话发送命令吗?

来自分类Dev

向Telnet发送命令

来自分类Dev

向函数发送命令

来自分类Dev

AS3向arduino发送长消息?

来自分类Dev

通过串行向 Arduino 发送 Numpy 数组?

来自分类Dev

如何向Bing Maps WPF图钉添加信息

来自分类Dev

如何通过esp8266 wifi模块从arduino uno向网页发送数据?

来自分类Dev

如何打开 .exe(不是 Windows 命令行)文件并向其发送命令?

来自分类Dev

如何将AT命令发送到BT Shield iteadstudio(Master / Slave)-Arduino?

来自分类Dev

如何将AT命令发送到BT Shield iteadstudio(Master / Slave)-Arduino?

来自分类Dev

从Ubuntu向Windows发送命令

来自分类Dev

从Ubuntu向Windows发送命令

来自分类Dev

R:向Windows的cmd发送多个命令

来自分类Dev

从MacVim向终端发送命令

来自分类Dev

向HSM发送命令时发出

来自分类Dev

向运行 Python 脚本发送命令

来自分类Dev

使用别名命令打开时,如何向 bash 添加颜色和标签?

来自分类Dev

How do I send arduino a firmata command to turn on a pin

来自分类Dev

如何向现有进程发送另一个命令?

Related 相关文章

热门标签

归档