Loading...
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 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 | # MAX30101 heart rate sensor # Copyright (c) 2017, NXP # SPDX-License-Identifier: Apache-2.0 menuconfig MAX30101 bool "MAX30101 Pulse Oximeter and Heart Rate Sensor" depends on I2C if MAX30101 config MAX30101_SMP_AVE int "Sample averaging" range 0 7 default 0 help To reduce the amount of data throughput, adjacent samples (in each individual channel) can be averaged and decimated on the chip by setting this register. Set to 0 for no averaging. 0 = 1 sample (no averaging) 1 = 2 samples 2 = 4 samples 3 = 8 samples 4 = 16 samples 5 = 32 samples 6 = 32 samples 7 = 32 samples config MAX30101_FIFO_ROLLOVER_EN bool "FIFO rolls on full" help Controls the behavior of the FIFO when the FIFO becomes completely filled with data. If set, the FIFO address rolls over to zero and the FIFO continues to fill with new data. If not set, then the FIFO is not updated until FIFO_DATA is read or the WRITE/READ pointer positions are changed. config MAX30101_FIFO_A_FULL int "FIFO almost full value" range 0 15 default 0 help Set the trigger for the FIFO_A_FULL interrupt choice MAX30101_MODE prompt "Mode control" default MAX30101_MULTI_LED_MODE config MAX30101_HEART_RATE_MODE bool "Heart rate mode" help Set to operate in heart rate only mode. The red LED channel is active. config MAX30101_SPO2_MODE bool "SpO2 mode" help Set to operate in SpO2 mode. The red and IR LED channels are active. config MAX30101_MULTI_LED_MODE bool "Multi-LED mode" help Set to operate in multi-LED mode. The green, red, and/or IR LED channels are active. endchoice config MAX30101_ADC_RGE int "ADC range control" range 0 3 default 2 help Set the ADC's full-scale range. 0 = 7.81 pA/LSB 1 = 15.63 pA/LSB 2 = 31.25 pA/LSB 3 = 62.5 pA/LSB config MAX30101_SR int "ADC sample rate control" range 0 7 default 0 help Set the effective sampling rate with one sample consisting of one pulse/conversion per active LED channel. In SpO2 mode, these means one IR pulse/conversion and one red pulse/conversion per sample period. 0 = 50 Hz 1 = 100 Hz 2 = 200 Hz 3 = 400 Hz 4 = 800 Hz 5 = 1000 Hz 6 = 1600 Hz 7 = 3200 Hz config MAX30101_LED1_PA hex "LED1 (red) pulse amplitude" range 0 0xff default 0xff help Set the pulse amplitude to control the LED1 (red) current. The actual measured LED current for each part can vary significantly due to the trimming methodology. 0x00 = 0.0 mA 0x01 = 0.2 mA 0x02 = 0.4 mA 0x0f = 3.1 mA 0xff = 50.0 mA config MAX30101_LED2_PA hex "LED2 (IR) pulse amplitude" range 0 0xff default 0x33 help Set the pulse amplitude to control the LED2 (IR) current. The actual measured LED current for each part can vary significantly due to the trimming methodology. 0x00 = 0.0 mA 0x01 = 0.2 mA 0x02 = 0.4 mA 0x0f = 3.1 mA 0xff = 50.0 mA config MAX30101_LED3_PA hex "LED2 (green) pulse amplitude" range 0 0xff default 0xff help Set the pulse amplitude to control the LED3 (green) current. The actual measured LED current for each part can vary significantly due to the trimming methodology. 0x00 = 0.0 mA 0x01 = 0.2 mA 0x02 = 0.4 mA 0x0f = 3.1 mA 0xff = 50.0 mA if MAX30101_MULTI_LED_MODE config MAX30101_SLOT1 int "Slot 1" range 0 7 default 3 help Set which LED and pulse amplitude are active in time slot 1. 0: None (disabled) 1: LED1 (red), LED1_PA 2: LED2 (IR), LED2_PA 3: LED3 (green), LED3_PA 4: None (disabled) 5: LED1 (red), PILOT_PA 6: LED2 (IR), PILOT_PA 7: LED3 (green), PILOT_PA config MAX30101_SLOT2 int "Slot 2" range 0 7 default 0 help Set which LED and pulse amplitude are active in time slot 2. 0: None (disabled) 1: LED1 (red), LED1_PA 2: LED2 (IR), LED2_PA 3: LED3 (green), LED3_PA 4: None (disabled) 5: LED1 (red), PILOT_PA 6: LED2 (IR), PILOT_PA 7: LED3 (green), PILOT_PA config MAX30101_SLOT3 int "Slot 3" range 0 7 default 0 help Set which LED and pulse amplitude are active in time slot 3. 0: None (disabled) 1: LED1 (red), LED1_PA 2: LED2 (IR), LED2_PA 3: LED3 (green), LED3_PA 4: None (disabled) 5: LED1 (red), PILOT_PA 6: LED2 (IR), PILOT_PA 7: LED3 (green), PILOT_PA config MAX30101_SLOT4 int "Slot 4" range 0 7 default 0 help Set which LED and pulse amplitude are active in time slot 4. 0: None (disabled) 1: LED1 (red), LED1_PA 2: LED2 (IR), LED2_PA 3: LED3 (green), LED3_PA 4: None (disabled) 5: LED1 (red), PILOT_PA 6: LED2 (IR), PILOT_PA 7: LED3 (green), PILOT_PA endif # MAX30101_MULTI_LED_MODE endif # MAX30101 |