V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
ming2281
V2EX  ›  Python

Python2.7 怎么与 USB 外设交互(读外设通过 USB 串口发送来的数据, 通过 USB 串口发送数据给外设)?

  •  
  •   ming2281 · 2015-12-24 23:14:50 +08:00 · 10155 次点击
    这是一个创建于 3234 天前的主题,其中的信息可能已经有所发展或是发生改变。
    10 条回复    2015-12-25 14:43:35 +08:00
    ayouwei
        1
    ayouwei  
       2015-12-24 23:18:47 +08:00   ❤️ 1
    pyserial ?
    linhua
        2
    linhua  
       2015-12-25 00:26:38 +08:00   ❤️ 1
    pyusb 是处理 usb 原始数据( raw data )的。既然你用的是 usb 串口,说明已经安装了 usb 转串口的驱动。所以问题应该是怎么用 python 读写串口数据?与 usb 无关了
    pyserial 应该可以
    582033
        3
    582033  
       2015-12-25 08:44:08 +08:00   ❤️ 1
    pyserial

    前几天用这个库写的一个读取 PM2.5 红外传感器数据的小程序

    https://github.com/582033/GP2Y1051AU0F
    zjqzxc
        4
    zjqzxc  
       2015-12-25 10:08:43 +08:00
    @582033 前几天用这个库写的一个读取 PM2.5 传感器数据的小程序,不过我的传感器是攀藤 G1 。。
    然后又顺手撸了个 aqi 计算工具。。
    582033
        5
    582033  
       2015-12-25 10:18:29 +08:00
    @zjqzxc 激光的精度搞,太贵了...

    我这个是小米净化器同款,廉价货,加上转接头还不到 40 块钱
    BOYPT
        6
    BOYPT  
       2015-12-25 10:44:32 +08:00   ❤️ 1
    毕业设计时候弄过类似的,和 amtel 单片机通信,用 libusb 的封装 pyusb 直接通信 raw 包,单片机上用 IO 模拟 usb 通信端口。其实就是个大坑,无限折腾, windows 下的驱动还难搞,也不稳定。如果改成用串口设备,封装好了通信底层,代码只跟串口交互,那样应该好搞多了。
    zjqzxc
        7
    zjqzxc  
       2015-12-25 10:47:23 +08:00
    @582033 GP2Y10 看过,灰尘传感器,,数据用来看趋势还行,读 PM2.5 就比较费劲了。。
    当时算的是用一代的话 20 块钱都够买传感器加一片 51 了,再加一个 ch340 ,不算邮费的话 25 差不多了。
    izoabr
        8
    izoabr  
       2015-12-25 10:59:48 +08:00
    客户忽略 USB ,因为对你来说就是一个串口,你用 pyserial 去操作串口就行了。
    linhua
        9
    linhua  
       2015-12-25 13:03:30 +08:00
    @BOYPT
    单片机上 IO 引脚一般是电平信号(单端信号),而 usb 的 d+ d- 用的是差分信号。你怎么通信的?
    除非单片机上有专门的 usb 功能接口
    BOYPT
        10
    BOYPT  
       2015-12-25 14:43:35 +08:00
    @linhua 差分信号不也是电平, usb 接口是硬实现, IO 端口是软实现而已。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3598 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 10:31 · PVG 18:31 · LAX 03:31 · JFK 06:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.