-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.py
More file actions
77 lines (59 loc) · 2.27 KB
/
main.py
File metadata and controls
77 lines (59 loc) · 2.27 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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
import serial
import GSVconvert
import GSVcommands
from time import sleep
def getDataRate():
serialConnection.write(GSVcommands.ReadDataRate())
AnswFrame = serialConnection.read(8)
DataRate = GSVconvert.bytesTofloat(AnswFrame[3:7])
return DataRate
def setDataRate(DataRate):
serialConnection.write(GSVcommands.WriteDataRate(DataRate))
AnswFrame = serialConnection.read(4)
print("AnswFrame: ", AnswFrame.hex())
def getUserScale(Channel):
serialConnection.write(GSVcommands.ReadUserScale(Channel))
AnswFrame = serialConnection.read(8)
UserScale = GSVconvert.bytesTofloat(AnswFrame[3:7])
return UserScale
def setUserScale(Channel, UserScale):
serialConnection.write(GSVcommands.WriteUserScale(Channel, UserScale))
AnswFrame = serialConnection.read(4)
print("AnswFrame: ", AnswFrame.hex())
def SetZero(Channel):
serialConnection.write(GSVcommands.SetZero(Channel))
AnswFrame = serialConnection.read(4)
print("AnswFrame: ", AnswFrame.hex())
def getMeasValues():
serialConnection.write(GSVcommands.GetValue())
MeasFrame = serialConnection.read(36)
MeasValues = MeasFrameToMeasValues(MeasFrame)
return MeasValues
def MeasFrameToMeasValues(MeasFrame):
MeasValues = []
for i in range(8):
MeasValues.append(GSVconvert.bytesTofloat(MeasFrame[i*4+3:i*4+7]))
return MeasValues
if __name__ == '__main__':
serialConnection = serial.Serial("COM8", 230400, timeout=1)
serialConnection.isOpen()
serialConnection.write(GSVcommands.StopTransmission())
sleep(0.1)
serialConnection.reset_input_buffer()
print("MeasValues: ", getMeasValues())
sleep(0.1)
SetZero(Channel=1) # SetZero channel 1
sleep(0.1)
print("MeasValues: ", getMeasValues())
sleep(0.1)
SetZero(Channel=0) # SetZero all channels
sleep(0.1)
print("MeasValues: ", getMeasValues())
setUserScale(Channel=2, UserScale=2.0)
print("UserScale - channel 2: ", getUserScale(Channel=2))
setUserScale(Channel=2, UserScale=1.0)
print("UserScale - channel 2: ", getUserScale(Channel=2))
print("DataRate: ", getDataRate())
setDataRate(100)
print("DataRate: ", getDataRate())
serialConnection.close()