SSD1306 OLED display driver
1.3.5
This library is developed to control SSD1306 i2c/spi OLED display
src
i2c
ssd1306_i2c_conf.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2016-2017 Alexey Dynda
3
4
This file is part of SSD1306 library.
5
6
This program is free software: you can redistribute it and/or modify
7
it under the terms of the GNU General Public License as published by
8
the Free Software Foundation, either version 3 of the License, or
9
(at your option) any later version.
10
11
This program is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
GNU General Public License for more details.
15
16
You should have received a copy of the GNU General Public License
17
along with this program. If not, see <http://www.gnu.org/licenses/>.
18
*/
19
24
#ifndef _SSD1306_I2C_CONF_H_
25
#define _SSD1306_I2C_CONF_H_
26
27
#ifdef __cplusplus
28
extern
"C"
{
29
#endif
30
36
#ifndef SSD1306_SA
37
43
#define SSD1306_SA 0x3C // Slave address
44
#endif
45
46
47
#if defined(__AVR_ATtiny25__) || defined(__AVR_ATtiny45__) || defined(__AVR_ATtiny85__)
48
52
#define SSD1306_EMBEDDED_I2C
53
55
#define SSD1306_I2C_SW_SUPPORTED
56
57
#if defined(ARDUINO_AVR_DIGISPARK)
58
59
#define SSD1306_WIRE_SUPPORTED
60
#endif
61
#else
62
63
#define SSD1306_WIRE_SUPPORTED
64
65
#if defined(ARDUINO_AVR_DIGISPARKPRO)
66
/* Wire.setClock() is not supported by Digispark PRO */
67
#else
68
#define SSD1306_WIRE_CLOCK_CONFIGURABLE
69
#endif
70
#if defined(ESP8266) || defined(ESP32) || defined(ESP31B)
71
/* SW implementation of i2c isn't supported on ESP platforms */
72
#elif defined(ARDUINO_AVR_DIGISPARKPRO)
73
/* SW implementation of i2c isn't supported on Digispark PRO */
74
#elif defined(ARDUINO_ARCH_SAMD)
75
/* SW implementation of i2c isn't supported for SAMD architecture */
76
#else
77
78
#define SSD1306_I2C_SW_SUPPORTED
79
#endif
80
#endif
81
82
#if defined(__AVR_ATtiny25__) | defined(__AVR_ATtiny45__) | defined(__AVR_ATtiny85__)
83
#ifndef SSD1306_SCL
84
#define SSD1306_SCL 3
85
#endif
86
#ifndef SSD1306_SDA
87
#define SSD1306_SDA 4
88
#endif
89
#else
90
#ifndef SSD1306_SCL
91
#define SSD1306_SCL 5 // SCL, Pin A5 on SSD1306 Board
92
#endif
93
#ifndef SSD1306_SDA
94
#define SSD1306_SDA 4 // SDA, Pin A4 on SSD1306 Board
95
#endif
96
#endif
97
102
#ifdef __cplusplus
103
}
104
#endif
105
106
#endif
Generated by
1.8.13