Ср апр 18, 2018 16:06:03
Ср апр 18, 2018 22:02:03
Чт апр 19, 2018 01:31:42
Чт апр 19, 2018 16:10:48
Чт апр 19, 2018 17:02:30
gavi6 писал(а):поговаривают о неких "граблях с этим дисплеем".
http://radiokot.ru/articles/77/
проблема в том, что я не смогу сказать достоверно "а применимы ли эти грабли" в данном проекте))
СТАРТ, АДРЕС+0, 0x80, 0xA8, 0x80, 0x3F, 0x80, 0xD3, 0x80, 0x00, 0x80, 0x40, 0x80, 0xA1, 0x80, 0xC8, 0x80, 0xDA, 0x80, 0x12, 0x80, 0x81, 0x80, 0x7F, 0x80, 0xA4, 0x80, 0xA6, 0x80, 0xD5, 0x80, 0x80, 0x80, 0x8D, 0x80, 0x14, 0x80, 0xAF, СТОП
unsigned char PROGMEM init[18]=
{
0xA8,0x3F,0xD3,0x00,0x40,0xA1,0xC8,0xDA,0x12,
0x81,0x7F,0xA4,0xA6,0xD5,0x80,0x8D,0x14,0xAF,
};
0xA8, SSD1306_SETMULTIPLEX
0x3F,
0xD3, SSD1306_SETDISPLAYOFFSET
0x00,
0x40, SSD1306_SETSTARTLINE
0xA1, SSD1306_SEGREMAP_ON
0xC8, SSD1306_COMSCANDEC
0xDA, SSD1306_SETCOMPINS
0x12,
0x81, SSD1306_SETCONTRAST
0x7F,
0xA4, SSD1306_ENTDISPLAY_RAM
0xA6, SSD1306_NORMALDISPLAY
0xD5, SSD1306_SETDISPLAYCLOCKDIV
0x80,
0x8D, SSD1306_CHARGEPUMP
0x14,
0xAF, SSD1306_DISPLAY_ON
static const uint8_t initSeq[] PROGMEM = {
SSD1306_DISPLAY_OFF,
SSD1306_SETDISPLAYCLOCKDIV,
0xF0,
SSD1306_SETMULTIPLEX,
0x3F,
SSD1306_SETDISPLAYOFFSET,
0x00,
SSD1306_SETSTARTLINE | 0x00,
SSD1306_MEMORYMODE,
SSD1306_MEMORYMODE_HORISONTAL,
SSD1306_SEGREMAP_ON,
SSD1306_COMSCANDEC,
SSD1306_SETCOMPINS,
0x12,
SSD1306_SETCONTRAST,
0xFF,
SSD1306_SETPRECHARGE,
0x1F,
SSD1306_SETVCOMDETECT,
0x40,
SSD1306_ENTDISPLAY_RAM,
SSD1306_NORMALDISPLAY,
SSD1306_CHARGEPUMP,
0x14,
SSD1306_DISPLAY_ON,
};
Пт апр 20, 2018 00:43:03
Пт апр 20, 2018 07:42:21
Пт апр 20, 2018 14:08:26
Пт апр 20, 2018 14:26:14
Пт апр 20, 2018 15:49:01
Пт апр 20, 2018 16:28:36
Пт апр 20, 2018 16:57:20
// Arduino дисплей OLED LCD Display I2C 0.96 IIC Serial 128X64 TEST_1. // Скачать sketch.
#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h> // Скачанная библиотека для дисплея.
#include <Adafruit_SSD1306.h> // Скачанная библиотека для дисплея. https://yadi.sk/d/9F_uW1wIZUDna
#define OLED_RESET 4
Adafruit_SSD1306 display(OLED_RESET);
void setup(){// У дисплея нету строк и колонок, только Pixel / пиксели по горизонтали и вертикали, условно! назовем курсор / колонка.
display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // initialize with the I2C addr 0x3C (for the 0.96" 128X64 OLED LCD Display)I2C АДРЕС.
display.clearDisplay(); // Clear the buffer. / Очистить буфер.
display.setTextColor(WHITE); // Цвет текста.
display.setTextSize(1); // Размер текста (1).
display.setCursor(0,0); // Устанавливаем курсор в колонку 0, строку 0. на самом деле это строка №1, т.к. нумерация начинается с 0.
display.println("Hello world! 11111111"); // Печатаем 1 строку.
display.setCursor(0,10); // Устанавливаем курсор в колонку 0, строку 1.(строка №2 ).
display.println("Dmitry OSIPOV 2222222"); // Печатаем 2 строку.
display.setTextSize(5); // Меняем размер текста (5).
display.setCursor(0,20); // Устанавливаем курсор в колонку 0, строку 2.(строка №3 ).
display.println("Size"); // Печатаем 3 строку.
display.display(); // Чтобы сделать символы видимыми на дисплее !.
}
void loop() {
}
Пт апр 20, 2018 19:43:56
Сб апр 21, 2018 00:43:13
Сб апр 21, 2018 08:39:11
Сб апр 21, 2018 09:04:22
Сб апр 21, 2018 09:31:50
Сб апр 21, 2018 11:28:59
Сб апр 21, 2018 11:36:05
Потому что основной, аппаратный, I²C настроен на 100кГц (DS1307 и многие аудиоконтроллеры не могут работать быстрее). Поэтому для увеличения скорости работы дисплея он подключается по программному I²С, на большей (около 400кГц) скорости.gavi6 писал(а):почему PA2 и PA4 ?
Сб апр 21, 2018 15:15:42