-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathVdetect.cpp
61 lines (53 loc) · 1.58 KB
/
Vdetect.cpp
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
#include "Vdetect.hpp"
enum {
HLVDCON = 0xBF802920,
ON = 15,
SIDL = 13,
VDIR = 11,
BGVST = 10,
IRVST = 9,
HLEVT = 8
};
//=============================================================================
auto Vdetect::
on (bool tf) -> void
{
setbit(HLVDCON, 1<<ON, tf);
}
//=============================================================================
auto Vdetect::
stop_idle (bool tf) -> void
{
setbit(HLVDCON, 1<<SIDL, tf);
}
//=============================================================================
auto Vdetect::
trip_above (bool tf) -> void
{
setbit(HLVDCON, 1<<VDIR, tf);
}
//=============================================================================
auto Vdetect::
bgap_stable () -> bool
{
return anybit(HLVDCON, 1<<BGVST);
}
//=============================================================================
auto Vdetect::
iref_stable () -> bool
{
return anybit(HLVDCON, 1<<IRVST);
}
//=============================================================================
auto Vdetect::
tripped () -> bool
{
return anybit(HLVDCON, 1<<HLEVT);
}
//=============================================================================
auto Vdetect::
limit (HLVDL e) -> void
{
clrbit(HLVDCON, VEXT);
setbit(HLVDCON, e);
}