예제 #1
0
import abc
from Sensor import Sensor
import RPi.GPIO as GPIO


class GPIOSensor(Sensor):
    __metaclass__ = abc.ABCMeta

    def __init__(self, frecuencia, pins):
        Sensor.__init__(self, frecuencia)
        self.pins = pins  # ubicacion es un arreglo que contiene el numero de los pines en modo BCM

    def clearSensor(self):
        GPIO.cleanup()

    def getGPIOpins(self):
        return self.ubicacion

    @abc.abstractmethod
    def setGPIOpins(self):
        """ Establece los pines del sensor """
        pass


Sensor.register(GPIOSensor)
	#		print crc

		except:
			print "ERR_RANGE"
			exit(0)
		 
		Humidity = self.bin2dec(HumidityBit)
		Temperature = self.bin2dec(TemperatureBit)
		 
		if int(Humidity) + int(Temperature) - int(self.bin2dec(crc)) == 0:
			print "Humidity:"+ Humidity +"%"
			print "Temperature:"+ Temperature +"C"
		else:
			print "ERR_CRC"

	def bin2dec(self, string_num):
		return str(int(string_num, 2))

	def clearSensor(self):
		GPIO.cleanup()

	def getPosition(self):
		print 'OUT = ', self.OUT
		print self.ubicacion
		
	def getTipo(self):
		print self.tipo
		
Sensor.register(HumidityTemperature)