code
Dependencies: MPU6050_SIM5320_TEST SDFileSystem WakeUp
Fork of Nucleo_L476RG_SDCard_WorkingSample by
SensorBoards.cpp@1:d5774258d18b, 2017-09-09 (annotated)
- Committer:
- suads
- Date:
- Sat Sep 09 14:36:17 2017 +0000
- Revision:
- 1:d5774258d18b
- Child:
- 2:f745f2656606
cassey
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
suads | 1:d5774258d18b | 1 | #include "SensorBoards.h" |
suads | 1:d5774258d18b | 2 | |
suads | 1:d5774258d18b | 3 | uint8_t SensorBoards::getSensorNumbers(uint8_t address) |
suads | 1:d5774258d18b | 4 | { |
suads | 1:d5774258d18b | 5 | //return boards[0].numberOfSensors; |
suads | 1:d5774258d18b | 6 | } |
suads | 1:d5774258d18b | 7 | uint8_t SensorBoards::getSensorIDs(uint8_t address, uint8_t *IDBuffer) |
suads | 1:d5774258d18b | 8 | { |
suads | 1:d5774258d18b | 9 | |
suads | 1:d5774258d18b | 10 | |
suads | 1:d5774258d18b | 11 | } |
suads | 1:d5774258d18b | 12 | void SensorBoards::getSensorReadings(uint8_t address, uint8_t ID, uint8_t* IDMeasure) |
suads | 1:d5774258d18b | 13 | { |
suads | 1:d5774258d18b | 14 | |
suads | 1:d5774258d18b | 15 | |
suads | 1:d5774258d18b | 16 | } |
suads | 1:d5774258d18b | 17 | uint8_t SensorBoards::sensorBoardScanner() |
suads | 1:d5774258d18b | 18 | { |
suads | 1:d5774258d18b | 19 | char ucdata_write[2]; |
suads | 1:d5774258d18b | 20 | short count=0; |
suads | 1:d5774258d18b | 21 | I2C i2c(D14, D15); // sda, scl |
suads | 1:d5774258d18b | 22 | for (int Device_Adress=0; Device_Adress<=0xFE; Device_Adress+=2) { //Stepping in 2 Because Read/Write use LSB |
suads | 1:d5774258d18b | 23 | if (!i2c.write((Device_Adress|WRITE), ucdata_write, 1, 0)) { // Check for ACK from i2c Device NB I am 'ORing' the Write Bit |
suads | 1:d5774258d18b | 24 | printf("ACK from the Device at Address %#4x\n\r",Device_Adress>>1); |
suads | 1:d5774258d18b | 25 | //lcd.printf("ACK at:%#4x\n",Device_Adress); |
suads | 1:d5774258d18b | 26 | boards[0].I2CAddress=Device_Adress>>1; |
suads | 1:d5774258d18b | 27 | count=count+1; |
suads | 1:d5774258d18b | 28 | } |
suads | 1:d5774258d18b | 29 | } |
suads | 1:d5774258d18b | 30 | printf("\n\r %d Devices have been detected!\n\r",count); |
suads | 1:d5774258d18b | 31 | if (count!=0) |
suads | 1:d5774258d18b | 32 | return 1; |
suads | 1:d5774258d18b | 33 | else |
suads | 1:d5774258d18b | 34 | return 0; |
suads | 1:d5774258d18b | 35 | } |
suads | 1:d5774258d18b | 36 | uint8_t SensorBoards::returnBoardAdd() |
suads | 1:d5774258d18b | 37 | { |
suads | 1:d5774258d18b | 38 | return boards[0].I2CAddress; |
suads | 1:d5774258d18b | 39 | } |