OpenHantek
Loading...
Searching...
No Matches
definitions.h
1// SPDX-License-Identifier: GPL-2.0+
2
3#pragma once
4
5#include <QMetaType>
6#include <QString>
7#include <stdint.h>
8
9#define HANTEK_GAIN_STEPS 9
10
11namespace Hantek {
14enum class UsedChannels : uint8_t {
15 USED_CH1,
16 USED_CH2,
17 USED_CH1CH2,
18 USED_NONE,
19
20 // The enabled channels for the DSO-2250.
21 BUSED_CH1 = USED_CH1,
22 BUSED_NONE = USED_CH2,
23 BUSED_CH1CH2 = USED_CH1CH2,
24 BUSED_CH2 = USED_NONE
25};
26
29enum class DTriggerPositionUsed: uint8_t {
30 OFF = 0,
31 ON = 7
32};
33
34#pragma pack(push, 1)
35struct Offset {
36 unsigned short start = 0x0000;
37 unsigned short end = 0xffff;
38};
39
41 Offset step[HANTEK_GAIN_STEPS];
42};
43
46struct FilterBits {
47 uint8_t channel1 : 1;
48 uint8_t channel2 : 1;
49 uint8_t trigger : 1;
50 uint8_t reserved : 5;
51};
52
53
56struct GainBits {
57 uint8_t channel1 : 2;
58 uint8_t channel2 : 2;
59 uint8_t reserved : 4;
60};
61
62
65struct Tsr1Bits {
66 uint8_t triggerSource : 2;
67 uint8_t recordLength : 3;
68 uint8_t samplerateId : 2;
69 uint8_t downsamplingMode : 1;
70};
71
72
75struct Tsr2Bits {
76 uint8_t usedChannels : 2;
77 uint8_t fastRate : 1;
78 uint8_t triggerSlope : 1;
80 uint8_t reserved : 4;
81};
82
83
87 uint8_t triggerSource : 2;
88 uint8_t triggerSlope : 1;
89 uint8_t reserved : 5;
90};
91
92
96 uint8_t triggerPositionUsed : 3;
97 uint8_t recordLength : 3;
98 uint8_t reserved : 2;
99};
100
101
105 uint8_t fastRate : 1;
106 uint8_t downsampling : 1;
107 uint8_t reserved : 4;
108};
109
110
113struct ETsrBits {
114 uint8_t fastRate : 1;
115 uint8_t usedChannels : 2;
116 uint8_t triggerSource : 2;
117 uint8_t triggerSlope : 2;
118 uint8_t triggerPulse : 1;
119};
120
121#pragma pack(pop)
122
123}
Trigger bits for 0x0c command.
Definition definitions.h:86
uint8_t triggerSlope
The trigger slope, see Dso::Slope.
Definition definitions.h:88
uint8_t reserved
Unused bits.
Definition definitions.h:89
uint8_t triggerSource
The trigger source, see Hantek::TriggerSource.
Definition definitions.h:87
Buffer mode bits for 0x0d command.
Definition definitions.h:95
uint8_t triggerPositionUsed
See DTriggerPositionUsed.
Definition definitions.h:96
uint8_t recordLength
See ::RecordLengthId.
Definition definitions.h:97
uint8_t reserved
Unused bits.
Definition definitions.h:98
Samplerate bits for DSO-2250 0x0e command.
Definition definitions.h:104
uint8_t reserved
Unused bits.
Definition definitions.h:107
uint8_t fastRate
false, if one channels uses all buffers
Definition definitions.h:105
uint8_t downsampling
true, if the downsampler is activated
Definition definitions.h:106
Trigger and samplerate bits for DSO-5200/DSO-5200A 0x0e command.
Definition definitions.h:113
uint8_t fastRate
false, if one channels uses all buffers
Definition definitions.h:114
uint8_t usedChannels
Used channels, see Hantek::UsedChannels.
Definition definitions.h:115
uint8_t triggerSlope
The trigger slope, see Dso::Slope.
Definition definitions.h:117
uint8_t triggerSource
The trigger source, see Hantek::TriggerSource.
Definition definitions.h:116
uint8_t triggerPulse
Pulses are causing trigger events.
Definition definitions.h:118
The bits for BULK::SETFILTER.
Definition definitions.h:46
uint8_t reserved
Unused bits.
Definition definitions.h:50
uint8_t channel2
Set to true when channel 2 isn't used.
Definition definitions.h:48
uint8_t channel1
Set to true when channel 1 isn't used.
Definition definitions.h:47
uint8_t trigger
Set to true when trigger isn't used.
Definition definitions.h:49
The gain bits for BulkCode::SETGAIN.
Definition definitions.h:56
uint8_t reserved
Unused bits.
Definition definitions.h:59
uint8_t channel2
Gain for CH1, 0 = 1e* V, 1 = 2e*, 2 = 5e*.
Definition definitions.h:58
uint8_t channel1
Gain for CH1, 0 = 1e* V, 1 = 2e*, 2 = 5e*.
Definition definitions.h:57
Definition definitions.h:35
Definition definitions.h:40
Trigger and samplerate bits (Byte 1).
Definition definitions.h:65
uint8_t downsamplingMode
true, if Downsampler is used
Definition definitions.h:69
uint8_t triggerSource
The trigger source, see Hantek::TriggerSource.
Definition definitions.h:66
uint8_t samplerateId
Samplerate ID when downsampler is disabled.
Definition definitions.h:68
uint8_t recordLength
See ::RecordLengthId.
Definition definitions.h:67
Trigger and samplerate bits (Byte 2).
Definition definitions.h:75
uint8_t triggerSlope
Definition definitions.h:78
uint8_t fastRate
true, if one channels uses all buffers
Definition definitions.h:77
uint8_t usedChannels
Used channels, see Hantek::UsedChannels.
Definition definitions.h:76
uint8_t reserved
when Tsr1Bits.samplerateFast is uneven
Definition definitions.h:80