#!/usr/bin/env python
from parport import ParallelPort #"parport" es una libreria en python encontrada en
#[url]http://devpower.blogsite.org/[/url]
import threading #MODIFICADO POR DKCROSS
import pygtk
pygtk.require('2.0')
import gtk
p = ParallelPort(0x378)
entry = gtk.Entry(max=3)
global maintimer
class Paralelo:
def checktemp(self):
self.contar+=128
p.write(self.contar)
def hacer(self, widget, data=None):
self.maintimer = gobject.timeout_add(1000, self.checktemp)
def pulso(self, widget,data=None): <---- AQUI
self.contar+=64
def iniciar():
t=threading.Timer(3.0,self.pulso)
t.start()
def todo(self, widget, data=None):
p.write(255)
def primera(self, widget, data=None):
self.contar+=1
p.write(self.contar)
def apaprimera(self, widget, data=None):
self.contar-=1
p.write(self.contar)
def segundo(self, widget, data=None):
self.contar+=2
p.write(self.contar)
def apasegundo(self, widget, data=None):
self.contar-=2
p.write(self.contar)
def tercero(self, widget, data=None):
p.write(4)
def cuarto(self, widget, data=None):
p.write(8)
def motor1(self, widget, data=None):
self.contar+=64
p.write(self.contar)
def apagarm1(self, widget, data=None):
self.contar-=64
p.write(self.contar)
def motor2(self, widget, data=None):
self.contar+=128
p.write(self.contar)
def apagarm2(self, widget, data=None):
self.contar-=128
p.write(self.contar)
def nada(self, widget, data=None):
p.write(16)
def algunos(self, widget, data=None):
valor = int(entry.get_text())
p.write(valor)
def delete_event(self, widget, event, data=None):
p.write(0)
return gtk.FALSE
def destroy(self, widget, data=None):
p.write(0)
gtk.main_quit()
def __init__(self):
#timeout = gtk.timeout_add(10,timer_cb)
self.contar = 0
self.con = 0
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.set_title("Manejo del Puerto Paralelo By DecAcRoSs")
self.window.connect("delete_event", self.delete_event)
self.window.connect("destroy", self.destroy)
self.window.set_border_width(125)
vbox = gtk.VBox(gtk.TRUE,2)
self.window.add(vbox)
vbox2 = gtk.VBox(gtk.TRUE,2)
self.window.add(vbox2)
#Primera lamp
primeraB = gtk.Button("Primera Lampara")
primeraB.connect("clicked", self.primera, None)
vbox.pack_start(primeraB, gtk.TRUE, gtk.TRUE, 2)
primeraB.show()
aprimeraB = gtk.Button("Apagar Lampara 1")
aprimeraB.connect("clicked", self.apaprimera, None)
vbox.pack_start(aprimeraB, gtk.TRUE, gtk.TRUE, 2)
aprimeraB.show()
#segunda lamp
segundaB = gtk.Button("Segunda Lampara")
segundaB.connect("clicked", self.segundo, None)
vbox.pack_start(segundaB, gtk.TRUE, gtk.TRUE, 2)
segundaB.show()
asegundaB = gtk.Button("Apagar Lampara 2")
asegundaB.connect("clicked", self.apasegundo, None)
vbox.pack_start(asegundaB, gtk.TRUE, gtk.TRUE, 2)
asegundaB.show()
#terceraB = gtk.Button("Tercera Lampara")
#terceraB.connect("clicked", self.tercero, None)
#vbox.pack_start(terceraB, gtk.TRUE, gtk.TRUE, 2)
#terceraB.show()
#cuartaB = gtk.Button("Cuarta Lampara")
#cuartaB.connect("clicked", self.cuarto, None)
#vbox.pack_start(cuartaB, gtk.TRUE, gtk.TRUE, 2)
#cuartaB.show()
#Voladora
image = gtk.Image()
image.set_from_file("voladora.jpg")
image.show()
fmotorB = gtk.Button("Iniciar Voladora")
fmotorB.add(image)
fmotorB.connect("clicked", self.hacer, None)
vbox.pack_start(fmotorB, gtk.TRUE, gtk.TRUE, 2)
#self.maintimer = gobject.timeout_add(1000, self.checktemp)
fmotorB.show()
apam1B = gtk.Button("Apagar Voladora")
apam1B.connect("clicked", self.apagarm1, None)
vbox.pack_start(apam1B, gtk.TRUE, gtk.TRUE, 2)
apam1B.show()
image = gtk.Image()
image.set_from_file("chicago.jpg")
image.show()
lmotorB = gtk.Button("Iniciar Chicago")
lmotorB.add(image)
lmotorB.connect("clicked", self.iniciar, None)
vbox.pack_start(lmotorB, gtk.TRUE, gtk.TRUE, 2)
lmotorB.show()
apam2B = gtk.Button("Apagar Chicago")
apam2B.connect("clicked", self.apagarm2, None)
vbox.pack_start(apam2B, gtk.TRUE, gtk.TRUE, 2)
apam2B.show()
#termina ruedas
#todoB = gtk.Button("Prende todos los LEDs")
#todoB.connect("clicked", self.todo, None)
#vbox.pack_start(todoB, gtk.TRUE, gtk.TRUE, 2)
#todoB.show()
nadaB = gtk.Button("Apaga todos los LEDs")
nadaB.connect("clicked", self.nada, None)
vbox.pack_start(nadaB, gtk.TRUE, gtk.TRUE, 2)
nadaB.show()
vbox.pack_start(entry, gtk.TRUE, gtk.TRUE, 2)
entry.show()
algunosB = gtk.Button("Prende solo algunos LEDs")
algunosB.connect("clicked", self.algunos, None)
vbox.pack_start(algunosB, gtk.TRUE, gtk.TRUE, 2)
algunosB.show()
salirB = gtk.Button("Salir")
salirB.connect("clicked", self.destroy, None)
vbox.pack_start(salirB, gtk.TRUE, gtk.TRUE, 2)
salirB.show()
vbox.show()
self.window.show()
def main(self):
gtk.main()
if __name__ == "__main__":
paralelo = Paralelo()
paralelo.main()