Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Дисплейче ssd1306 пали само след ресет
http://mcu-bg.com/mcu_site/viewtopic.php?f=2&t=18569
Страница 1 от 1

Автор:  Реконструктор [ Чет Окт 20, 2022 7:51 pm ]
Заглавие:  Дисплейче ssd1306 пали само след ресет

Закачил съм едно ssd1306 за STM32F103 по I2C. Като пусна захранването - не свети. Като натисна ресет бутончето - светва. Какво пропускам? :)

Автор:  itso.t [ Чет Окт 20, 2022 8:07 pm ]
Заглавие:  Re: Дисплейче ssd1306 пали само след ресет

При първоначално пускане не изчакваш докато се установят захранванията?

Автор:  Реконструктор [ Чет Окт 20, 2022 8:18 pm ]
Заглавие:  Re: Дисплейче ssd1306 пали само след ресет

itso.t написа:
При първоначално пускане не изчакваш докато се установят захранванията?


Ми не знам кво значи това, пробвал съм го на лабораторното. :)

Автор:  syscop [ Чет Окт 20, 2022 8:28 pm ]
Заглавие:  Re: Дисплейче ssd1306 пали само след ресет

Когато си пуснеш програмата стъпка по стъпка през debugger-а светва ли? Кога?

Автор:  Реконструктор [ Пет Окт 21, 2022 4:40 pm ]
Заглавие:  Re: Дисплейче ssd1306 пали само след ресет

syscop написа:
Когато си пуснеш програмата стъпка по стъпка през debugger-а светва ли? Кога?


Аз дебъгер не ползвам по принцип. :) А светва като му натъпчеш нещо.
Ама просто му сложих един delay (във вид на размигване на светодиотчето) преди инициализацията на I2C-то и се оправи. Не знам що така му трябва това. :)

Код:
MX_GPIO_Init();

  for(int i=0; i<3; i++)
  {
    HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_RESET);
    HAL_Delay(100);
    HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_SET);
    HAL_Delay(100);
  }

  MX_I2C1_Init();

Автор:  syscop [ Пет Окт 21, 2022 8:14 pm ]
Заглавие:  Re: Дисплейче ssd1306 пали само след ресет

Сложи на мястото на цикъла HAL_Delay(1) и виж дали ще работи нормално.

Автор:  Реконструктор [ Сря Окт 26, 2022 4:02 pm ]
Заглавие:  Re: Дисплейче ssd1306 пали само след ресет

syscop написа:
Сложи на мястото на цикъла HAL_Delay(1) и виж дали ще работи нормално.


1 не става, минимума е 20. :) Странна работа, явно наистина му трябва време да установи някви неща, я напрежение, я клоци.

Автор:  Nikola Kirov [ Сря Окт 26, 2022 4:07 pm ]
Заглавие:  Re: Дисплейче ssd1306 пали само след ресет

Повечето дисплеи които съм подкарвал са така. В докуменатцията на повечето не е отразено че имат време за инициализация или каквото и да е там. Но съм имал случай с такъв дето иска 100 mS след подаване на захранаването.

Автор:  Реконструктор [ Сря Окт 26, 2022 7:38 pm ]
Заглавие:  Re: Дисплейче ssd1306 пали само след ресет

Хубу де, не е болка за умиране. :)

Автор:  ig_ivanov [ Чет Окт 27, 2022 10:29 am ]
Заглавие:  Re: Дисплейче ssd1306 пали само след ресет

Тъй като и аз съм се сбъсквал с този контролер:
На 27ма страница от чаршафа има процедурата за инициализация при включване на захранването:
Power ON sequence:
1. Power ON VDD
2. After VDD become stable, set RES# pin LOW (logic low) for at least 3us (t1) (4) and then HIGH (logic
high).
3. After set RES# pin LOW (logic low), wait for at least 3us (t2). Then Power ON VCC.(1)
4. After VCC become stable, send command AFh for display ON. SEG/COM will be ON after 100ms
(tAF).

Т.е.: най-малко 3мкс след включване на захранването трябва да се активира RESET пина в ниско ново за поне 3мкс и след това да се върне във високо ниво.
По т.4- аз специално включвам дисплея чак след 1/3 сек.

Ползвах ето такъв дисплей, но се отказах от него, защото се оказа, че цветните са по-евтини, и друго си е шареното. Единствения недостатък на цветния е, че се инициализира половин секунда.
Все пак съм предвидил място на платката и за двата.

Прикачени файлове:
tester_Screen.jpg
tester_Screen.jpg [ 121.3 KiB | Прегледано 4761 пъти ]

Автор:  velio [ Чет Окт 27, 2022 3:23 pm ]
Заглавие:  Re: Дисплейче ssd1306 пали само след ресет

Абе най-важното според мен е да удариш един хубав ресет на дисплея, по възможност от микроконтролера, не независимо. И после да го изчакаш малко.

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/