procotol firmata的python接口

pyFirmata的Python项目详细描述


pyfirmata是用于Firmata协议的python接口。它是完全的 与Firmata 2.1兼容,并具有版本2.2的某些功能。它运行 在Python2.7、3.3和3.4上。

测试和覆盖状态:

https://travis-ci.org/tino/pyFirmata.png?branch=masterhttps://coveralls.io/repos/github/tino/pyFirmata/badge.svg?branch=master

安装

首选的安装方式是使用pip

pip install pyfirmata

也可以使用python setup.py install从源安装。你会 需要安装setuptools

git clone https://github.com/tino/pyFirmata
cd pyFirmata
python setup.py install

用法

基本用法:

>>> from pyfirmata import Arduino, util
>>> board = Arduino('/dev/tty.usbserial-A6008rIF')
>>> board.digital[13].write(1)

要使用模拟端口,启动迭代器线程可能很方便。 否则,电路板将继续向串行数据发送数据,直到它溢出:

>>> it = util.Iterator(board)
>>> it.start()
>>> board.analog[0].enable_reporting()
>>> board.analog[0].read()
0.661440304938

如果您经常使用pin,那么使用get_pin方法是值得的 董事会成员。让我们用一个字符串来指定所需的pin,这个字符串由 “A”或“D”(取决于您是否需要模拟或数字管脚),管脚 数字和模式(“I”表示输入,“O”表示输出,“P”表示脉宽调制)。全部 由:分隔。例如,a:0:i表示模拟0作为输入,或d:3:p表示 数字管脚3作为脉宽调制。:

>>> analog_0 = board.get_pin('a:0:i')
>>> analog_0.read()
0.661440304938
>>> pin3 = board.get_pin('d:3:p')
>>> pin3.write(0.6)

电路板布局

如果您想使用与标准Arduino不同布局的电路板 或者ARDUIO MEGA(其中存在快捷类) pyfirmata.Arduinopyfirmata.ArduinoMega,实例化电路板 使用字典作为layout参数初始化。这是布局指令 对于Mega,例如:

>>> mega = {
...         'digital' : tuple(x for x in range(54)),
...         'analog' : tuple(x for x in range(16)),
...         'pwm' : tuple(x for x in range(2,14)),
...         'use_ports' : True,
...         'disabled' : (0, 1, 14, 15) # Rx, Tx, Crystal
...         }

待办事项

接下来我要做的是在 固定数据:

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java需要64位jdk 1.5 for windows   eclipse运算符+对于参数类型java是未定义的。双,爪哇。双人   未下载文件扩展名为的java文件   java不支持带有POST的媒体类型   从动态创建的多个EditText读取文本时发生java错误   java无法为同一xpath单击多个按钮   如何在Java中动态格式化字符串   java Android Clear Middle活动   多线程Java内存模型volatile和x86   git在Java中通过Jgit忽略文件或文件夹   java“决策无法区分输入的备选方案1、2…”   子类的javajpa继承   java需要弄清楚如何操作mutator来弄清楚一个类,教授说,我对如何操作感到困惑   java如何使用JDBC将数据从文件复制到PostgreSQL?