Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 15, 2014 22:02:48

kazakoff64
Зарегистрирован: 2014-02-13
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

pyUSB + AVR

Привет всем решил связать AVR контроллер и python, по туториалам написал такую прогу

import usb.core
import usb.util
import sys
  
dev = usb.core.find(idVendor=0x16c0, idProduct=0x05df) 
if dev is None:
    sys.exit("No found in the system");
  
dev.set_configuration()
while 1:
	cadena = ""
	for i in dev.read(0x81,64,timeout=0):
		cadena += chr(i)
	print cadena

ну вот работает немного нестабильно

сообщения приходят так

button up.
button down :
8
button up.
button down :9
button up.
button down :10
button u
p.
button down :11
button up.
button down :
12
button up.
button down :13
button up.
button down :14
button u

а должны вот так

button down :15
button up.
button down :16
button up.
button down :17
button up.
button down :18
button up.
button down :19
button up.
button down :20
button up.
button down :21
button up.

без пробелов итд

может кто может чем помочь?

Офлайн

#2 Ноя. 15, 2014 22:15:36

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

pyUSB + AVR

dev.read я так понимаю вернет строку. Тогда цикл по этой строке не нужен.



Офлайн

#3 Ноя. 15, 2014 22:22:32

kazakoff64
Зарегистрирован: 2014-02-13
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

pyUSB + AVR

>>> dev.read
<bound method Device.read of <DEVICE ID 16c0:05df on Bus 002 Address 005>>

Офлайн

#4 Ноя. 15, 2014 22:46:15

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

pyUSB + AVR

надо

data=dev.read(0x81,64,timeout=0)
для разбирательств надо еще код который пересылает данные с контроллера Собственно почему размер блока 64 байта?



Отредактировано doza_and (Ноя. 15, 2014 22:47:20)

Офлайн

#5 Ноя. 16, 2014 09:24:07

kazakoff64
Зарегистрирован: 2014-02-13
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

pyUSB + AVR

Все нормально, поставил размер блока 32 байт, сейчас все как надо.
осталось разобраться как отправлять данные

Отредактировано kazakoff64 (Ноя. 16, 2014 09:33:24)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version