def getSamples(sampleQ, offset, count): send(COMMAND_GET_SAMPLES, struct.pack("=BHH", sampleQ, offset, count)) data = receive() if data == None: send(COMMAND_NONE) data = receive() dataNone = receive() assert data != None assert len(dataNone) == 2 print("dataNone=", dataNone, "lenData=", len(data)) # print("len(data)=", len(data)) out = array.array("i", data) # print(out) return out.tolist()
def readCs4272Reg(reg): send(COMMAND_CS4272_READ_REG, struct.pack("=B", reg)) ret = receive() assert ret[0] == COMMAND_CS4272_READ_REG assert ret[1] == reg val = ret[2] print("reg=", reg, "val=", hex(val), bin(val)) return val
def command_none(): command(COMMAND_NONE, "ABCDEF") data = receive() print "len(data)=", len(data) (cmd, value) = struct.unpack('=BI', data) print "cmd=", cmd, "value=", value #assert(cmd==COMMAND_GET_REF) return
def setFreq(freq, level=200): freq = int(freq) # print("level=", level) send(COMMAND_SET_FREQ, struct.pack("=Ii", freq, int(level))) data = receive() assert data[0] == COMMAND_SET_FREQ retFreq = struct.unpack_from("I", data, 1)[0] # print("ret=", retFreq) pass
def setTX(tx): if tx: tx = 1 else: tx = 0 send(COMMAND_SET_TX, struct.pack("=B", tx)) data = receive() assert data[0] == COMMAND_SET_TX assert data[1] == tx pass
def getCalculated(): send(COMMAND_GET_CALCULATED) ret = receive() assert ret[0] == COMMAND_GET_CALCULATED if ret[1] != JOB_CALCULATING_COMPLETE: # print("ret[1]=", ret[1]) return [ret[1]] data = struct.unpack_from("fffffffffH", ret, 2) # print("data=", data) return data
def sendBigData(amin, amax): send(COMMAND_BIG_DATA, struct.pack("HH", amin, amax)) ret = receive() assert ret[0] == COMMAND_BIG_DATA if len(ret) != (1 + (amax - amin) * 2): print("bad size :", ret) bad = False offset = 1 for x in range(amin, amax): data = struct.unpack_from("H", ret, offset)[0] if data != x: bad = True break offset += 2 if bad: print("bad value offset=", offset, ":", ret) else: print("range received ok ", amin, ",", amax, " size=", len(ret)) pass
def sendNone(): send(COMMAND_NONE) ret = receive() print("none receive=", ret) pass
def startSampling(): send(COMMAND_START_SAMPLING_AND_CALCULATE) ret = receive() assert ret[0] == COMMAND_START_SAMPLING_AND_CALCULATE pass
def samplingBufferSize(): send(COMMAND_SAMPLING_BUFFER_SIZE) data = receive() assert data[0] == COMMAND_SAMPLING_BUFFER_SIZE return struct.unpack_from("H", data, 1)[0]
def samplingCompleted(): send(COMMAND_SAMPLING_COMPLETE) data = receive() assert data[0] == COMMAND_SAMPLING_COMPLETE return bool(data[1])