微型单线实用程序。100%纯蟒蛇,USB9097专用。

tpow的Python项目详细描述


porvides

  • Minimal 1-wire protocols for USB9097.
  • Basic rom search algorithm (use recursion).

has dependencies and limitations

  • 100% pure python, requires ^{tt1}$ to control UART.
  • support external power mode only. parasite power mode is not supported.
  • tested on Windows10 PC + USB9097 (1-wire adapter).

适配器/传感器/设备

  • USB9097 (1-wire adater with Vcc supply, PCsensor.com ShenZhen/China)
  • DS18B20, DS2438 (Dallas/Maxim)
  • Humidity Sensor HIH-5030 + DS2438Z+ (TaaraLabs Estonia)

用法

检查包含一些测试的examples/文件夹。 pip tpow将在Lib/site-packages/tpow下安装它。 如果找不到examples/,请下载源包*.tar.gz并进行检查。

获取romid(总线上的一个1线设备)

import tpow.usb9097

bus = tpow.usb9097.USB9097('COM3')
bus.cmd_reset()        # 0xE3, 0xC1
bus.dat_write([0x33])  # read-rom
ans = bus.dat_read(8) # little-endian (family + SN[6] + CRC)
print(['%02X'%ord(a) for a in reversed(ans)]) # big-endian

获取所有romid(搜索总线上的所有rom)

import tpow.usb9097

bus = tpow.usb9097.USB9097('COM3')
xx = tpow.usb9097.search_roms(bus)
for x in xx:
    print(x)

获取温度/DS18B20

import tpow.usb9097
import tpow.device
import tpow.sensor

bus = tpow.usb9097.USB9097('COM3')

# do temperature conversion and get scratch-pad
spad = tpow.device.ds18b20_skip_rom(bus)

# decode temperature
t = tpow.sensor.ds18b20_temp(spad)

print("SPAD : " + " ".join(['%02X' % ord(a) for a in spad]))
print("%8.3f [degC]" % t)

待办事项

  • check temperature conversion completed status. (currently, wait 1 sec for each temperature conversion)
  • check operation finished status bit.
  • check CRC.
  • refine data type of parameters (bytes, string, list of single bytes…)

许可证

Copyright (c) 2018 Kenich SHIRAKAWA This is licensed under MIT license. See Licence.txt for more information.

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

推荐PyPI第三方库


热门话题
在jbosseap6上部署CXF web服务时发生java错误。1.1   tablecell中的java Progressbar和标签   关于Java中此引用的问题   java如何使用下拉列表中选择的值过滤c:forEach给出的结果?   对包含其他对象的类使用BoundedMapperFacade的java Orika映射   java如何测试配置的“键”和“值”。属性文件?   java Ctrl+箭头键、多字变量名和eclipse pydev   无法通过运行索引执行基于java服务器表单的身份验证。jsp而非servlet   如何在java中使用正则表达式更改匹配子字符串的前缀和后缀   java如何安排selenium脚本在一周中的某一天的某个特定时间运行?   FileWatcher中的java溢出事件   java将堆栈大小设置为线程在安卓中似乎没有什么区别   xml为什么Java在我的XPath中添加反斜杠?   具有多个SQL语句的java MySQL ConnectorJ   为什么在eclipse中运行Java应用程序时JFrame不可见?   java正则表达式将2个字符替换为1个字符   UTC时区上的java hibernate+spring启动存储日期故障   Java未正确格式化日期   java双链接列表getData问题