用于配置pd buddy sink设备的python库

pd-buddy-python的Python项目详细描述


用于使用pd buddy sink串行控制台的python库 配置界面

功能

  • 为pd buddy sink shell命令提供pythonic接口
  • 配置表示为sinkconfig对象
  • sinkconfig对象可以在本地操作并写入 具有一个方法调用的设备
  • 允许控制是否启用输出
  • 提供一个pythonic接口,用于读取播发的pdo
  • 提供测试电源是否遵循电源规则的功能
  • 包括一个脚本,用于测试PD好友接收器是否正常工作

示例

打开第一个PD Buddy Sink设备并读取其配置

>>> import pdbuddy
>>> pdbs = pdbuddy.Sink(list(pdbuddy.Sink.get_devices())[0])
>>> pdbs.get_cfg()
SinkConfig(status=<SinkStatus.VALID: 2>, flags=<SinkFlags.NONE: 0>, v=5000, vmin=None, vmax=None, i=3000, idim=<SinkDimension.CURRENT: 1>)
>>> print(pdbs.get_cfg())
status: valid
flags: (none)
v: 5.000 V
i: 3.00 A

本地操作sinkconfig对象

>>> cfg = pdbs.get_cfg()
>>> cfg = cfg._replace(v=20000, i=2250)
>>> cfg = cfg._replace(flags=cfg.flags | pdbuddy.SinkFlags.GIVEBACK)
>>> cfg
SinkConfig(status=<SinkStatus.VALID: 2>, flags=<SinkFlags.GIVEBACK: 1>, v=20000, vmin=None, vmax=None, i=2250, idim=<SinkDimension.CURRENT: 1>)

将sinkconfig对象写入flash

>>> pdbs.set_tmpcfg(cfg)
>>> pdbs.write()
>>> pdbs.get_cfg()
SinkConfig(status=<SinkStatus.VALID: 2>, flags=<SinkFlags.GIVEBACK: 1>, v=20000, vmin=None, vmax=None, i=2250, idim=<SinkDimension.CURRENT: 1>)

要求

  • Python2.7,>;=3.3
  • pyserial=3.0
  • aenum>;=2.0(如果使用python<;3.6)

测试

要运行单元测试,请运行:

$ python setup.py test

这将测试sink类,只有当一个pd伙伴sink被插入和插入时 设置模式,因此如果要测试对 下沉类。另外,确保测试时状态LED快速闪烁 运行,因为这是测试identify命令的唯一真正方法。成为 意识到接收器的配置将受到测试的影响。

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

推荐PyPI第三方库


热门话题
java是通过internet与客户机/服务器应用程序交互的最佳方式吗?   awt为什么不推荐java getPeer调用?   java类的添加方法   java在启动tomcat时传递数据库身份验证详细信息   如何创建具有关联值(如Swift enum)的Java枚举?   如何清理这个Java示例内存   visualvm如何在Java Visual VM中解释大型自时结果?   当实例变量的名称与参数变量相同时,java调用实例变量   eclipse缺少工件组织。硒。硒:seleniumjava:jar:3.14.59   java如何在Android Studio中Expandablelistview的子布局中使用Listview   从Guava 19升级到20时出现java编译错误   java在Maven 2中,我如何知道哪个依赖项来自于可传递依赖项?   需要javascript简单数据分级应用程序支持   接受特定对象或其子类型的java通用方法   在Java中剥离HTML   错误的Java字符串连接   Mybatis,Mysql中重复更新查询的java语法错误