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有没有一种方法可以使用JPA将@Entity类中具有@onetomany关系的所有值持久化到一个表中?   在span selenium之间找到java Get文本   java在不关闭hibernate会话时的奇怪行为   java我在Eclipse中运行第一个Selenium测试后出错   java Maven复制了我所有的。JAR中的类文件   更新时带JPA的java错误   javaspring@Transactional注释行为   java Android:将视图添加到网格回收视图   在java中,尝试检索双精度数组中最低数字的索引号   java CXF客户端代理如何处理客户端中的某些响应代码   JLayeredPane+JScrollPane的java剪辑问题   java设计模式以避免传递不必要的参数?   测试使用JPA的参与者。withTransaction(java.lang.IllegalStateException:EntityManager在测试时关闭)   JavaSpringJPA和Hibernate在调用save方法时不将实体保存到数据库中   java是一个自定义字符串类的创建   是否有关于intrinsics方法的官方Java文档?   数组Java,将对象传递给其他类   java如何通过使用OpenCsv记录无效记录的错误来创建有效CSV记录的列表?