code
Dependencies: MPU6050_SIM5320_TEST SDFileSystem WakeUp
Fork of Nucleo_L476RG_SDCard_WorkingSample by
Diff: SensorBoards.cpp
- Revision:
- 1:d5774258d18b
- Child:
- 2:f745f2656606
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/SensorBoards.cpp Sat Sep 09 14:36:17 2017 +0000 @@ -0,0 +1,39 @@ +#include "SensorBoards.h" + +uint8_t SensorBoards::getSensorNumbers(uint8_t address) +{ + //return boards[0].numberOfSensors; +} +uint8_t SensorBoards::getSensorIDs(uint8_t address, uint8_t *IDBuffer) +{ + + +} +void SensorBoards::getSensorReadings(uint8_t address, uint8_t ID, uint8_t* IDMeasure) +{ + + +} +uint8_t SensorBoards::sensorBoardScanner() +{ + char ucdata_write[2]; + short count=0; + I2C i2c(D14, D15); // sda, scl + for (int Device_Adress=0; Device_Adress<=0xFE; Device_Adress+=2) { //Stepping in 2 Because Read/Write use LSB + if (!i2c.write((Device_Adress|WRITE), ucdata_write, 1, 0)) { // Check for ACK from i2c Device NB I am 'ORing' the Write Bit + printf("ACK from the Device at Address %#4x\n\r",Device_Adress>>1); + //lcd.printf("ACK at:%#4x\n",Device_Adress); + boards[0].I2CAddress=Device_Adress>>1; + count=count+1; + } + } + printf("\n\r %d Devices have been detected!\n\r",count); + if (count!=0) + return 1; +else + return 0; +} +uint8_t SensorBoards::returnBoardAdd() +{ + return boards[0].I2CAddress; +} \ No newline at end of file