tests

Dependencies:   mbed

Fork of i2c_detect by Rune Langoy

Committer:
wrxavex
Date:
Wed Oct 18 16:11:22 2017 +0000
Revision:
2:a3d553fa1a65
Parent:
1:624dc0072a11
edit for i2c

Who changed what in which revision?

UserRevisionLine numberNew contents of line
rlanghbv 0:9e51d4453b53 1 #include "mbed.h"
rlanghbv 0:9e51d4453b53 2
rlanghbv 0:9e51d4453b53 3 //SDA , SCL
wrxavex 2:a3d553fa1a65 4 //I2C i2cBus(I2C_SDA, I2C_SCL);
wrxavex 2:a3d553fa1a65 5 I2C i2cBus(p9, p10);
rlanghbv 0:9e51d4453b53 6
rlanghbv 0:9e51d4453b53 7 int main()
rlanghbv 0:9e51d4453b53 8 {
rlanghbv 0:9e51d4453b53 9 i2cBus.frequency(100000);
rlanghbv 0:9e51d4453b53 10
rlanghbv 0:9e51d4453b53 11 printf("\r\n Scanning for I2C devices (addresses in hex)\r\n ");
rlanghbv 0:9e51d4453b53 12 printf(" 0 1 2 3 4 5 6 7 8 9 a b c d e f\r\n");
rlanghbv 0:9e51d4453b53 13 for (int i = 0; i < 128; i += 16) {
rlanghbv 0:9e51d4453b53 14 printf("%02x: ", i);
rlanghbv 0:9e51d4453b53 15 for(int j = 0; j < 16; j++) {
rlanghbv 0:9e51d4453b53 16 // Skip unwanted addresses
rlanghbv 0:9e51d4453b53 17 if (i+j < 0x3 || i+j > 0x77) {
rlanghbv 0:9e51d4453b53 18 printf(" ");
rlanghbv 0:9e51d4453b53 19 continue;
rlanghbv 0:9e51d4453b53 20 }
rlanghbv 0:9e51d4453b53 21
rlanghbv 0:9e51d4453b53 22 if (!i2cBus.write(i+j<<1, NULL, 0))
rlanghbv 0:9e51d4453b53 23 printf("%02x ", i+j);
rlanghbv 0:9e51d4453b53 24 else
rlanghbv 0:9e51d4453b53 25 printf("-- ");
rlanghbv 0:9e51d4453b53 26
rlanghbv 0:9e51d4453b53 27 }
rlanghbv 0:9e51d4453b53 28 printf("\r\n");
rlanghbv 0:9e51d4453b53 29 }
rlanghbv 0:9e51d4453b53 30 }
rlanghbv 1:624dc0072a11 31