Форум сайта python.su
5
Здравствуйте.
Вопрос такой: как с помощью питона передавать сигналы по протоколу DMX-512?
Можно написать просто:
import serial ser=serial.Serial('/dev/ttyUSB0',baudrate=250000)
byte=127 ser.write(chr(254)+chr(byte))
Офлайн
857
Paranoia_Agent
но как передать импульс Break, который должен длиться минимум 88 мкс?
help(serial.Serial.sendBreak)
Офлайн
5
Что-то все равно не работает, ошибок нет, но лампочка не реагирует
Код:
import serial def DMXwrite(data): ser.sendBreak(0.0001) pack='' for x in data: pack=pack+chr(254)+chr(x) ser.write(pack) ser=serial.Serial('/dev/ttyUSB0',baudrate=250000) LED=[0b11111111,0b11111111,0b11111111,0b11111111] DMXwrite(LED)
import serial import time def DMXwrite(data): pack='' for x in data: pack=pack+chr(x) ser.sendBreak(0.0001) time.sleep(0.00001) ser.write(pack) return(data) ser=serial.Serial('/dev/ttyUSB0',baudrate=250000,bytesize=8,parity='N',stopbits=2) LED=[0b11111111,0b11111111,0b11111111,0b11111111] DMXwrite(LED)
Отредактировано Paranoia_Agent (Сен. 7, 2014 16:54:16)
Офлайн