Кокоспалм
Пт, 04 мая 2018 г., 11:11
Всем привет!
У меня здесь есть несколько OLED -дисплеев, но я не могу заставить их работать, к сожалению, ни в одной из библиотек, которые я нашел в папке Core Library (Adafruits SSD1306, OLED_I2C не работают). Я мог бы заставить U8G2 работать тоже...
Только с библиотекой OLED_I2C что -то отображается на дисплее (0.96 "OLED и 0.49 "OLED): только некоторые случайные точки появляются...
Вопрос 1:
Я делаю что -то не так?
Вопрос 2:
Если эта библиотека также работает wir 0.66 "дисплей (64x48 точек)?
Это мой код:
У меня здесь есть несколько OLED -дисплеев, но я не могу заставить их работать, к сожалению, ни в одной из библиотек, которые я нашел в папке Core Library (Adafruits SSD1306, OLED_I2C не работают). Я мог бы заставить U8G2 работать тоже...
Только с библиотекой OLED_I2C что -то отображается на дисплее (0.96 "OLED и 0.49 "OLED): только некоторые случайные точки появляются...
Вопрос 1:
Я делаю что -то не так?
Вопрос 2:
Если эта библиотека также работает wir 0.66 "дисплей (64x48 точек)?
Это мой код:
#include
OLED myOLED(SDA1, SCL1, PB8);
extern uint8_t TinyFont[];
void setup()
{
myOLED.begin();
myOLED.setFont(TinyFont);
myOLED.clrScr(); //clear Display
}
void loop()
{
myOLED.print("Hello W.", 10,10);
myOLED.update();
delay(1000);
}
Ахулл
Пт, 04 мая 2018 г., 11:40
Может быть, если вы предоставили несколько изображений дисплеев и, возможно, ссылки на продавца или источника, это может помочь.
Стивестронг
Пт, 04 мая 2018 г., 11:52
5 В <-> 3.3V конфликт?
Кокоспалм
Пт, 04 мая 2018 12:18
0.49 "дисплей:
https: // www.eBay.de/itm/white-slue-0-49 ... 2749.L2649
0.66 "дисплей:
https: // www.eBay.de/itm/0-66inch-oled-d ... 2749.L2649
0.Дисплей 96 ":
https: // www.eBay.de/itm/0-96-6pin-12864 ... 2749.L2649
Все они бегают 3.3V, так что я не думаю, что это как -то связано с напряжениями...
https: // www.eBay.de/itm/white-slue-0-49 ... 2749.L2649
0.66 "дисплей:
https: // www.eBay.de/itm/0-66inch-oled-d ... 2749.L2649
0.Дисплей 96 ":
https: // www.eBay.de/itm/0-96-6pin-12864 ... 2749.L2649
Все они бегают 3.3V, так что я не думаю, что это как -то связано с напряжениями...
Стивестронг
Пт, 04 мая 2018 12:25
Подключите подключенные резисторы? Какое значение? Они адаптированы к скорости шины I2C?
Кокоспалм
Пт, 04 мая 2018 12:52
Я подключился 2.2K резисторы как подтягивания, но это ничего не влияет на. Есть несколько настроек в .H файлы:
В "hw_stm32_defines.час":
В "hw_stm32_defines.час":
// *** Hardwarespecific defines ***
#define cbi(reg, bitmask) *reg &= ~bitmask
#define sbi(reg, bitmask) *reg |= bitmask
#define pulseClock cbi(P_SCK, B_SCK); asm ("nop"); sbi(P_SCK, B_SCK)
#define fontbyte(x) cfont.font[x]
#define bitmapbyte(x) bitmap[x]
#define bitmapdatatype unsigned char*
#define SDA1 PB11
#define SCL1 PB10
#define SDA PB7
#define SCL PB6
#define TWI_SPEED TWI_SPEED_400k // Set default TWI Speed
#define TWI_SPEED_100k 208
#define TWI_SPEED_400k 101
#define TWI_DIV TWI_DIV_400k // Set divider for TWI Speed (must match TWI_SPEED setting)
#define TWI_DIV_100k 1
#define TWI_DIV_400k 0
Стивестронг
Пт, 04 мая 2018 г., 17:41
Не знаю, у меня нет OLED -дисплея, поэтому я не могу сказать вам, что там может быть не так.
Не получаешь никаких предупреждений во время строительства проекта?
Я вижу активный электронный компонент на задней стороне первой платы, что это может быть?
Если это регулятор напряжения, это может вызвать некоторые проблемы.
Вы проверили контакты I2C для любого полезного сигнала с областью применения?
Не получаешь никаких предупреждений во время строительства проекта?
Я вижу активный электронный компонент на задней стороне первой платы, что это может быть?
Если это регулятор напряжения, это может вызвать некоторые проблемы.
Вы проверили контакты I2C для любого полезного сигнала с областью применения?
Мадиас
Пт, 04 мая 2018 г., 18:46
Только что протестировал на моем Maple Mini:
Проверять Adafruit_ssd1306 (В папке библиотеки STM32 F1!) Примером "ssd1306_128x64_i2c_stm32".
Соединение находится в порту I2C 1 (редактировать!)
Я адаптировал библиотеку много лет назад, кажется, что в I2C было много изменений.
Выход сейчас очень медленный...Но это работает. (Если у меня будет время, я проверю это) Исправлено: см. Следующее сообщение
Oled_i2c (Также в папке библиотеки F1) полностью сломана - даже изменение Hwire на проволоку. Но вы можете использовать Soft-I2C: выберите любой другой вывод, кроме SDA/SCL или SDA1/SCL1, например:
Проверять Adafruit_ssd1306 (В папке библиотеки STM32 F1!) Примером "ssd1306_128x64_i2c_stm32".
Соединение находится в порту I2C 1 (редактировать!)
Я адаптировал библиотеку много лет назад, кажется, что в I2C было много изменений.
Выход сейчас очень медленный...Но это работает. (Если у меня будет время, я проверю это) Исправлено: см. Следующее сообщение
Oled_i2c (Также в папке библиотеки F1) полностью сломана - даже изменение Hwire на проволоку. Но вы можете использовать Soft-I2C: выберите любой другой вывод, кроме SDA/SCL или SDA1/SCL1, например:
OLED myOLED(PA4, PA3);
Мадиас
Пт, 04 мая 2018 г., 20:38
ОК, провод теперь медленный из -за скорости HZ по умолчанию, просто вставьте
Wire.setClock(400000);
Кокоспалм
Сб, 5 мая 2018 г., 22:25
Поэтому я должен использовать библиотеку Adafruit SSD1306, потому что LIB OLED_I2C - это какой -то вид, который не испортился и вообще не работает?
Мадиас
Солнце 6 мая 2018 г., 22:28
Если вам нужен HW-SPI для скорости, используйте Adafruit One (с моими модификациями в верхнем посте)
Если вам не нужна скорость и использовать какие -либо бесплатные булавки, используйте другие (как я объяснил)
На монохромном дисплее 128x64 я предпочитаю сохранить свой порт (ы) и делать это «мягкий»
Если вам не нужна скорость и использовать какие -либо бесплатные булавки, используйте другие (как я объяснил)
На монохромном дисплее 128x64 я предпочитаю сохранить свой порт (ы) и делать это «мягкий»