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第三方库


热门话题
trytond_health_crypto_lab  cloudmesh_cmd3light  pelican_vimeo  rig_c_sa  rrn_kr  lts_workflows_sm_scrnaseq  blob_app  ibm_db_py3  Chapter5_headfirstpython  griffin_powermate  easy_args  wb_vandalism  easy_pika  djmicrosip_actualizarcosto  video_brain  path_pipe_conf_tools  rainbow_logging_handler  alignak_backend  modern_robotics  jupyter_declarativewidgets  wechatpy_pidan  horble_reports  network_bio_toolkit  django_jinja_middleware  Hatak_Flashmsg  rig_c_sa  nester_heheda  python_jawbone  backport_importlib  android_gradle_source_mover  leylab_pipelines  chicken_turtle_util  inotify_httpd  easy_net_tf  closure_depresolver  text_oynix  garlicsim_py3  django_includes  todo_list  hy_kernel  vimwiki_tools  twod_materials  36ban_commons  feedforward_closedloop_learning  graphite_beacon_cron  uninstall_app  quizr_utilities  django-parallelized_querysets  printall_kevinnnnng  flask_accept