tests
Fork of i2c_detect by
main.cpp@2:a3d553fa1a65, 2017-10-18 (annotated)
- 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?
| User | Revision | Line number | New 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 |
