I2C device discovery and printout of known device names
i2cDevices.cpp@0:df49b3ed3502, 2019-01-10 (annotated)
- Committer:
- loopsva
- Date:
- Thu Jan 10 17:44:10 2019 +0000
- Revision:
- 0:df49b3ed3502
General I2C device updates
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
loopsva | 0:df49b3ed3502 | 1 | #include "mbed.h" |
loopsva | 0:df49b3ed3502 | 2 | #include "i2cDevices.h" |
loopsva | 0:df49b3ed3502 | 3 | |
loopsva | 0:df49b3ed3502 | 4 | extern RawSerial pc; |
loopsva | 0:df49b3ed3502 | 5 | |
loopsva | 0:df49b3ed3502 | 6 | //--------------------------------------------------------------------------------------------------------------------------------------// |
loopsva | 0:df49b3ed3502 | 7 | //Constructor |
loopsva | 0:df49b3ed3502 | 8 | |
loopsva | 0:df49b3ed3502 | 9 | i2c_discovery::i2c_discovery(PinName sda, PinName scl, const char* name) : _i2c(sda, scl) { |
loopsva | 0:df49b3ed3502 | 10 | _i2c.frequency(100000); |
loopsva | 0:df49b3ed3502 | 11 | } |
loopsva | 0:df49b3ed3502 | 12 | |
loopsva | 0:df49b3ed3502 | 13 | //--------------------------------------------------------------------------------------------------------------------------------------// |
loopsva | 0:df49b3ed3502 | 14 | //Display detected i2c device name |
loopsva | 0:df49b3ed3502 | 15 | |
loopsva | 0:df49b3ed3502 | 16 | int i2c_discovery::showI2C(i2cDeviceFlags& i2cFlags, char addr) { |
loopsva | 0:df49b3ed3502 | 17 | switch (addr) { |
loopsva | 0:df49b3ed3502 | 18 | #ifdef I2C_0x02 |
loopsva | 0:df49b3ed3502 | 19 | case 0x02: |
loopsva | 0:df49b3ed3502 | 20 | pc.printf("%s\r\n", I2C_0x02); |
loopsva | 0:df49b3ed3502 | 21 | i2cFlags.PCA9955_GGG_ok = true; |
loopsva | 0:df49b3ed3502 | 22 | break; |
loopsva | 0:df49b3ed3502 | 23 | #endif |
loopsva | 0:df49b3ed3502 | 24 | #ifdef I2C_0x04 |
loopsva | 0:df49b3ed3502 | 25 | case 0x04: |
loopsva | 0:df49b3ed3502 | 26 | pc.printf("%s\r\n", I2C_0x04); |
loopsva | 0:df49b3ed3502 | 27 | break; |
loopsva | 0:df49b3ed3502 | 28 | #endif |
loopsva | 0:df49b3ed3502 | 29 | #ifdef I2C_0x06 |
loopsva | 0:df49b3ed3502 | 30 | case 0x06: |
loopsva | 0:df49b3ed3502 | 31 | pc.printf("%s\r\n", I2C_0x06); |
loopsva | 0:df49b3ed3502 | 32 | break; |
loopsva | 0:df49b3ed3502 | 33 | #endif |
loopsva | 0:df49b3ed3502 | 34 | #ifdef I2C_0x08 |
loopsva | 0:df49b3ed3502 | 35 | case 0x08: |
loopsva | 0:df49b3ed3502 | 36 | pc.printf("%s\r\n", I2C_0x08); |
loopsva | 0:df49b3ed3502 | 37 | break; |
loopsva | 0:df49b3ed3502 | 38 | #endif |
loopsva | 0:df49b3ed3502 | 39 | #ifdef I2C_0x0A |
loopsva | 0:df49b3ed3502 | 40 | case 0x0A: |
loopsva | 0:df49b3ed3502 | 41 | pc.printf("%s\r\n", I2C_0x0A); |
loopsva | 0:df49b3ed3502 | 42 | break; |
loopsva | 0:df49b3ed3502 | 43 | #endif |
loopsva | 0:df49b3ed3502 | 44 | #ifdef I2C_0x0C |
loopsva | 0:df49b3ed3502 | 45 | case 0x0C: |
loopsva | 0:df49b3ed3502 | 46 | pc.printf("%s\r\n", I2C_0x0C); |
loopsva | 0:df49b3ed3502 | 47 | break; |
loopsva | 0:df49b3ed3502 | 48 | #endif |
loopsva | 0:df49b3ed3502 | 49 | #ifdef I2C_0x0E |
loopsva | 0:df49b3ed3502 | 50 | case 0x0E: |
loopsva | 0:df49b3ed3502 | 51 | pc.printf("%s\r\n", I2C_0x0E); |
loopsva | 0:df49b3ed3502 | 52 | break; |
loopsva | 0:df49b3ed3502 | 53 | #endif |
loopsva | 0:df49b3ed3502 | 54 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 55 | #ifdef I2C_0x10 |
loopsva | 0:df49b3ed3502 | 56 | case 0x10: |
loopsva | 0:df49b3ed3502 | 57 | pc.printf("%s\r\n", I2C_0x10); |
loopsva | 0:df49b3ed3502 | 58 | break; |
loopsva | 0:df49b3ed3502 | 59 | #endif |
loopsva | 0:df49b3ed3502 | 60 | #ifdef I2C_0x12 |
loopsva | 0:df49b3ed3502 | 61 | case 0x12: |
loopsva | 0:df49b3ed3502 | 62 | pc.printf("%s\r\n", I2C_0x12); |
loopsva | 0:df49b3ed3502 | 63 | break; |
loopsva | 0:df49b3ed3502 | 64 | #endif |
loopsva | 0:df49b3ed3502 | 65 | #ifdef I2C_0x14 |
loopsva | 0:df49b3ed3502 | 66 | case 0x14: |
loopsva | 0:df49b3ed3502 | 67 | pc.printf("%s\r\n", I2C_0x14); |
loopsva | 0:df49b3ed3502 | 68 | break; |
loopsva | 0:df49b3ed3502 | 69 | #endif |
loopsva | 0:df49b3ed3502 | 70 | #ifdef I2C_0x16 |
loopsva | 0:df49b3ed3502 | 71 | case 0x16: |
loopsva | 0:df49b3ed3502 | 72 | pc.printf("%s\r\n", I2C_0x16); |
loopsva | 0:df49b3ed3502 | 73 | break; |
loopsva | 0:df49b3ed3502 | 74 | #endif |
loopsva | 0:df49b3ed3502 | 75 | #ifdef I2C_0x18 |
loopsva | 0:df49b3ed3502 | 76 | case 0x18: |
loopsva | 0:df49b3ed3502 | 77 | pc.printf("%s\r\n", I2C_0x18); |
loopsva | 0:df49b3ed3502 | 78 | break; |
loopsva | 0:df49b3ed3502 | 79 | #endif |
loopsva | 0:df49b3ed3502 | 80 | #ifdef I2C_0x1A |
loopsva | 0:df49b3ed3502 | 81 | case 0x1A: |
loopsva | 0:df49b3ed3502 | 82 | pc.printf("%s\r\n", I2C_0x1A); |
loopsva | 0:df49b3ed3502 | 83 | break; |
loopsva | 0:df49b3ed3502 | 84 | #endif |
loopsva | 0:df49b3ed3502 | 85 | #ifdef I2C_0x1C |
loopsva | 0:df49b3ed3502 | 86 | case 0x1C: |
loopsva | 0:df49b3ed3502 | 87 | pc.printf("%s\r\n", I2C_0x1C); |
loopsva | 0:df49b3ed3502 | 88 | break; |
loopsva | 0:df49b3ed3502 | 89 | #endif |
loopsva | 0:df49b3ed3502 | 90 | #ifdef I2C_0x1E |
loopsva | 0:df49b3ed3502 | 91 | case 0x1E: |
loopsva | 0:df49b3ed3502 | 92 | pc.printf("%s\r\n", I2C_0x1E); |
loopsva | 0:df49b3ed3502 | 93 | break; |
loopsva | 0:df49b3ed3502 | 94 | #endif |
loopsva | 0:df49b3ed3502 | 95 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 96 | #ifdef I2C_0x20 |
loopsva | 0:df49b3ed3502 | 97 | case 0x20: |
loopsva | 0:df49b3ed3502 | 98 | pc.printf("%s\r\n", I2C_0x20); |
loopsva | 0:df49b3ed3502 | 99 | i2cFlags.VEML60xx_ok = true; |
loopsva | 0:df49b3ed3502 | 100 | break; |
loopsva | 0:df49b3ed3502 | 101 | #endif |
loopsva | 0:df49b3ed3502 | 102 | #ifdef I2C_0x22 |
loopsva | 0:df49b3ed3502 | 103 | case 0x22: |
loopsva | 0:df49b3ed3502 | 104 | pc.printf("%s\r\n", I2C_0x22); |
loopsva | 0:df49b3ed3502 | 105 | break; |
loopsva | 0:df49b3ed3502 | 106 | #endif |
loopsva | 0:df49b3ed3502 | 107 | #ifdef I2C_0x24 |
loopsva | 0:df49b3ed3502 | 108 | case 0x24: |
loopsva | 0:df49b3ed3502 | 109 | pc.printf("%s\r\n", I2C_0x24); |
loopsva | 0:df49b3ed3502 | 110 | break; |
loopsva | 0:df49b3ed3502 | 111 | #endif |
loopsva | 0:df49b3ed3502 | 112 | #ifdef I2C_0x26 |
loopsva | 0:df49b3ed3502 | 113 | case 0x26: |
loopsva | 0:df49b3ed3502 | 114 | pc.printf("%s\r\n", I2C_0x26); |
loopsva | 0:df49b3ed3502 | 115 | break; |
loopsva | 0:df49b3ed3502 | 116 | #endif |
loopsva | 0:df49b3ed3502 | 117 | #ifdef I2C_0x28 |
loopsva | 0:df49b3ed3502 | 118 | case 0x28: |
loopsva | 0:df49b3ed3502 | 119 | pc.printf("%s\r\n", I2C_0x28); |
loopsva | 0:df49b3ed3502 | 120 | break; |
loopsva | 0:df49b3ed3502 | 121 | #endif |
loopsva | 0:df49b3ed3502 | 122 | #ifdef I2C_0x2A |
loopsva | 0:df49b3ed3502 | 123 | case 0x2A: |
loopsva | 0:df49b3ed3502 | 124 | pc.printf("%s\r\n", I2C_0x2A); |
loopsva | 0:df49b3ed3502 | 125 | break; |
loopsva | 0:df49b3ed3502 | 126 | #endif |
loopsva | 0:df49b3ed3502 | 127 | #ifdef I2C_0x2C |
loopsva | 0:df49b3ed3502 | 128 | case 0x2C: |
loopsva | 0:df49b3ed3502 | 129 | pc.printf("%s\r\n", I2C_0x2C); |
loopsva | 0:df49b3ed3502 | 130 | break; |
loopsva | 0:df49b3ed3502 | 131 | #endif |
loopsva | 0:df49b3ed3502 | 132 | #ifdef I2C_0x2E |
loopsva | 0:df49b3ed3502 | 133 | case 0x2E: |
loopsva | 0:df49b3ed3502 | 134 | pc.printf("%s\r\n", I2C_0x2E); |
loopsva | 0:df49b3ed3502 | 135 | break; |
loopsva | 0:df49b3ed3502 | 136 | #endif |
loopsva | 0:df49b3ed3502 | 137 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 138 | #ifdef I2C_0x30 |
loopsva | 0:df49b3ed3502 | 139 | case 0x30: |
loopsva | 0:df49b3ed3502 | 140 | pc.printf("%s\r\n", I2C_0x30); |
loopsva | 0:df49b3ed3502 | 141 | break; |
loopsva | 0:df49b3ed3502 | 142 | #endif |
loopsva | 0:df49b3ed3502 | 143 | #ifdef I2C_0x32 |
loopsva | 0:df49b3ed3502 | 144 | case 0x32: |
loopsva | 0:df49b3ed3502 | 145 | pc.printf("%s\r\n", I2C_0x32); |
loopsva | 0:df49b3ed3502 | 146 | break; |
loopsva | 0:df49b3ed3502 | 147 | #endif |
loopsva | 0:df49b3ed3502 | 148 | #ifdef I2C_0x34 |
loopsva | 0:df49b3ed3502 | 149 | case 0x34: |
loopsva | 0:df49b3ed3502 | 150 | pc.printf("%s\r\n", I2C_0x34); |
loopsva | 0:df49b3ed3502 | 151 | break; |
loopsva | 0:df49b3ed3502 | 152 | #endif |
loopsva | 0:df49b3ed3502 | 153 | #ifdef I2C_0x36 |
loopsva | 0:df49b3ed3502 | 154 | case 0x36: |
loopsva | 0:df49b3ed3502 | 155 | pc.printf("%s\r\n", I2C_0x36); |
loopsva | 0:df49b3ed3502 | 156 | break; |
loopsva | 0:df49b3ed3502 | 157 | #endif |
loopsva | 0:df49b3ed3502 | 158 | #ifdef I2C_0x38 |
loopsva | 0:df49b3ed3502 | 159 | case 0x38: |
loopsva | 0:df49b3ed3502 | 160 | pc.printf("%s\r\n", I2C_0x38); |
loopsva | 0:df49b3ed3502 | 161 | i2cFlags.mma8451cs1_ok = true; |
loopsva | 0:df49b3ed3502 | 162 | //fxos8700_ok = true; |
loopsva | 0:df49b3ed3502 | 163 | break; |
loopsva | 0:df49b3ed3502 | 164 | #endif |
loopsva | 0:df49b3ed3502 | 165 | #ifdef I2C_0x3A |
loopsva | 0:df49b3ed3502 | 166 | case 0x3A: |
loopsva | 0:df49b3ed3502 | 167 | pc.printf("%s\r\n", I2C_0x3A); |
loopsva | 0:df49b3ed3502 | 168 | //fxos8700_ok = true; |
loopsva | 0:df49b3ed3502 | 169 | break; |
loopsva | 0:df49b3ed3502 | 170 | #endif |
loopsva | 0:df49b3ed3502 | 171 | #ifdef I2C_0x3C |
loopsva | 0:df49b3ed3502 | 172 | case 0x3C: |
loopsva | 0:df49b3ed3502 | 173 | pc.printf("%s\r\n", I2C_0x3C); |
loopsva | 0:df49b3ed3502 | 174 | //fxos8700_ok = true; |
loopsva | 0:df49b3ed3502 | 175 | break; |
loopsva | 0:df49b3ed3502 | 176 | #endif |
loopsva | 0:df49b3ed3502 | 177 | #ifdef I2C_0x3E |
loopsva | 0:df49b3ed3502 | 178 | case 0x3E: |
loopsva | 0:df49b3ed3502 | 179 | pc.printf("%s\r\n", I2C_0x3E); |
loopsva | 0:df49b3ed3502 | 180 | //fxos8700_ok = true; |
loopsva | 0:df49b3ed3502 | 181 | break; |
loopsva | 0:df49b3ed3502 | 182 | #endif |
loopsva | 0:df49b3ed3502 | 183 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 184 | #ifdef I2C_0x40 |
loopsva | 0:df49b3ed3502 | 185 | case 0x40: |
loopsva | 0:df49b3ed3502 | 186 | pc.printf("%s\r\n", I2C_0x40); |
loopsva | 0:df49b3ed3502 | 187 | break; |
loopsva | 0:df49b3ed3502 | 188 | #endif |
loopsva | 0:df49b3ed3502 | 189 | #ifdef I2C_0x42 |
loopsva | 0:df49b3ed3502 | 190 | case 0x42: |
loopsva | 0:df49b3ed3502 | 191 | pc.printf("%s\r\n", I2C_0x42); |
loopsva | 0:df49b3ed3502 | 192 | break; |
loopsva | 0:df49b3ed3502 | 193 | #endif |
loopsva | 0:df49b3ed3502 | 194 | #ifdef I2C_0x44 |
loopsva | 0:df49b3ed3502 | 195 | case 0x44: |
loopsva | 0:df49b3ed3502 | 196 | pc.printf("%s\r\n", I2C_0x44); |
loopsva | 0:df49b3ed3502 | 197 | break; |
loopsva | 0:df49b3ed3502 | 198 | #endif |
loopsva | 0:df49b3ed3502 | 199 | #ifdef I2C_0x46 |
loopsva | 0:df49b3ed3502 | 200 | case 0x46: |
loopsva | 0:df49b3ed3502 | 201 | pc.printf("%s\r\n", I2C_0x46); |
loopsva | 0:df49b3ed3502 | 202 | break; |
loopsva | 0:df49b3ed3502 | 203 | #endif |
loopsva | 0:df49b3ed3502 | 204 | #ifdef I2C_0x48 |
loopsva | 0:df49b3ed3502 | 205 | case 0x48: |
loopsva | 0:df49b3ed3502 | 206 | pc.printf("%s\r\n", I2C_0x48); |
loopsva | 0:df49b3ed3502 | 207 | break; |
loopsva | 0:df49b3ed3502 | 208 | #endif |
loopsva | 0:df49b3ed3502 | 209 | #ifdef I2C_0x4A |
loopsva | 0:df49b3ed3502 | 210 | case 0x4A: |
loopsva | 0:df49b3ed3502 | 211 | pc.printf("%s\r\n", I2C_0x4A); |
loopsva | 0:df49b3ed3502 | 212 | break; |
loopsva | 0:df49b3ed3502 | 213 | #endif |
loopsva | 0:df49b3ed3502 | 214 | #ifdef I2C_0x4C |
loopsva | 0:df49b3ed3502 | 215 | case 0x4C: |
loopsva | 0:df49b3ed3502 | 216 | pc.printf("%s\r\n", I2C_0x4C); |
loopsva | 0:df49b3ed3502 | 217 | break; |
loopsva | 0:df49b3ed3502 | 218 | #endif |
loopsva | 0:df49b3ed3502 | 219 | #ifdef I2C_0x4E |
loopsva | 0:df49b3ed3502 | 220 | case 0x4E: |
loopsva | 0:df49b3ed3502 | 221 | pc.printf("%s\r\n", I2C_0x4E); |
loopsva | 0:df49b3ed3502 | 222 | break; |
loopsva | 0:df49b3ed3502 | 223 | #endif |
loopsva | 0:df49b3ed3502 | 224 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 225 | #ifdef I2C_0x50 |
loopsva | 0:df49b3ed3502 | 226 | case 0x50: |
loopsva | 0:df49b3ed3502 | 227 | pc.printf("%s\r\n", I2C_0x50); |
loopsva | 0:df49b3ed3502 | 228 | break; |
loopsva | 0:df49b3ed3502 | 229 | #endif |
loopsva | 0:df49b3ed3502 | 230 | #ifdef I2C_0x52 |
loopsva | 0:df49b3ed3502 | 231 | case 0x52: |
loopsva | 0:df49b3ed3502 | 232 | pc.printf("%s\r\n", I2C_0x52); |
loopsva | 0:df49b3ed3502 | 233 | break; |
loopsva | 0:df49b3ed3502 | 234 | #endif |
loopsva | 0:df49b3ed3502 | 235 | #ifdef I2C_0x54 |
loopsva | 0:df49b3ed3502 | 236 | case 0x54: |
loopsva | 0:df49b3ed3502 | 237 | pc.printf("%s\r\n", I2C_0x54); |
loopsva | 0:df49b3ed3502 | 238 | break; |
loopsva | 0:df49b3ed3502 | 239 | #endif |
loopsva | 0:df49b3ed3502 | 240 | #ifdef I2C_0x56 |
loopsva | 0:df49b3ed3502 | 241 | case 0x56: |
loopsva | 0:df49b3ed3502 | 242 | pc.printf("%s\r\n", I2C_0x56); |
loopsva | 0:df49b3ed3502 | 243 | break; |
loopsva | 0:df49b3ed3502 | 244 | #endif |
loopsva | 0:df49b3ed3502 | 245 | #ifdef I2C_0x58 |
loopsva | 0:df49b3ed3502 | 246 | case 0x58: |
loopsva | 0:df49b3ed3502 | 247 | pc.printf("%s\r\n", I2C_0x58); |
loopsva | 0:df49b3ed3502 | 248 | break; |
loopsva | 0:df49b3ed3502 | 249 | #endif |
loopsva | 0:df49b3ed3502 | 250 | #ifdef I2C_0x5A |
loopsva | 0:df49b3ed3502 | 251 | case 0x5A: |
loopsva | 0:df49b3ed3502 | 252 | pc.printf("%s\r\n", I2C_0x5A); |
loopsva | 0:df49b3ed3502 | 253 | break; |
loopsva | 0:df49b3ed3502 | 254 | #endif |
loopsva | 0:df49b3ed3502 | 255 | #ifdef I2C_0x5C |
loopsva | 0:df49b3ed3502 | 256 | case 0x5C: |
loopsva | 0:df49b3ed3502 | 257 | pc.printf("%s\r\n", I2C_0x5C); |
loopsva | 0:df49b3ed3502 | 258 | break; |
loopsva | 0:df49b3ed3502 | 259 | #endif |
loopsva | 0:df49b3ed3502 | 260 | #ifdef I2C_0x5E |
loopsva | 0:df49b3ed3502 | 261 | case 0x5E: |
loopsva | 0:df49b3ed3502 | 262 | pc.printf("%s\r\n", I2C_0x5E); |
loopsva | 0:df49b3ed3502 | 263 | break; |
loopsva | 0:df49b3ed3502 | 264 | #endif |
loopsva | 0:df49b3ed3502 | 265 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 266 | #ifdef I2C_0x60 |
loopsva | 0:df49b3ed3502 | 267 | case 0x60: |
loopsva | 0:df49b3ed3502 | 268 | pc.printf("%s\r\n", I2C_0x60); |
loopsva | 0:df49b3ed3502 | 269 | break; |
loopsva | 0:df49b3ed3502 | 270 | #endif |
loopsva | 0:df49b3ed3502 | 271 | #ifdef I2C_0x62 |
loopsva | 0:df49b3ed3502 | 272 | case 0x62: |
loopsva | 0:df49b3ed3502 | 273 | pc.printf("%s\r\n", I2C_0x62); |
loopsva | 0:df49b3ed3502 | 274 | break; |
loopsva | 0:df49b3ed3502 | 275 | #endif |
loopsva | 0:df49b3ed3502 | 276 | #ifdef I2C_0x64 |
loopsva | 0:df49b3ed3502 | 277 | case 0x64: |
loopsva | 0:df49b3ed3502 | 278 | pc.printf("%s\r\n", I2C_0x64); |
loopsva | 0:df49b3ed3502 | 279 | break; |
loopsva | 0:df49b3ed3502 | 280 | #endif |
loopsva | 0:df49b3ed3502 | 281 | #ifdef I2C_0x66 |
loopsva | 0:df49b3ed3502 | 282 | case 0x66: |
loopsva | 0:df49b3ed3502 | 283 | pc.printf("%s\r\n", I2C_0x66); |
loopsva | 0:df49b3ed3502 | 284 | break; |
loopsva | 0:df49b3ed3502 | 285 | #endif |
loopsva | 0:df49b3ed3502 | 286 | #ifdef I2C_0x68 |
loopsva | 0:df49b3ed3502 | 287 | case 0x68: |
loopsva | 0:df49b3ed3502 | 288 | pc.printf("%s\r\n", I2C_0x68); |
loopsva | 0:df49b3ed3502 | 289 | break; |
loopsva | 0:df49b3ed3502 | 290 | #endif |
loopsva | 0:df49b3ed3502 | 291 | #ifdef I2C_0x6A |
loopsva | 0:df49b3ed3502 | 292 | case 0x6A: |
loopsva | 0:df49b3ed3502 | 293 | pc.printf("%s\r\n", I2C_0x6A); |
loopsva | 0:df49b3ed3502 | 294 | break; |
loopsva | 0:df49b3ed3502 | 295 | #endif |
loopsva | 0:df49b3ed3502 | 296 | #ifdef I2C_0x6C |
loopsva | 0:df49b3ed3502 | 297 | case 0x6C: |
loopsva | 0:df49b3ed3502 | 298 | pc.printf("%s\r\n", I2C_0x6C); |
loopsva | 0:df49b3ed3502 | 299 | break; |
loopsva | 0:df49b3ed3502 | 300 | #endif |
loopsva | 0:df49b3ed3502 | 301 | #ifdef I2C_0x6E |
loopsva | 0:df49b3ed3502 | 302 | case 0x6E: |
loopsva | 0:df49b3ed3502 | 303 | pc.printf("%s\r\n", I2C_0x6E); |
loopsva | 0:df49b3ed3502 | 304 | break; |
loopsva | 0:df49b3ed3502 | 305 | #endif |
loopsva | 0:df49b3ed3502 | 306 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 307 | #ifdef I2C_0x70 |
loopsva | 0:df49b3ed3502 | 308 | case 0x70: |
loopsva | 0:df49b3ed3502 | 309 | pc.printf("%s\r\n", I2C_0x70); |
loopsva | 0:df49b3ed3502 | 310 | i2cFlags.VEML6070_ok = true; |
loopsva | 0:df49b3ed3502 | 311 | break; |
loopsva | 0:df49b3ed3502 | 312 | #endif |
loopsva | 0:df49b3ed3502 | 313 | #ifdef I2C_0x72 |
loopsva | 0:df49b3ed3502 | 314 | case 0x72: |
loopsva | 0:df49b3ed3502 | 315 | pc.printf("%s\r\n", I2C_0x72); |
loopsva | 0:df49b3ed3502 | 316 | break; |
loopsva | 0:df49b3ed3502 | 317 | #endif |
loopsva | 0:df49b3ed3502 | 318 | #ifdef I2C_0x74 |
loopsva | 0:df49b3ed3502 | 319 | case 0x74: |
loopsva | 0:df49b3ed3502 | 320 | pc.printf("%s\r\n", I2C_0x74); |
loopsva | 0:df49b3ed3502 | 321 | break; |
loopsva | 0:df49b3ed3502 | 322 | #endif |
loopsva | 0:df49b3ed3502 | 323 | #ifdef I2C_0x76 |
loopsva | 0:df49b3ed3502 | 324 | case 0x76: |
loopsva | 0:df49b3ed3502 | 325 | pc.printf("%s\r\n", I2C_0x76); |
loopsva | 0:df49b3ed3502 | 326 | break; |
loopsva | 0:df49b3ed3502 | 327 | #endif |
loopsva | 0:df49b3ed3502 | 328 | #ifdef I2C_0x78 |
loopsva | 0:df49b3ed3502 | 329 | case 0x78: |
loopsva | 0:df49b3ed3502 | 330 | pc.printf("%s\r\n", I2C_0x78); |
loopsva | 0:df49b3ed3502 | 331 | break; |
loopsva | 0:df49b3ed3502 | 332 | #endif |
loopsva | 0:df49b3ed3502 | 333 | #ifdef I2C_0x7A |
loopsva | 0:df49b3ed3502 | 334 | case 0x7A: |
loopsva | 0:df49b3ed3502 | 335 | pc.printf("%s\r\n", I2C_0x7A); |
loopsva | 0:df49b3ed3502 | 336 | break; |
loopsva | 0:df49b3ed3502 | 337 | #endif |
loopsva | 0:df49b3ed3502 | 338 | #ifdef I2C_0x7C |
loopsva | 0:df49b3ed3502 | 339 | case 0x7C: |
loopsva | 0:df49b3ed3502 | 340 | pc.printf("%s\r\n", I2C_0x7C); |
loopsva | 0:df49b3ed3502 | 341 | break; |
loopsva | 0:df49b3ed3502 | 342 | #endif |
loopsva | 0:df49b3ed3502 | 343 | #ifdef I2C_0x7E |
loopsva | 0:df49b3ed3502 | 344 | case 0x7E: |
loopsva | 0:df49b3ed3502 | 345 | pc.printf("%s\r\n", I2C_0x7E); |
loopsva | 0:df49b3ed3502 | 346 | break; |
loopsva | 0:df49b3ed3502 | 347 | #endif |
loopsva | 0:df49b3ed3502 | 348 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 349 | #ifdef I2C_0x80 |
loopsva | 0:df49b3ed3502 | 350 | case 0x80: |
loopsva | 0:df49b3ed3502 | 351 | pc.printf("%s\r\n", I2C_0x80); |
loopsva | 0:df49b3ed3502 | 352 | i2cFlags.HTU21D_ok = true; |
loopsva | 0:df49b3ed3502 | 353 | i2cFlags.INA219_MAX7300_gg_ok = true; |
loopsva | 0:df49b3ed3502 | 354 | i2cFlags.INA230_MAX7300_gg_ok = true; |
loopsva | 0:df49b3ed3502 | 355 | break; |
loopsva | 0:df49b3ed3502 | 356 | #endif |
loopsva | 0:df49b3ed3502 | 357 | #ifdef I2C_0x82 |
loopsva | 0:df49b3ed3502 | 358 | case 0x82: |
loopsva | 0:df49b3ed3502 | 359 | pc.printf("%s\r\n", I2C_0x82); |
loopsva | 0:df49b3ed3502 | 360 | break; |
loopsva | 0:df49b3ed3502 | 361 | #endif |
loopsva | 0:df49b3ed3502 | 362 | #ifdef I2C_0x84 |
loopsva | 0:df49b3ed3502 | 363 | case 0x84: |
loopsva | 0:df49b3ed3502 | 364 | pc.printf("%s\r\n", I2C_0x84); |
loopsva | 0:df49b3ed3502 | 365 | break; |
loopsva | 0:df49b3ed3502 | 366 | #endif |
loopsva | 0:df49b3ed3502 | 367 | #ifdef I2C_0x86 |
loopsva | 0:df49b3ed3502 | 368 | case 0x86: |
loopsva | 0:df49b3ed3502 | 369 | pc.printf("%s\r\n", I2C_0x86); |
loopsva | 0:df49b3ed3502 | 370 | break; |
loopsva | 0:df49b3ed3502 | 371 | #endif |
loopsva | 0:df49b3ed3502 | 372 | #ifdef I2C_0x88 |
loopsva | 0:df49b3ed3502 | 373 | case 0x88: |
loopsva | 0:df49b3ed3502 | 374 | pc.printf("%s\r\n", I2C_0x88); |
loopsva | 0:df49b3ed3502 | 375 | break; |
loopsva | 0:df49b3ed3502 | 376 | #endif |
loopsva | 0:df49b3ed3502 | 377 | #ifdef I2C_0x8A |
loopsva | 0:df49b3ed3502 | 378 | case 0x8A: |
loopsva | 0:df49b3ed3502 | 379 | pc.printf("%s\r\n", I2C_0x8A); |
loopsva | 0:df49b3ed3502 | 380 | break; |
loopsva | 0:df49b3ed3502 | 381 | #endif |
loopsva | 0:df49b3ed3502 | 382 | #ifdef I2C_0x8C |
loopsva | 0:df49b3ed3502 | 383 | case 0x8C: |
loopsva | 0:df49b3ed3502 | 384 | pc.printf("%s\r\n", I2C_0x8C); |
loopsva | 0:df49b3ed3502 | 385 | break; |
loopsva | 0:df49b3ed3502 | 386 | #endif |
loopsva | 0:df49b3ed3502 | 387 | #ifdef I2C_0x8E |
loopsva | 0:df49b3ed3502 | 388 | case 0x8E: |
loopsva | 0:df49b3ed3502 | 389 | pc.printf("%s\r\n", I2C_0x8E); |
loopsva | 0:df49b3ed3502 | 390 | break; |
loopsva | 0:df49b3ed3502 | 391 | #endif |
loopsva | 0:df49b3ed3502 | 392 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 393 | #ifdef I2C_0x90 |
loopsva | 0:df49b3ed3502 | 394 | case 0x90: |
loopsva | 0:df49b3ed3502 | 395 | pc.printf("%s\r\n", I2C_0x90); |
loopsva | 0:df49b3ed3502 | 396 | break; |
loopsva | 0:df49b3ed3502 | 397 | #endif |
loopsva | 0:df49b3ed3502 | 398 | #ifdef I2C_0x92 |
loopsva | 0:df49b3ed3502 | 399 | case 0x92: |
loopsva | 0:df49b3ed3502 | 400 | pc.printf("%s\r\n", I2C_0x92); |
loopsva | 0:df49b3ed3502 | 401 | break; |
loopsva | 0:df49b3ed3502 | 402 | #endif |
loopsva | 0:df49b3ed3502 | 403 | #ifdef I2C_0x94 |
loopsva | 0:df49b3ed3502 | 404 | case 0x94: |
loopsva | 0:df49b3ed3502 | 405 | pc.printf("%s\r\n", I2C_0x94); |
loopsva | 0:df49b3ed3502 | 406 | break; |
loopsva | 0:df49b3ed3502 | 407 | #endif |
loopsva | 0:df49b3ed3502 | 408 | #ifdef I2C_0x96 |
loopsva | 0:df49b3ed3502 | 409 | case 0x96: |
loopsva | 0:df49b3ed3502 | 410 | pc.printf("%s\r\n", I2C_0x96); |
loopsva | 0:df49b3ed3502 | 411 | break; |
loopsva | 0:df49b3ed3502 | 412 | #endif |
loopsva | 0:df49b3ed3502 | 413 | #ifdef I2C_0x98 |
loopsva | 0:df49b3ed3502 | 414 | case 0x98: |
loopsva | 0:df49b3ed3502 | 415 | pc.printf("%s\r\n", I2C_0x98); |
loopsva | 0:df49b3ed3502 | 416 | break; |
loopsva | 0:df49b3ed3502 | 417 | #endif |
loopsva | 0:df49b3ed3502 | 418 | #ifdef I2C_0x9A |
loopsva | 0:df49b3ed3502 | 419 | case 0x9A: |
loopsva | 0:df49b3ed3502 | 420 | pc.printf("%s\r\n", I2C_0x9A); |
loopsva | 0:df49b3ed3502 | 421 | break; |
loopsva | 0:df49b3ed3502 | 422 | #endif |
loopsva | 0:df49b3ed3502 | 423 | #ifdef I2C_0x9C |
loopsva | 0:df49b3ed3502 | 424 | case 0x9C: |
loopsva | 0:df49b3ed3502 | 425 | pc.printf("%s\r\n", I2C_0x9C); |
loopsva | 0:df49b3ed3502 | 426 | break; |
loopsva | 0:df49b3ed3502 | 427 | #endif |
loopsva | 0:df49b3ed3502 | 428 | #ifdef I2C_0x9E |
loopsva | 0:df49b3ed3502 | 429 | case 0x9E: |
loopsva | 0:df49b3ed3502 | 430 | pc.printf("%s\r\n", I2C_0x9E); |
loopsva | 0:df49b3ed3502 | 431 | break; |
loopsva | 0:df49b3ed3502 | 432 | #endif |
loopsva | 0:df49b3ed3502 | 433 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 434 | #ifdef I2C_0xA0 |
loopsva | 0:df49b3ed3502 | 435 | case 0xA0: |
loopsva | 0:df49b3ed3502 | 436 | pc.printf("%s\r\n", I2C_0xA0); |
loopsva | 0:df49b3ed3502 | 437 | i2cFlags.eeprom000_ok = true; |
loopsva | 0:df49b3ed3502 | 438 | break; |
loopsva | 0:df49b3ed3502 | 439 | #endif |
loopsva | 0:df49b3ed3502 | 440 | #ifdef I2C_0xA2 |
loopsva | 0:df49b3ed3502 | 441 | case 0xA2: |
loopsva | 0:df49b3ed3502 | 442 | pc.printf("%s\r\n", I2C_0xA2); |
loopsva | 0:df49b3ed3502 | 443 | break; |
loopsva | 0:df49b3ed3502 | 444 | #endif |
loopsva | 0:df49b3ed3502 | 445 | #ifdef I2C_0xA4 |
loopsva | 0:df49b3ed3502 | 446 | case 0xA4: |
loopsva | 0:df49b3ed3502 | 447 | pc.printf("%s\r\n", I2C_0xA4); |
loopsva | 0:df49b3ed3502 | 448 | break; |
loopsva | 0:df49b3ed3502 | 449 | #endif |
loopsva | 0:df49b3ed3502 | 450 | #ifdef I2C_0xA6 |
loopsva | 0:df49b3ed3502 | 451 | case 0xA6: |
loopsva | 0:df49b3ed3502 | 452 | pc.printf("%s\r\n", I2C_0xA6); |
loopsva | 0:df49b3ed3502 | 453 | break; |
loopsva | 0:df49b3ed3502 | 454 | #endif |
loopsva | 0:df49b3ed3502 | 455 | #ifdef I2C_0xA8 |
loopsva | 0:df49b3ed3502 | 456 | case 0xA8: |
loopsva | 0:df49b3ed3502 | 457 | pc.printf("%s\r\n", I2C_0xA8); |
loopsva | 0:df49b3ed3502 | 458 | break; |
loopsva | 0:df49b3ed3502 | 459 | #endif |
loopsva | 0:df49b3ed3502 | 460 | #ifdef I2C_0xAA |
loopsva | 0:df49b3ed3502 | 461 | case 0xAA: |
loopsva | 0:df49b3ed3502 | 462 | pc.printf("%s\r\n", I2C_0xAA); |
loopsva | 0:df49b3ed3502 | 463 | i2cFlags.bq27210_ok = true; |
loopsva | 0:df49b3ed3502 | 464 | break; |
loopsva | 0:df49b3ed3502 | 465 | #endif |
loopsva | 0:df49b3ed3502 | 466 | #ifdef I2C_0xAC |
loopsva | 0:df49b3ed3502 | 467 | case 0xAC: |
loopsva | 0:df49b3ed3502 | 468 | pc.printf("%s\r\n", I2C_0xAC); |
loopsva | 0:df49b3ed3502 | 469 | break; |
loopsva | 0:df49b3ed3502 | 470 | #endif |
loopsva | 0:df49b3ed3502 | 471 | #ifdef I2C_0xAE |
loopsva | 0:df49b3ed3502 | 472 | case 0xAE: |
loopsva | 0:df49b3ed3502 | 473 | pc.printf("%s\r\n", I2C_0xAE); |
loopsva | 0:df49b3ed3502 | 474 | break; |
loopsva | 0:df49b3ed3502 | 475 | #endif |
loopsva | 0:df49b3ed3502 | 476 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 477 | #ifdef I2C_0xB0 |
loopsva | 0:df49b3ed3502 | 478 | case 0xB0: |
loopsva | 0:df49b3ed3502 | 479 | pc.printf("%s\r\n", I2C_0xB0); |
loopsva | 0:df49b3ed3502 | 480 | break; |
loopsva | 0:df49b3ed3502 | 481 | #endif |
loopsva | 0:df49b3ed3502 | 482 | #ifdef I2C_0xB2 |
loopsva | 0:df49b3ed3502 | 483 | case 0xB2: |
loopsva | 0:df49b3ed3502 | 484 | pc.printf("%s\r\n", I2C_0xB2); |
loopsva | 0:df49b3ed3502 | 485 | break; |
loopsva | 0:df49b3ed3502 | 486 | #endif |
loopsva | 0:df49b3ed3502 | 487 | #ifdef I2C_0xB4 |
loopsva | 0:df49b3ed3502 | 488 | case 0xB4: |
loopsva | 0:df49b3ed3502 | 489 | pc.printf("%s\r\n", I2C_0xB4); |
loopsva | 0:df49b3ed3502 | 490 | i2cFlags.ccs811_0_ok = true; |
loopsva | 0:df49b3ed3502 | 491 | break; |
loopsva | 0:df49b3ed3502 | 492 | #endif |
loopsva | 0:df49b3ed3502 | 493 | #ifdef I2C_0xB6 |
loopsva | 0:df49b3ed3502 | 494 | case 0xB6: |
loopsva | 0:df49b3ed3502 | 495 | pc.printf("%s\r\n", I2C_0xB6); |
loopsva | 0:df49b3ed3502 | 496 | i2cFlags.ccs811_1_ok = true; |
loopsva | 0:df49b3ed3502 | 497 | break; |
loopsva | 0:df49b3ed3502 | 498 | #endif |
loopsva | 0:df49b3ed3502 | 499 | #ifdef I2C_0xB8 |
loopsva | 0:df49b3ed3502 | 500 | case 0xB8: |
loopsva | 0:df49b3ed3502 | 501 | pc.printf("%s\r\n", I2C_0xB8); |
loopsva | 0:df49b3ed3502 | 502 | break; |
loopsva | 0:df49b3ed3502 | 503 | #endif |
loopsva | 0:df49b3ed3502 | 504 | #ifdef I2C_0xBA |
loopsva | 0:df49b3ed3502 | 505 | case 0xBA: |
loopsva | 0:df49b3ed3502 | 506 | pc.printf("%s\r\n", I2C_0xBA); |
loopsva | 0:df49b3ed3502 | 507 | break; |
loopsva | 0:df49b3ed3502 | 508 | #endif |
loopsva | 0:df49b3ed3502 | 509 | #ifdef I2C_0xBC |
loopsva | 0:df49b3ed3502 | 510 | case 0xBC: |
loopsva | 0:df49b3ed3502 | 511 | pc.printf("%s\r\n", I2C_0xBC); |
loopsva | 0:df49b3ed3502 | 512 | break; |
loopsva | 0:df49b3ed3502 | 513 | #endif |
loopsva | 0:df49b3ed3502 | 514 | #ifdef I2C_0xBE |
loopsva | 0:df49b3ed3502 | 515 | case 0xBE: |
loopsva | 0:df49b3ed3502 | 516 | pc.printf("%s\r\n", I2C_0xBE); |
loopsva | 0:df49b3ed3502 | 517 | break; |
loopsva | 0:df49b3ed3502 | 518 | #endif |
loopsva | 0:df49b3ed3502 | 519 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 520 | #ifdef I2C_0xC0 |
loopsva | 0:df49b3ed3502 | 521 | case 0xC0: |
loopsva | 0:df49b3ed3502 | 522 | pc.printf("%s\r\n", I2C_0xC0); |
loopsva | 0:df49b3ed3502 | 523 | i2cFlags.mlx90620_ok = true; |
loopsva | 0:df49b3ed3502 | 524 | //i2cFlags.PCA9955_GGG_ok = true; |
loopsva | 0:df49b3ed3502 | 525 | break; |
loopsva | 0:df49b3ed3502 | 526 | #endif |
loopsva | 0:df49b3ed3502 | 527 | #ifdef I2C_0xC2 |
loopsva | 0:df49b3ed3502 | 528 | case 0xC2: |
loopsva | 0:df49b3ed3502 | 529 | pc.printf("%s\r\n", I2C_0xC2); |
loopsva | 0:df49b3ed3502 | 530 | i2cFlags.SCD30_ok = true; |
loopsva | 0:df49b3ed3502 | 531 | break; |
loopsva | 0:df49b3ed3502 | 532 | #endif |
loopsva | 0:df49b3ed3502 | 533 | #ifdef I2C_0xC4 |
loopsva | 0:df49b3ed3502 | 534 | case 0xC4: |
loopsva | 0:df49b3ed3502 | 535 | pc.printf("%s\r\n", I2C_0xC4); |
loopsva | 0:df49b3ed3502 | 536 | break; |
loopsva | 0:df49b3ed3502 | 537 | #endif |
loopsva | 0:df49b3ed3502 | 538 | #ifdef I2C_0xC6 |
loopsva | 0:df49b3ed3502 | 539 | case 0xC6: |
loopsva | 0:df49b3ed3502 | 540 | pc.printf("%s\r\n", I2C_0xC6); |
loopsva | 0:df49b3ed3502 | 541 | break; |
loopsva | 0:df49b3ed3502 | 542 | #endif |
loopsva | 0:df49b3ed3502 | 543 | #ifdef I2C_0xC8 |
loopsva | 0:df49b3ed3502 | 544 | case 0xC8: |
loopsva | 0:df49b3ed3502 | 545 | pc.printf("%s\r\n", I2C_0xC8); |
loopsva | 0:df49b3ed3502 | 546 | break; |
loopsva | 0:df49b3ed3502 | 547 | #endif |
loopsva | 0:df49b3ed3502 | 548 | #ifdef I2C_0xCA |
loopsva | 0:df49b3ed3502 | 549 | case 0xCA: |
loopsva | 0:df49b3ed3502 | 550 | pc.printf("%s\r\n", I2C_0xCA); |
loopsva | 0:df49b3ed3502 | 551 | break; |
loopsva | 0:df49b3ed3502 | 552 | #endif |
loopsva | 0:df49b3ed3502 | 553 | #ifdef I2C_0xCC |
loopsva | 0:df49b3ed3502 | 554 | case 0xCC: |
loopsva | 0:df49b3ed3502 | 555 | pc.printf("%s\r\n", I2C_0xCC); |
loopsva | 0:df49b3ed3502 | 556 | break; |
loopsva | 0:df49b3ed3502 | 557 | #endif |
loopsva | 0:df49b3ed3502 | 558 | #ifdef I2C_0xCE |
loopsva | 0:df49b3ed3502 | 559 | case 0xCE: |
loopsva | 0:df49b3ed3502 | 560 | pc.printf("%s\r\n", I2C_0xCE); |
loopsva | 0:df49b3ed3502 | 561 | break; |
loopsva | 0:df49b3ed3502 | 562 | #endif |
loopsva | 0:df49b3ed3502 | 563 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 564 | #ifdef I2C_0xD0 |
loopsva | 0:df49b3ed3502 | 565 | case 0xD0: |
loopsva | 0:df49b3ed3502 | 566 | pc.printf("%s\r\n", I2C_0xD0); |
loopsva | 0:df49b3ed3502 | 567 | i2cFlags.rtcDS_ok = true; |
loopsva | 0:df49b3ed3502 | 568 | break; |
loopsva | 0:df49b3ed3502 | 569 | #endif |
loopsva | 0:df49b3ed3502 | 570 | #ifdef I2C_0xD2 |
loopsva | 0:df49b3ed3502 | 571 | case 0xD2: |
loopsva | 0:df49b3ed3502 | 572 | pc.printf("%s\r\n", I2C_0xD2); |
loopsva | 0:df49b3ed3502 | 573 | break; |
loopsva | 0:df49b3ed3502 | 574 | #endif |
loopsva | 0:df49b3ed3502 | 575 | #ifdef I2C_0xD4 |
loopsva | 0:df49b3ed3502 | 576 | case 0xD4: |
loopsva | 0:df49b3ed3502 | 577 | pc.printf("%s\r\n", I2C_0xD4); |
loopsva | 0:df49b3ed3502 | 578 | break; |
loopsva | 0:df49b3ed3502 | 579 | #endif |
loopsva | 0:df49b3ed3502 | 580 | #ifdef I2C_0xD6 |
loopsva | 0:df49b3ed3502 | 581 | case 0xD6: |
loopsva | 0:df49b3ed3502 | 582 | pc.printf("%s\r\n", I2C_0xD6); |
loopsva | 0:df49b3ed3502 | 583 | break; |
loopsva | 0:df49b3ed3502 | 584 | #endif |
loopsva | 0:df49b3ed3502 | 585 | #ifdef I2C_0xD8 |
loopsva | 0:df49b3ed3502 | 586 | case 0xD8: |
loopsva | 0:df49b3ed3502 | 587 | pc.printf("%s\r\n", I2C_0xD8); |
loopsva | 0:df49b3ed3502 | 588 | break; |
loopsva | 0:df49b3ed3502 | 589 | #endif |
loopsva | 0:df49b3ed3502 | 590 | #ifdef I2C_0xDA |
loopsva | 0:df49b3ed3502 | 591 | case 0xDA: |
loopsva | 0:df49b3ed3502 | 592 | pc.printf("%s\r\n", I2C_0xDA); |
loopsva | 0:df49b3ed3502 | 593 | break; |
loopsva | 0:df49b3ed3502 | 594 | #endif |
loopsva | 0:df49b3ed3502 | 595 | #ifdef I2C_0xDC |
loopsva | 0:df49b3ed3502 | 596 | case 0xDC: |
loopsva | 0:df49b3ed3502 | 597 | pc.printf("%s\r\n", I2C_0xDC); |
loopsva | 0:df49b3ed3502 | 598 | break; |
loopsva | 0:df49b3ed3502 | 599 | #endif |
loopsva | 0:df49b3ed3502 | 600 | #ifdef I2C_0xDE |
loopsva | 0:df49b3ed3502 | 601 | case 0xDE: |
loopsva | 0:df49b3ed3502 | 602 | pc.printf("%s\r\n", I2C_0xDE); |
loopsva | 0:df49b3ed3502 | 603 | i2cFlags.mcp7941x_ok = true; |
loopsva | 0:df49b3ed3502 | 604 | break; |
loopsva | 0:df49b3ed3502 | 605 | #endif |
loopsva | 0:df49b3ed3502 | 606 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 607 | #ifdef I2C_0xE0 |
loopsva | 0:df49b3ed3502 | 608 | case 0xE0: |
loopsva | 0:df49b3ed3502 | 609 | pc.printf("%s\r\n", I2C_0xE0); |
loopsva | 0:df49b3ed3502 | 610 | break; |
loopsva | 0:df49b3ed3502 | 611 | #endif |
loopsva | 0:df49b3ed3502 | 612 | #ifdef I2C_0xE2 |
loopsva | 0:df49b3ed3502 | 613 | case 0xE2: |
loopsva | 0:df49b3ed3502 | 614 | pc.printf("%s\r\n", I2C_0xE2); |
loopsva | 0:df49b3ed3502 | 615 | break; |
loopsva | 0:df49b3ed3502 | 616 | #endif |
loopsva | 0:df49b3ed3502 | 617 | #ifdef I2C_0xE4 |
loopsva | 0:df49b3ed3502 | 618 | case 0xE4: |
loopsva | 0:df49b3ed3502 | 619 | pc.printf("%s\r\n", I2C_0xE4); |
loopsva | 0:df49b3ed3502 | 620 | break; |
loopsva | 0:df49b3ed3502 | 621 | #endif |
loopsva | 0:df49b3ed3502 | 622 | #ifdef I2C_0xE6 |
loopsva | 0:df49b3ed3502 | 623 | case 0xE6: |
loopsva | 0:df49b3ed3502 | 624 | pc.printf("%s\r\n", I2C_0xE6); |
loopsva | 0:df49b3ed3502 | 625 | break; |
loopsva | 0:df49b3ed3502 | 626 | #endif |
loopsva | 0:df49b3ed3502 | 627 | #ifdef I2C_0xE8 |
loopsva | 0:df49b3ed3502 | 628 | case 0xE8: |
loopsva | 0:df49b3ed3502 | 629 | pc.printf("%s\r\n", I2C_0xE8); |
loopsva | 0:df49b3ed3502 | 630 | break; |
loopsva | 0:df49b3ed3502 | 631 | #endif |
loopsva | 0:df49b3ed3502 | 632 | #ifdef I2C_0xEA |
loopsva | 0:df49b3ed3502 | 633 | case 0xEA: |
loopsva | 0:df49b3ed3502 | 634 | pc.printf("%s\r\n", I2C_0xEA); |
loopsva | 0:df49b3ed3502 | 635 | break; |
loopsva | 0:df49b3ed3502 | 636 | #endif |
loopsva | 0:df49b3ed3502 | 637 | #ifdef I2C_0xEC |
loopsva | 0:df49b3ed3502 | 638 | case 0xEC: |
loopsva | 0:df49b3ed3502 | 639 | pc.printf("%s\r\n", I2C_0xEC); |
loopsva | 0:df49b3ed3502 | 640 | i2cFlags.bme280_cs0_ok = true; |
loopsva | 0:df49b3ed3502 | 641 | break; |
loopsva | 0:df49b3ed3502 | 642 | #endif |
loopsva | 0:df49b3ed3502 | 643 | #ifdef I2C_0xEE |
loopsva | 0:df49b3ed3502 | 644 | case 0xEE: |
loopsva | 0:df49b3ed3502 | 645 | pc.printf("%s\r\n", I2C_0xEE); |
loopsva | 0:df49b3ed3502 | 646 | i2cFlags.ms5611_ok = true; |
loopsva | 0:df49b3ed3502 | 647 | i2cFlags.bme280_cs1_ok = true; |
loopsva | 0:df49b3ed3502 | 648 | break; |
loopsva | 0:df49b3ed3502 | 649 | #endif |
loopsva | 0:df49b3ed3502 | 650 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 651 | #ifdef I2C_0xF0 |
loopsva | 0:df49b3ed3502 | 652 | case 0xF0: |
loopsva | 0:df49b3ed3502 | 653 | pc.printf("%s\r\n", I2C_0xF0); |
loopsva | 0:df49b3ed3502 | 654 | break; |
loopsva | 0:df49b3ed3502 | 655 | #endif |
loopsva | 0:df49b3ed3502 | 656 | #ifdef I2C_0xF2 |
loopsva | 0:df49b3ed3502 | 657 | case 0xF2: |
loopsva | 0:df49b3ed3502 | 658 | pc.printf("%s\r\n", I2C_0xF2); |
loopsva | 0:df49b3ed3502 | 659 | break; |
loopsva | 0:df49b3ed3502 | 660 | #endif |
loopsva | 0:df49b3ed3502 | 661 | #ifdef I2C_0xF4 |
loopsva | 0:df49b3ed3502 | 662 | case 0xF4: |
loopsva | 0:df49b3ed3502 | 663 | pc.printf("%s\r\n", I2C_0xF4); |
loopsva | 0:df49b3ed3502 | 664 | break; |
loopsva | 0:df49b3ed3502 | 665 | #endif |
loopsva | 0:df49b3ed3502 | 666 | #ifdef I2C_0xF6 |
loopsva | 0:df49b3ed3502 | 667 | case 0xF6: |
loopsva | 0:df49b3ed3502 | 668 | pc.printf("%s\r\n", I2C_0xF6); |
loopsva | 0:df49b3ed3502 | 669 | break; |
loopsva | 0:df49b3ed3502 | 670 | #endif |
loopsva | 0:df49b3ed3502 | 671 | #ifdef I2C_0xF8 |
loopsva | 0:df49b3ed3502 | 672 | case 0xF8: |
loopsva | 0:df49b3ed3502 | 673 | pc.printf("%s\r\n", I2C_0xF8); |
loopsva | 0:df49b3ed3502 | 674 | break; |
loopsva | 0:df49b3ed3502 | 675 | #endif |
loopsva | 0:df49b3ed3502 | 676 | #ifdef I2C_0xFA |
loopsva | 0:df49b3ed3502 | 677 | case 0xFA: |
loopsva | 0:df49b3ed3502 | 678 | pc.printf("%s\r\n", I2C_0xFA); |
loopsva | 0:df49b3ed3502 | 679 | break; |
loopsva | 0:df49b3ed3502 | 680 | #endif |
loopsva | 0:df49b3ed3502 | 681 | #ifdef I2C_0xFC |
loopsva | 0:df49b3ed3502 | 682 | case 0xFC: |
loopsva | 0:df49b3ed3502 | 683 | pc.printf("%s\r\n", I2C_0xFC); |
loopsva | 0:df49b3ed3502 | 684 | break; |
loopsva | 0:df49b3ed3502 | 685 | #endif |
loopsva | 0:df49b3ed3502 | 686 | #ifdef I2C_0xFE |
loopsva | 0:df49b3ed3502 | 687 | case 0xFE: |
loopsva | 0:df49b3ed3502 | 688 | pc.printf("%s\r\n", I2C_0xFE); |
loopsva | 0:df49b3ed3502 | 689 | break; |
loopsva | 0:df49b3ed3502 | 690 | #endif |
loopsva | 0:df49b3ed3502 | 691 | //---------------------------------------- |
loopsva | 0:df49b3ed3502 | 692 | default: |
loopsva | 0:df49b3ed3502 | 693 | pc.printf("%sunknown%s\r\n", DOMAGENTA, DONONE); |
loopsva | 0:df49b3ed3502 | 694 | break; |
loopsva | 0:df49b3ed3502 | 695 | } |
loopsva | 0:df49b3ed3502 | 696 | return(0); |
loopsva | 0:df49b3ed3502 | 697 | } |
loopsva | 0:df49b3ed3502 | 698 | |
loopsva | 0:df49b3ed3502 | 699 | //------------------------------------------------------------------------------ |
loopsva | 0:df49b3ed3502 | 700 | // Clear I2C device flags |
loopsva | 0:df49b3ed3502 | 701 | |
loopsva | 0:df49b3ed3502 | 702 | void i2c_discovery::clearFlags(i2cDeviceFlags& i2cFlags) { |
loopsva | 0:df49b3ed3502 | 703 | i2cFlags.rtcDS_ok = false; |
loopsva | 0:df49b3ed3502 | 704 | i2cFlags.ms5611_ok = false; |
loopsva | 0:df49b3ed3502 | 705 | i2cFlags.bme280_cs0_ok = false; |
loopsva | 0:df49b3ed3502 | 706 | i2cFlags.bme280_cs1_ok = false; |
loopsva | 0:df49b3ed3502 | 707 | i2cFlags.mma8451cs1_ok = false; |
loopsva | 0:df49b3ed3502 | 708 | i2cFlags.HTU21D_ok = false; |
loopsva | 0:df49b3ed3502 | 709 | i2cFlags.PCA9955_GGG_ok = false; |
loopsva | 0:df49b3ed3502 | 710 | i2cFlags.VEML60xx_ok = false; |
loopsva | 0:df49b3ed3502 | 711 | i2cFlags.VEML6070_ok = false; |
loopsva | 0:df49b3ed3502 | 712 | i2cFlags.eeprom000_ok = false; |
loopsva | 0:df49b3ed3502 | 713 | i2cFlags.INA219_MAX7300_gg_ok = false; |
loopsva | 0:df49b3ed3502 | 714 | i2cFlags.INA230_MAX7300_gg_ok = false; |
loopsva | 0:df49b3ed3502 | 715 | i2cFlags.bq27210_ok = false; |
loopsva | 0:df49b3ed3502 | 716 | i2cFlags.SCD30_ok = false; |
loopsva | 0:df49b3ed3502 | 717 | i2cFlags.ccs811_0_ok = false; |
loopsva | 0:df49b3ed3502 | 718 | i2cFlags.ccs811_1_ok = false; |
loopsva | 0:df49b3ed3502 | 719 | i2cFlags.mcp7941x_ok = false; |
loopsva | 0:df49b3ed3502 | 720 | } |
loopsva | 0:df49b3ed3502 | 721 | |
loopsva | 0:df49b3ed3502 | 722 | //------------------------------------------------------------------------------ |
loopsva | 0:df49b3ed3502 | 723 | // Detect I2C device chain. If i2c chain > 1, return illegal number 255. Else, |
loopsva | 0:df49b3ed3502 | 724 | // return the total number of i2c devices detected |
loopsva | 0:df49b3ed3502 | 725 | |
loopsva | 0:df49b3ed3502 | 726 | int i2c_discovery::dispI2C(i2cDeviceFlags& i2cFlags) { |
loopsva | 0:df49b3ed3502 | 727 | //i2c_discovery::clearFlags(i2cFlags); |
loopsva | 0:df49b3ed3502 | 728 | int count = 0; |
loopsva | 0:df49b3ed3502 | 729 | for (int address = 2; address < 256; address +=2) { |
loopsva | 0:df49b3ed3502 | 730 | char xBuf[2] = { 0, 0 }; |
loopsva | 0:df49b3ed3502 | 731 | int x2c = _i2c.write(address, xBuf, 1, false); |
loopsva | 0:df49b3ed3502 | 732 | if(x2c == 0) { |
loopsva | 0:df49b3ed3502 | 733 | pc.printf(" - i2c device found at address 0x%02X %s", address, DOBLUE); |
loopsva | 0:df49b3ed3502 | 734 | showI2C(i2cFlags, address); |
loopsva | 0:df49b3ed3502 | 735 | pc.printf("%s", DONONE); |
loopsva | 0:df49b3ed3502 | 736 | count++; |
loopsva | 0:df49b3ed3502 | 737 | } |
loopsva | 0:df49b3ed3502 | 738 | } |
loopsva | 0:df49b3ed3502 | 739 | return(count); |
loopsva | 0:df49b3ed3502 | 740 | } |
loopsva | 0:df49b3ed3502 | 741 | |
loopsva | 0:df49b3ed3502 | 742 | //------------------------------------------------------------------------------ |
loopsva | 0:df49b3ed3502 | 743 | // Detect I2C device chain |
loopsva | 0:df49b3ed3502 | 744 | |
loopsva | 0:df49b3ed3502 | 745 | int i2c_discovery::find_i2c(i2cDeviceFlags& i2cFlags) { |
loopsva | 0:df49b3ed3502 | 746 | pc.printf("Searching for devices on i2c bus...\n"); |
loopsva | 0:df49b3ed3502 | 747 | int count = dispI2C(i2cFlags); |
loopsva | 0:df49b3ed3502 | 748 | pc.printf(" - %s%2d%s device(s) found on i2c bus\n", DOBLUE, count, DONONE); |
loopsva | 0:df49b3ed3502 | 749 | return(count); |
loopsva | 0:df49b3ed3502 | 750 | } |
loopsva | 0:df49b3ed3502 | 751 |