Артем
void ssd1306_init(void)
{
_delay_ms(100);
i2c_init();
ssd1306_send_cmd(0xAE);
ssd1306_send_cmd(0x20);
ssd1306_send_cmd(0x00);
ssd1306_send_cmd(0xB0);
ssd1306_send_cmd(0xC8);
ssd1306_send_cmd(0x00);
ssd1306_send_cmd(0x10);
ssd1306_send_cmd(0x40);
ssd1306_send_cmd(0x81);
ssd1306_send_cmd(0x3F); //яркость
ssd1306_send_cmd(0xA1);
ssd1306_send_cmd(0xA6);
ssd1306_send_cmd(0xA8);
ssd1306_send_cmd(0x3F);
ssd1306_send_cmd(0xA4);
ssd1306_send_cmd(0xD3);
ssd1306_send_cmd(0x00);
ssd1306_send_cmd(0xD5);
ssd1306_send_cmd(0xF0);
ssd1306_send_cmd(0xD9);
ssd1306_send_cmd(0x22);
ssd1306_send_cmd(0xDA);
ssd1306_send_cmd(0x12);
ssd1306_send_cmd(0xDB);
ssd1306_send_cmd(0x20);
ssd1306_send_cmd(0x8D);
ssd1306_send_cmd(0x14);
ssd1306_send_cmd(0xAF);
_delay_ms(50);
}
Артем
У меня такой инит
Стрела
ща, попробую
Артем
я себе пока мелкий RGB OLED заказал
Артем
и ещё более мелкий синий
Стрела
так, стоп, а перед этими байтами контрол байт надо или нет?
Артем
#define CMD 0x00
void ssd1306_send_cmd(uint8_t byte)
{
ssd1306_start();
ssd1306_send(CMD);
ssd1306_send(byte);
ssd1306_stop();
}
Стрела
хмм, ладно, ща
Артем
хз, может можно и просто массив байтов передать, не пробовал
Unsupported
Стрела
Unsupported
Стрела
ну данные и тактирование
Unsupported
sda slc?
нет, data/command. уровнем на этой ноге ты выбираешь, что шлёшь в дисплей - данные или команду
Стрела
так у нас i2c всего 2 ноги)
Стрела
Стрела
не, не заработало с вариантом Артёма
Стрела
я бы сам все функции писал, но меня убивают эти названия регистров, я просто в них теряюсь)
Стрела
а, окей)
Unsupported
у тебя там что, avr, stm?
Стрела
avr atmega8
Unsupported
8 или 328?
Стрела
написал же, что 8
Unsupported
с i2c работал уже успешно до этого?
Стрела
нет(ардуино не всчёт)
Unsupported
Unsupported
бери
Unsupported
DDRB = 0b00000000;
DDRC = 0b00001111;
DDRD = 0b00000000;
PORTB = 0b11111111;
PORTC = 0b11110000;
PORTD = 0b11111111;
// Инициализация I2C
TWI::init();
SSD1306::Init()
Стрела
*взял*
Unsupported
пины для 328, но для 8 перенести не должно составить труда
Unsupported
или может они даже и совпадают
Стрела
я не могу найти куда эти файлы пихать, погоди 😅
Unsupported
кстати, i2c сканнер для меги8 с выводом результат в uart:
https://github.com/winnerru/i2cscanner
Unsupported
сюда пихни файлы ssd1306.* и вызови функцию инициализации дисплея
Unsupported
собирать через make с помощью avr-gcc
Стрела
в сканер пихать?(я щас дико туплю ибо сижу с code vision avr)
Unsupported
Ну, да
Unsupported
Можешь сканер собрать сначала и просканить шину и2ц
Unsupported
Должен дисплей отозваться
Стрела
отозваться в uart?
Unsupported
Да, ну посмотри ты исходники уже наконец
Артем
Я, помню, лог. анализатором смотрел, когда адрес искал)
Sasha
Забрал сегодня s10+ хорощечная штука
Unsupported
Unsupported
Unsupported
Починиль
Unsupported
Кажется, та глина была лишней :)
Аня 🕊
опять глину месите?
Unsupported
Unsupported
Andrew
Ты чо
Andrew
Глиномес?
Аня 🕊
Аня 🕊
Andrew
Andrew
Пиздец
Аня 🕊
Andrew
Говноделию
Andrew
Да
Anonymous
Нит
Andrew
Кх
Andrew
Не банил
Andrew
Просто кикнул
Andrew
Зайти второй раз никто не мешает
Anonymous
Сасатб
Andrew
Я тоже
Andrew
Выкинь
Andrew
Я им жопу порву
Th0r
идите со своими жопами в личку
Andrew
Unsupported
Unsupported
First
А librepcb VS kicad, кто кого - желательно мнение юзающих. Я только кикад тыкал.
First
а че правда, libre юзал кто?