Skip to content

Commit 63951e2

Browse files
committed
drivers: Add micropython.const() wrapper to all const.py files.
1 parent 08ca69b commit 63951e2

3 files changed

Lines changed: 305 additions & 299 deletions

File tree

lib/apds9960/apds9960/const.py

Lines changed: 140 additions & 138 deletions
Original file line numberDiff line numberDiff line change
@@ -1,176 +1,178 @@
1+
from micropython import const
2+
13
# APDS9960 i2c address
2-
APDS9960_I2C_ADDR = 0x39
4+
APDS9960_I2C_ADDR = const(0x39)
35

46
# APDS9960 gesture parameters
5-
APDS9960_GESTURE_THRESHOLD_OUT = 10
6-
APDS9960_GESTURE_SENSITIVITY_1 = 50
7-
APDS9960_GESTURE_SENSITIVITY_2 = 20
7+
APDS9960_GESTURE_THRESHOLD_OUT = const(10)
8+
APDS9960_GESTURE_SENSITIVITY_1 = const(50)
9+
APDS9960_GESTURE_SENSITIVITY_2 = const(20)
810

911
# APDS9960 device IDs
1012
APDS9960_DEV_ID = [0xAB, 0x9C, 0xA8, -0x55]
1113

1214
# APDS9960 times (FIFO pause in milliseconds)
13-
APDS9960_TIME_FIFO_PAUSE = 30
15+
APDS9960_TIME_FIFO_PAUSE = const(30)
1416

1517
# APDS9960 register addresses
16-
APDS9960_REG_ENABLE = 0x80
17-
APDS9960_REG_ATIME = 0x81
18-
APDS9960_REG_WTIME = 0x83
19-
APDS9960_REG_AILTL = 0x84
20-
APDS9960_REG_AILTH = 0x85
21-
APDS9960_REG_AIHTL = 0x86
22-
APDS9960_REG_AIHTH = 0x87
23-
APDS9960_REG_PILT = 0x89
24-
APDS9960_REG_PIHT = 0x8B
25-
APDS9960_REG_PERS = 0x8C
26-
APDS9960_REG_CONFIG1 = 0x8D
27-
APDS9960_REG_PPULSE = 0x8E
28-
APDS9960_REG_CONTROL = 0x8F
29-
APDS9960_REG_CONFIG2 = 0x90
30-
APDS9960_REG_ID = 0x92
31-
APDS9960_REG_STATUS = 0x93
32-
APDS9960_REG_CDATAL = 0x94
33-
APDS9960_REG_CDATAH = 0x95
34-
APDS9960_REG_RDATAL = 0x96
35-
APDS9960_REG_RDATAH = 0x97
36-
APDS9960_REG_GDATAL = 0x98
37-
APDS9960_REG_GDATAH = 0x99
38-
APDS9960_REG_BDATAL = 0x9A
39-
APDS9960_REG_BDATAH = 0x9B
40-
APDS9960_REG_PDATA = 0x9C
41-
APDS9960_REG_POFFSET_UR = 0x9D
42-
APDS9960_REG_POFFSET_DL = 0x9E
43-
APDS9960_REG_CONFIG3 = 0x9F
44-
APDS9960_REG_GPENTH = 0xA0
45-
APDS9960_REG_GEXTH = 0xA1
46-
APDS9960_REG_GCONF1 = 0xA2
47-
APDS9960_REG_GCONF2 = 0xA3
48-
APDS9960_REG_GOFFSET_U = 0xA4
49-
APDS9960_REG_GOFFSET_D = 0xA5
50-
APDS9960_REG_GOFFSET_L = 0xA7
51-
APDS9960_REG_GOFFSET_R = 0xA9
52-
APDS9960_REG_GPULSE = 0xA6
53-
APDS9960_REG_GCONF3 = 0xAA
54-
APDS9960_REG_GCONF4 = 0xAB
55-
APDS9960_REG_GFLVL = 0xAE
56-
APDS9960_REG_GSTATUS = 0xAF
57-
APDS9960_REG_IFORCE = 0xE4
58-
APDS9960_REG_PICLEAR = 0xE5
59-
APDS9960_REG_CICLEAR = 0xE6
60-
APDS9960_REG_AICLEAR = 0xE7
61-
APDS9960_REG_GFIFO_U = 0xFC
62-
APDS9960_REG_GFIFO_D = 0xFD
63-
APDS9960_REG_GFIFO_L = 0xFE
64-
APDS9960_REG_GFIFO_R = 0xFF
18+
APDS9960_REG_ENABLE = const(0x80)
19+
APDS9960_REG_ATIME = const(0x81)
20+
APDS9960_REG_WTIME = const(0x83)
21+
APDS9960_REG_AILTL = const(0x84)
22+
APDS9960_REG_AILTH = const(0x85)
23+
APDS9960_REG_AIHTL = const(0x86)
24+
APDS9960_REG_AIHTH = const(0x87)
25+
APDS9960_REG_PILT = const(0x89)
26+
APDS9960_REG_PIHT = const(0x8B)
27+
APDS9960_REG_PERS = const(0x8C)
28+
APDS9960_REG_CONFIG1 = const(0x8D)
29+
APDS9960_REG_PPULSE = const(0x8E)
30+
APDS9960_REG_CONTROL = const(0x8F)
31+
APDS9960_REG_CONFIG2 = const(0x90)
32+
APDS9960_REG_ID = const(0x92)
33+
APDS9960_REG_STATUS = const(0x93)
34+
APDS9960_REG_CDATAL = const(0x94)
35+
APDS9960_REG_CDATAH = const(0x95)
36+
APDS9960_REG_RDATAL = const(0x96)
37+
APDS9960_REG_RDATAH = const(0x97)
38+
APDS9960_REG_GDATAL = const(0x98)
39+
APDS9960_REG_GDATAH = const(0x99)
40+
APDS9960_REG_BDATAL = const(0x9A)
41+
APDS9960_REG_BDATAH = const(0x9B)
42+
APDS9960_REG_PDATA = const(0x9C)
43+
APDS9960_REG_POFFSET_UR = const(0x9D)
44+
APDS9960_REG_POFFSET_DL = const(0x9E)
45+
APDS9960_REG_CONFIG3 = const(0x9F)
46+
APDS9960_REG_GPENTH = const(0xA0)
47+
APDS9960_REG_GEXTH = const(0xA1)
48+
APDS9960_REG_GCONF1 = const(0xA2)
49+
APDS9960_REG_GCONF2 = const(0xA3)
50+
APDS9960_REG_GOFFSET_U = const(0xA4)
51+
APDS9960_REG_GOFFSET_D = const(0xA5)
52+
APDS9960_REG_GOFFSET_L = const(0xA7)
53+
APDS9960_REG_GOFFSET_R = const(0xA9)
54+
APDS9960_REG_GPULSE = const(0xA6)
55+
APDS9960_REG_GCONF3 = const(0xAA)
56+
APDS9960_REG_GCONF4 = const(0xAB)
57+
APDS9960_REG_GFLVL = const(0xAE)
58+
APDS9960_REG_GSTATUS = const(0xAF)
59+
APDS9960_REG_IFORCE = const(0xE4)
60+
APDS9960_REG_PICLEAR = const(0xE5)
61+
APDS9960_REG_CICLEAR = const(0xE6)
62+
APDS9960_REG_AICLEAR = const(0xE7)
63+
APDS9960_REG_GFIFO_U = const(0xFC)
64+
APDS9960_REG_GFIFO_D = const(0xFD)
65+
APDS9960_REG_GFIFO_L = const(0xFE)
66+
APDS9960_REG_GFIFO_R = const(0xFF)
6567

6668
# APDS9960 bit fields
67-
APDS9960_BIT_PON = 0b00000001
68-
APDS9960_BIT_AEN = 0b00000010
69-
APDS9960_BIT_PEN = 0b00000100
70-
APDS9960_BIT_WEN = 0b00001000
71-
APDS9960_BIT_AIEN = 0b00010000
72-
APDS9960_BIT_PIEN = 0b00100000
73-
APDS9960_BIT_GEN = 0b01000000
74-
APDS9960_BIT_GVALID = 0b00000001
75-
APDS9960_BIT_AVALID = 0b00000001
76-
APDS9960_BIT_PVALID = 0b00000010
77-
APDS9960_BIT_GINT = 0b00000100
78-
APDS9960_BIT_AINT = 0b00010000
79-
APDS9960_BIT_PINT = 0b00100000
80-
APDS9960_BIT_PGSAT = 0b01000000
81-
APDS9960_BIT_CPSAT = 0b10000000
69+
APDS9960_BIT_PON = const(0b00000001)
70+
APDS9960_BIT_AEN = const(0b00000010)
71+
APDS9960_BIT_PEN = const(0b00000100)
72+
APDS9960_BIT_WEN = const(0b00001000)
73+
APDS9960_BIT_AIEN = const(0b00010000)
74+
APDS9960_BIT_PIEN = const(0b00100000)
75+
APDS9960_BIT_GEN = const(0b01000000)
76+
APDS9960_BIT_GVALID = const(0b00000001)
77+
APDS9960_BIT_AVALID = const(0b00000001)
78+
APDS9960_BIT_PVALID = const(0b00000010)
79+
APDS9960_BIT_GINT = const(0b00000100)
80+
APDS9960_BIT_AINT = const(0b00010000)
81+
APDS9960_BIT_PINT = const(0b00100000)
82+
APDS9960_BIT_PGSAT = const(0b01000000)
83+
APDS9960_BIT_CPSAT = const(0b10000000)
8284

8385
# APDS9960 modes
84-
APDS9960_MODE_POWER = 0
85-
APDS9960_MODE_AMBIENT_LIGHT = 1
86-
APDS9960_MODE_PROXIMITY = 2
87-
APDS9960_MODE_WAIT = 3
88-
APDS9960_MODE_AMBIENT_LIGHT_INT = 4
89-
APDS9960_MODE_PROXIMITY_INT = 5
90-
APDS9960_MODE_GESTURE = 6
91-
APDS9960_MODE_ALL = 7
86+
APDS9960_MODE_POWER = const(0)
87+
APDS9960_MODE_AMBIENT_LIGHT = const(1)
88+
APDS9960_MODE_PROXIMITY = const(2)
89+
APDS9960_MODE_WAIT = const(3)
90+
APDS9960_MODE_AMBIENT_LIGHT_INT = const(4)
91+
APDS9960_MODE_PROXIMITY_INT = const(5)
92+
APDS9960_MODE_GESTURE = const(6)
93+
APDS9960_MODE_ALL = const(7)
9294

9395
# LED Drive values
94-
APDS9960_LED_DRIVE_100MA = 0
95-
APDS9960_LED_DRIVE_50MA = 1
96-
APDS9960_LED_DRIVE_25MA = 2
97-
APDS9960_LED_DRIVE_12_5MA = 3
96+
APDS9960_LED_DRIVE_100MA = const(0)
97+
APDS9960_LED_DRIVE_50MA = const(1)
98+
APDS9960_LED_DRIVE_25MA = const(2)
99+
APDS9960_LED_DRIVE_12_5MA = const(3)
98100

99101
# Proximity Gain (PGAIN) values
100-
APDS9960_PGAIN_1X = 0
101-
APDS9960_PGAIN_2X = 1
102-
APDS9960_PGAIN_4X = 2
103-
APDS9960_PGAIN_8X = 3
102+
APDS9960_PGAIN_1X = const(0)
103+
APDS9960_PGAIN_2X = const(1)
104+
APDS9960_PGAIN_4X = const(2)
105+
APDS9960_PGAIN_8X = const(3)
104106

105107
# ALS Gain (AGAIN) values
106-
APDS9960_AGAIN_1X = 0
107-
APDS9960_AGAIN_4X = 1
108-
APDS9960_AGAIN_16X = 2
109-
APDS9960_AGAIN_64X = 3
108+
APDS9960_AGAIN_1X = const(0)
109+
APDS9960_AGAIN_4X = const(1)
110+
APDS9960_AGAIN_16X = const(2)
111+
APDS9960_AGAIN_64X = const(3)
110112

111113
# Gesture Gain (GGAIN) values
112-
APDS9960_GGAIN_1X = 0
113-
APDS9960_GGAIN_2X = 1
114-
APDS9960_GGAIN_4X = 2
115-
APDS9960_GGAIN_8X = 3
114+
APDS9960_GGAIN_1X = const(0)
115+
APDS9960_GGAIN_2X = const(1)
116+
APDS9960_GGAIN_4X = const(2)
117+
APDS9960_GGAIN_8X = const(3)
116118

117119
# LED Boost values
118-
APDS9960_LED_BOOST_100 = 0
119-
APDS9960_LED_BOOST_150 = 1
120-
APDS9960_LED_BOOST_200 = 2
121-
APDS9960_LED_BOOST_300 = 3
120+
APDS9960_LED_BOOST_100 = const(0)
121+
APDS9960_LED_BOOST_150 = const(1)
122+
APDS9960_LED_BOOST_200 = const(2)
123+
APDS9960_LED_BOOST_300 = const(3)
122124

123125
# Gesture wait time values
124-
APDS9960_GWTIME_0MS = 0
125-
APDS9960_GWTIME_2_8MS = 1
126-
APDS9960_GWTIME_5_6MS = 2
127-
APDS9960_GWTIME_8_4MS = 3
128-
APDS9960_GWTIME_14_0MS = 4
129-
APDS9960_GWTIME_22_4MS = 5
130-
APDS9960_GWTIME_30_8MS = 6
131-
APDS9960_GWTIME_39_2MS = 7
126+
APDS9960_GWTIME_0MS = const(0)
127+
APDS9960_GWTIME_2_8MS = const(1)
128+
APDS9960_GWTIME_5_6MS = const(2)
129+
APDS9960_GWTIME_8_4MS = const(3)
130+
APDS9960_GWTIME_14_0MS = const(4)
131+
APDS9960_GWTIME_22_4MS = const(5)
132+
APDS9960_GWTIME_30_8MS = const(6)
133+
APDS9960_GWTIME_39_2MS = const(7)
132134

133135
# Default values
134-
APDS9960_DEFAULT_ATIME = 219 # 103ms
135-
APDS9960_DEFAULT_WTIME = 246 # 27ms
136-
APDS9960_DEFAULT_PROX_PPULSE = 0x87 # 16us, 8 pulses
137-
APDS9960_DEFAULT_GESTURE_PPULSE = 0x89 # 16us, 10 pulses
138-
APDS9960_DEFAULT_POFFSET_UR = 0 # 0 offset
139-
APDS9960_DEFAULT_POFFSET_DL = 0 # 0 offset
140-
APDS9960_DEFAULT_CONFIG1 = 0x60 # No 12x wait (WTIME)
136+
APDS9960_DEFAULT_ATIME = const(219) # 103ms
137+
APDS9960_DEFAULT_WTIME = const(246) # 27ms
138+
APDS9960_DEFAULT_PROX_PPULSE = const(0x87) # 16us, 8 pulses
139+
APDS9960_DEFAULT_GESTURE_PPULSE = const(0x89) # 16us, 10 pulses
140+
APDS9960_DEFAULT_POFFSET_UR = const(0) # 0 offset
141+
APDS9960_DEFAULT_POFFSET_DL = const(0) # 0 offset
142+
APDS9960_DEFAULT_CONFIG1 = const(0x60) # No 12x wait (WTIME)
141143
APDS9960_DEFAULT_LDRIVE = APDS9960_LED_DRIVE_100MA
142144
APDS9960_DEFAULT_PGAIN = APDS9960_PGAIN_4X
143145
APDS9960_DEFAULT_AGAIN = APDS9960_AGAIN_4X
144-
APDS9960_DEFAULT_PILT = 0 # Low proximity threshold
145-
APDS9960_DEFAULT_PIHT = 50 # High proximity threshold
146-
APDS9960_DEFAULT_AILT = 0xFFFF # Force interrupt for calibration
147-
APDS9960_DEFAULT_AIHT = 0
148-
APDS9960_DEFAULT_PERS = 0x11 # 2 consecutive prox or ALS for int.
149-
APDS9960_DEFAULT_CONFIG2 = 0x01 # No saturation interrupts or LED boost
150-
APDS9960_DEFAULT_CONFIG3 = 0 # Enable all photodiodes, no SAI
151-
APDS9960_DEFAULT_GPENTH = 40 # Threshold for entering gesture mode
152-
APDS9960_DEFAULT_GEXTH = 30 # Threshold for exiting gesture mode
153-
APDS9960_DEFAULT_GCONF1 = 0x40 # 4 gesture events for int., 1 for exit
146+
APDS9960_DEFAULT_PILT = const(0) # Low proximity threshold
147+
APDS9960_DEFAULT_PIHT = const(50) # High proximity threshold
148+
APDS9960_DEFAULT_AILT = const(0xFFFF) # Force interrupt for calibration
149+
APDS9960_DEFAULT_AIHT = const(0)
150+
APDS9960_DEFAULT_PERS = const(0x11) # 2 consecutive prox or ALS for int.
151+
APDS9960_DEFAULT_CONFIG2 = const(0x01) # No saturation interrupts or LED boost
152+
APDS9960_DEFAULT_CONFIG3 = const(0) # Enable all photodiodes, no SAI
153+
APDS9960_DEFAULT_GPENTH = const(40) # Threshold for entering gesture mode
154+
APDS9960_DEFAULT_GEXTH = const(30) # Threshold for exiting gesture mode
155+
APDS9960_DEFAULT_GCONF1 = const(0x40) # 4 gesture events for int., 1 for exit
154156
APDS9960_DEFAULT_GGAIN = APDS9960_GGAIN_4X
155157
APDS9960_DEFAULT_GLDRIVE = APDS9960_LED_DRIVE_100MA
156158
APDS9960_DEFAULT_GWTIME = APDS9960_GWTIME_2_8MS
157-
APDS9960_DEFAULT_GOFFSET = 0 # No offset scaling for gesture mode
158-
APDS9960_DEFAULT_GPULSE = 0xC9 # 32us, 10 pulses
159-
APDS9960_DEFAULT_GCONF3 = 0 # All photodiodes active during gesture
160-
APDS9960_DEFAULT_GIEN = 0 # Disable gesture interrupts
159+
APDS9960_DEFAULT_GOFFSET = const(0) # No offset scaling for gesture mode
160+
APDS9960_DEFAULT_GPULSE = const(0xC9) # 32us, 10 pulses
161+
APDS9960_DEFAULT_GCONF3 = const(0) # All photodiodes active during gesture
162+
APDS9960_DEFAULT_GIEN = const(0) # Disable gesture interrupts
161163

162164
# gesture directions
163-
APDS9960_DIR_NONE = 0
164-
APDS9960_DIR_LEFT = 1
165-
APDS9960_DIR_RIGHT = 2
166-
APDS9960_DIR_UP = 3
167-
APDS9960_DIR_DOWN = 4
168-
APDS9960_DIR_NEAR = 5
169-
APDS9960_DIR_FAR = 6
170-
APDS9960_DIR_ALL = 7
165+
APDS9960_DIR_NONE = const(0)
166+
APDS9960_DIR_LEFT = const(1)
167+
APDS9960_DIR_RIGHT = const(2)
168+
APDS9960_DIR_UP = const(3)
169+
APDS9960_DIR_DOWN = const(4)
170+
APDS9960_DIR_NEAR = const(5)
171+
APDS9960_DIR_FAR = const(6)
172+
APDS9960_DIR_ALL = const(7)
171173

172174
# state definitions
173-
APDS9960_STATE_NA = 0
174-
APDS9960_STATE_NEAR = 1
175-
APDS9960_STATE_FAR = 2
176-
APDS9960_STATE_ALL = 3
175+
APDS9960_STATE_NA = const(0)
176+
APDS9960_STATE_NEAR = const(1)
177+
APDS9960_STATE_FAR = const(2)
178+
APDS9960_STATE_ALL = const(3)

0 commit comments

Comments
 (0)