Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
I2CDriver/I2CDriver.cpp@5:e4ed6c5baf89, 2014-05-08 (annotated)
- Committer:
- sNICKer1103
- Date:
- Thu May 08 18:59:52 2014 +0000
- Revision:
- 5:e4ed6c5baf89
- Parent:
- 4:a091b8f8216d
ter
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| sNICKer1103 | 2:f2700008c9d9 | 1 | #include "I2CDriver.h" |
| sNICKer1103 | 2:f2700008c9d9 | 2 | #include "mbed.h" |
| sNICKer1103 | 2:f2700008c9d9 | 3 | |
| sNICKer1103 | 4:a091b8f8216d | 4 | I2CDriver::I2CDriver(PinName pin1, PinName pin2, const char addr) : slave(pin1, pin2) |
| sNICKer1103 | 4:a091b8f8216d | 5 | { |
| sNICKer1103 | 2:f2700008c9d9 | 6 | slave.address(addr); |
| sNICKer1103 | 2:f2700008c9d9 | 7 | } |
| sNICKer1103 | 2:f2700008c9d9 | 8 | |
| sNICKer1103 | 4:a091b8f8216d | 9 | I2CDriver::~I2CDriver() |
| sNICKer1103 | 4:a091b8f8216d | 10 | { |
| sNICKer1103 | 4:a091b8f8216d | 11 | } |
| sNICKer1103 | 4:a091b8f8216d | 12 | |
| sNICKer1103 | 4:a091b8f8216d | 13 | uint8_t I2CDriver::read(void) |
| sNICKer1103 | 4:a091b8f8216d | 14 | { |
| sNICKer1103 | 4:a091b8f8216d | 15 | return ((uint8_t) slave.read()); |
| sNICKer1103 | 4:a091b8f8216d | 16 | } |
| sNICKer1103 | 4:a091b8f8216d | 17 | |
| sNICKer1103 | 4:a091b8f8216d | 18 | uint8_t I2CDriver::read(char* dat, int lengte) |
| sNICKer1103 | 4:a091b8f8216d | 19 | { |
| sNICKer1103 | 4:a091b8f8216d | 20 | return slave.read(dat, lengte); |
| sNICKer1103 | 3:da30c350c339 | 21 | } |
| sNICKer1103 | 3:da30c350c339 | 22 | |
| sNICKer1103 | 4:a091b8f8216d | 23 | int I2CDriver::receive(void) |
| sNICKer1103 | 4:a091b8f8216d | 24 | { |
| sNICKer1103 | 4:a091b8f8216d | 25 | return slave.receive(); |
| sNICKer1103 | 2:f2700008c9d9 | 26 | } |
| sNICKer1103 | 2:f2700008c9d9 | 27 | |
| sNICKer1103 | 4:a091b8f8216d | 28 | void I2CDriver::pollForInput(LedCube* ledc) |
| sNICKer1103 | 4:a091b8f8216d | 29 | { |
| sNICKer1103 | 4:a091b8f8216d | 30 | if(receive() == I2CDriver::WriteAddressed) { |
| sNICKer1103 | 4:a091b8f8216d | 31 | slave.read(databuffer, SIZE); |
| sNICKer1103 | 5:e4ed6c5baf89 | 32 | unsigned char databfr[512]; |
| sNICKer1103 | 5:e4ed6c5baf89 | 33 | for(int i =0; i < 512; i++) databfr[i] = databuffer[i]; |
| sNICKer1103 | 5:e4ed6c5baf89 | 34 | ledc->setData(databfr); |
| sNICKer1103 | 4:a091b8f8216d | 35 | } |
| sNICKer1103 | 4:a091b8f8216d | 36 | //printf("Gepollt!!\n\r"); |
| sNICKer1103 | 4:a091b8f8216d | 37 | } |
| sNICKer1103 | 4:a091b8f8216d | 38 |