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如何获得要渲染的纹理   java如何动态确定对象类型的文本的实际类型   java如何用方括号解析参数数组?   java与ECC公钥的长度混淆   JavaLWJGL包括GUI类吗?   java如何打印所有收件箱电子邮件   java在片段中使用RecyclerView而不是活动会导致E/RecyclerView:没有连接适配器;跳过布局错误   为位于系统托盘中的Java程序创建键盘挂钩   使用java将三个json对象合并为一个   java获取范围(x,y)内的随机整数?   java定制primaryStage标题:以图标为中心   命令行无法使用运行java应用程序。jar依赖性“错误:无法找到或加载主类”   java LuaJava编译错误“未解析的外部符号”   如何修复java函数   java文件。Listfile()强制关闭(NullPointerException)   java调试模式在IDEA和Kotlin中停止工作   当使用命名空间STD的C++头文件上运行Sigg时,java丢失分号错误   java如何在使用DBUnit时防止数据删除   找不到java类org/apache/zookeeper/server/NIOServerCnxn$工厂   java无法在上启动jbpmhttp://localhost:8080/businesscentral