Exemple #1
0
    def from_raw_to_ports(self,ports='in'):
        if ports == 'in' :
#             print "hago la conversion de raw a ports en read"
#             print self.raw_in_ports
            bin_data = Card.hex_to_bin(self.raw_in_ports)
            # los dos ultimos bits de los 2 bytes no sirven            
            Card.logger_instance.debug("from_raw_to_ports in: bin_data %s %s %s %s  hex_data %s" % (bin_data[0:4],bin_data[4:8],bin_data[8:12],bin_data[12:16],self.raw_in_ports))
            bin_data = bin_data[0:7] + bin_data[8:15]
            for port_id in range(len(self.in_ports)):
                self.in_ports[port_id].set_value(int(bin_data[port_id]))
        else:
            bin_data = Card.hex_to_bin(self.raw_out_ports)
            for port_id in range(len(self.out_ports)):
                self.out_ports[port_id].set_value(int(bin_data[port_id]))