-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathCommunication.py
More file actions
51 lines (45 loc) · 1.29 KB
/
Communication.py
File metadata and controls
51 lines (45 loc) · 1.29 KB
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
import serial.tools.list_ports
import serial
import time
import struct
class serial_communication():
def __init__(self):
self.ser = serial.Serial(
port=None,
baudrate=9600,
parity=serial.PARITY_ODD,
stopbits=serial.STOPBITS_TWO,
bytesize=serial.SEVENBITS
)
return None
def Open(self, com_port):
self.ser = serial.Serial(
port=com_port,
baudrate=115200,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
bytesize=serial.EIGHTBITS,
timeout=0.2
)
return self.ser.isOpen()
def Write(self, data):
if self.ser.isOpen():
self.ser.write(data)
#time.sleep(0.1)
#self.Write_unicode("SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS")
time.sleep(0.01)
return None
def Write_unicode(self, data):
if self.ser.isOpen():
self.ser.write(data.encode())
#time.sleep(0.01)
return None
def Read(self, size):
if self.ser.isOpen():
data = self.ser.read(size)
self.ser.flushInput()
return data
return 999.999
def flushCache(self):
self.ser.flushInput()
self.ser.flushOutput()