Autor Tema: mi primer proyecto  (Leído 207 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado IngRandall

  • PIC18
  • ****
  • Mensajes: 369
mi primer proyecto
« en: 02 de Septiembre de 2017, 11:35:40 »
Hola, he aqui mi primer proyecto con raspberry y python, estoy usando los 2 puertos seriales, uno por usb, el proyecto final es mas complejo que lo que tengo hasta ahora, pero quiero mostrar mi codigo para que todos lo puedan usar y has mejorar.

tiene 2 seriales, cada uno con su hilo propio y terminan el programa si por cualquiera de los 2 se le manda un *.

Código: [Seleccionar]
import serial
import threading
from time import sleep

ejecutar_programa = True
_nombreCom = '/dev/ttyAMA0'
_nombreComUSB = '/dev/ttyUSB0'

#-----------------------------------------------------------------------------
#-- Este thread se ejecuta infinitamente. Esta todo el rato leyendo datos
#-- del puerto serie y sacandolos por la consola
#-----------------------------------------------------------------------------
def thread_serial_interrupt():
global ejecutar_programa
while (True):
try:
mensajeAenviar = PuertoSerie.read()
if(mensajeAenviar != ""):
print "Puerto" + _nombreCom + " : " + mensajeAenviar

if(mensajeAenviar == '*'):
print "Saliendo del programa"
PuertoSerie.close()
PuertoSerieUSB.close()
ejecutar_programa = False

sleep(0.1)
except:
print "Error al abrir puerto serie, reinicie el dispositivo"
ejecutar_programa = False
break

def thread_serialUSB_interrupt():
global ejecutar_programa
while (True):
try:
mensajeAenviarUSB = PuertoSerieUSB.read()
if(mensajeAenviarUSB != ""):
print "Puerto" + _nombreComUSB + " : " + mensajeAenviarUSB

if(mensajeAenviarUSB == '*'):
print "Saliendo del programa"
PuertoSerieUSB.close()
PuertoSerie.close()
ejecutar_programa = False

sleep(0.1)
except:
print "Error al abrir puerto serie, reinicie el dispositivo"
ejecutar_programa = False
break

try:
PuertoSerie = serial.Serial(_nombreCom, 19200)
PuertoSerie.timeout = 0
print "Serial" + _nombreCom + " creado exitosamente"
except:
print "Error al abrir puerto serie, reinicie el dispositivo"
ejecutar_programa = False

try:
PuertoSerieUSB = serial.Serial(_nombreComUSB, 9600)
PuertoSerieUSB.timeout = 0
print "Serial" + _nombreComUSB + " creado exitosamente"
except:
print "Error al abrir puerto USB, reinicie el dispositivo"
ejecutar_programa = False

ejecutar_programa_thread = True

thread_serial = threading.Thread(target=thread_serial_interrupt)
thread_serial.start()

thread_serialUSB = threading.Thread(target=thread_serialUSB_interrupt)
thread_serialUSB.start()

while ejecutar_programa:
sleep(1)



 

anything