summaryrefslogtreecommitdiff
path: root/AEpy/AELink.py
blob: e75f3fba48ca76d5c52669f86d5fb5d671f53ed1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import binascii
import serial
import struct
import traceback


class AELink:
    def __init__(self):
        return





class AELinkSerial(AELink):
    def __init__(self, path, speed):
        self.ser = serial.Serial(path, speed, timeout=5, rtscts=1)
        assert self.ser.name == path

        AELink.__init__(self)

    def recv(self, rxlen):
        assert self.ser.is_open
        buf = self.ser.read(rxlen)
        #print("Received: " + binascii.hexlify(buf))
        return buf

    def send(self, data):
        assert self.ser.is_open
        #print("Sending: " + binascii.hexlify(data))
        #traceback.print_stack()
        return self.ser.write(data)

    def close(self):
        assert self.ser.is_open
        self.ser.close()