Skip to content

Commit 48eb5d1

Browse files
committed
Added HardwareI2C
1 parent e30a03e commit 48eb5d1

File tree

2 files changed

+44
-0
lines changed

2 files changed

+44
-0
lines changed

api/ArduinoAPI.h

+1
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727

2828
#ifdef __cplusplus
2929
#include "Client.h"
30+
#include "HardwareI2C.h"
3031
#include "HardwareSerial.h"
3132
#include "IPAddress.h"
3233
#include "Print.h"

api/HardwareI2C.h

+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
/*
2+
Copyright (c) 2016 Arduino LLC. All right reserved.
3+
4+
This library is free software; you can redistribute it and/or
5+
modify it under the terms of the GNU Lesser General Public
6+
License as published by the Free Software Foundation; either
7+
version 2.1 of the License, or (at your option) any later version.
8+
9+
This library is distributed in the hope that it will be useful,
10+
but WITHOUT ANY WARRANTY; without even the implied warranty of
11+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12+
See the GNU Lesser General Public License for more details.
13+
14+
You should have received a copy of the GNU Lesser General Public
15+
License along with this library; if not, write to the Free Software
16+
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
17+
*/
18+
19+
#pragma once
20+
21+
#include <inttypes.h>
22+
#include "Stream.h"
23+
24+
class HardwareI2C : public Stream
25+
{
26+
public:
27+
virtual void begin() = 0;
28+
virtual void begin(uint8_t address) = 0;
29+
virtual void end() = 0;
30+
31+
virtual void setClock(uint32_t freq) = 0;
32+
33+
virtual void beginTransmission(uint8_t address) = 0;
34+
virtual uint8_t endTransmission(bool stopBit) = 0;
35+
virtual uint8_t endTransmission(void) = 0;
36+
37+
virtual uint8_t requestFrom(uint8_t address, size_t len, bool stopBit) = 0;
38+
virtual uint8_t requestFrom(uint8_t address, size_t len) = 0;
39+
40+
virtual void onReceive(void(*)(int)) = 0;
41+
virtual void onRequest(void(*)(void)) = 0;
42+
};
43+

0 commit comments

Comments
 (0)