<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=4&amp;t=7538&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2017-06-17T12:25:00+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=7538&amp;mode</id>
<entry>
<author><name><![CDATA[kris777]]></name></author>
<updated>2017-06-17T12:25:00+01:00</updated>
<published>2017-06-17T12:25:00+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=190815#p190815</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=190815#p190815"/>
<title type="html"><![CDATA[Re: Wyświetlacz Winstar OLED sterownik WS0010]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=190815#p190815"><![CDATA[
Czy ktoś ma jeszcze taki LCD Oled .....ja kupiłem w zastępstwie tzw. &quot;zwykłego&quot; z podświetleniem i kontrolą kontrastu ...jednak wynika z tego iż kontroler który jest na tym<br />lcd Oled tzn. WS0010 nie jest w pełni kompatybilny z HD44780 ! .... podłączyłem w/w  linuxa i skrypt pythona który spokojnie działa na zwykłych lcd ( czytaj nie Oled ) a tu niestety <br />działa tylko do pierwszego uruchomienia ..potem LIPA <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":-(" title="Smutny" /> ... jeśli załącze drugi raz ten sam skrypt lub inny progran np lcdproc to są przekłamania ślaczli chaotyczne wpisy zs wszstkich wcześniej uruchomionych czy zamkniętych programów !...czyli raczej nie da się go normalnie użytkować ...no chyba że ktoś zna rozwiązanie ja nie znalazłem <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":-(" title="Smutny" /><br />Lcd używam do OrangePi + lcdproc / mpc /mpd ( radio internetowe ) .... przez tzw. interfejs I2C a nie przez GPIO bo jest mniej przewodów tylko 4 <br />pozdrawiam!<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=17402">kris777</a> — 17 cze 2017, o 12:25</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[iwi]]></name></author>
<updated>2015-12-21T01:06:21+01:00</updated>
<published>2015-12-21T01:06:21+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=148599#p148599</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=148599#p148599"/>
<title type="html"><![CDATA[Re: Wyświetlacz Winstar OLED sterownik WS0010]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=148599#p148599"><![CDATA[
Witajcie ponownie.<br />Kontroler WS0010 pisze że jest kompatybilny z HD44870.<br />W trybie 4bit na bibliotekach Mirka działa poprawnie, ale nie mogę za nic odpalić trybu 8 bitowego. W zasadzie nie jest mi do niczego potrzebny, ale w celach nauki można spróbować.<br />Na początek różnice w datasheetach pomiędzy HD44870 a WS0010<br /><a href="https://obrazkiforum.atnel.pl/1988/e73e4ea9e8d3b384ad6b15a65562381d.png"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/1988/e73e4ea9e8d3b384ad6b15a65562381d.png" alt="Obrazek" /></a><a href="https://obrazkiforum.atnel.pl/1988/05c7062fbdc96ce2e5f9a458fae88e0f.png"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/1988/05c7062fbdc96ce2e5f9a458fae88e0f.png" alt="Obrazek" /></a><br />Analogicznie do biblioteki Mirka próbuje w ten sposób inicjalizację przeprowadzić zgodnie z HD44870<br />na początek ustawienie portów na wyjścia, odczekanie na ustabilizowanie napięcia 100ms i startujemy<br />[syntax=c]// Krok 1 Function set<br />SET_E;<br />lcd_send8bit(0x30); //0b00110000<br />CLR_E;<br />_delay_ms(4.1);<br />SET_E;<br />lcd_send8bit(0x30); //0b00110000<br />CLR_E;<br />_delay_us(100);<br />SET_E;<br />lcd_send8bit(0x30); //0b00110000<br />CLR_E;<br />_delay_us(100);<br /><br />// już można używać Busy Flag<br />lcd_write_cmd( 0x08 ); //0b00001000<br />lcd_write_cmd( LCDC_CLS );<br />lcd_write_cmd( LCDC_ENTRY|LCDC_ENTRYR );[/syntax]<br /><br />lub zgodnie z WS0010<br />[syntax=c]SET_E;<br />lcd_send8bit(0x38); //0b00111000<br />CLR_E;<br />while( (check_BF() &amp; (1&lt;&lt;7)) ); //check busy flag<br />lcd_write_cmd( 0x08 ); //0b00001000<br />lcd_write_cmd( LCDC_CLS );<br />lcd_write_cmd( LCDC_ENTRY|LCDC_ENTRYR );[/syntax]<br /><br />funkcja send8bit wygląda tak<br />[syntax=c]static inline void lcd_send8bit(uint8_t data)<br />{<br />if (data&amp;(1&lt;&lt;0)) PORT(LCD_D0PORT) |= (1&lt;&lt;LCD_D0); else PORT(LCD_D0PORT) &amp;= ~(1&lt;&lt;LCD_D0);<br />if (data&amp;(1&lt;&lt;1)) PORT(LCD_D1PORT) |= (1&lt;&lt;LCD_D1); else PORT(LCD_D1PORT) &amp;= ~(1&lt;&lt;LCD_D1);<br />if (data&amp;(1&lt;&lt;2)) PORT(LCD_D2PORT) |= (1&lt;&lt;LCD_D2); else PORT(LCD_D2PORT) &amp;= ~(1&lt;&lt;LCD_D2);<br />if (data&amp;(1&lt;&lt;3)) PORT(LCD_D3PORT) |= (1&lt;&lt;LCD_D3); else PORT(LCD_D3PORT) &amp;= ~(1&lt;&lt;LCD_D3);<br />if (data&amp;(1&lt;&lt;4)) PORT(LCD_D4PORT) |= (1&lt;&lt;LCD_D4); else PORT(LCD_D4PORT) &amp;= ~(1&lt;&lt;LCD_D4);<br />if (data&amp;(1&lt;&lt;5)) PORT(LCD_D5PORT) |= (1&lt;&lt;LCD_D5); else PORT(LCD_D5PORT) &amp;= ~(1&lt;&lt;LCD_D5);<br />if (data&amp;(1&lt;&lt;6)) PORT(LCD_D6PORT) |= (1&lt;&lt;LCD_D6); else PORT(LCD_D6PORT) &amp;= ~(1&lt;&lt;LCD_D6);<br />if (data&amp;(1&lt;&lt;7)) PORT(LCD_D7PORT) |= (1&lt;&lt;LCD_D7); else PORT(LCD_D7PORT) &amp;= ~(1&lt;&lt;LCD_D7);<br />}[/syntax]<br /><br />W obu przypadkach wyświetlacz nie dycha.<br />znalazłem taki zapis w jakiejść bibliotece do WS0010<br /><em>Initialization sequence is not quite as documented by Winstar. Documented sequence only works on initial power-up. An additional step of putting back into 8-bit mode first is required to handle a warm-restart.</em> co nie brzmi zachęcająco.<br /><br />i jeszcze mam takie pytanie. W dokumentacji zarówno HD jak i Winstara jest napisane, że LCD jest domyślnie inicjalizowany automatycznie po włączeniu zasilania w tryb 8 bit. To dlaczego to nie działa? Może błąd jest w funkcji send8bit?<br /><em>INTERNAL RESET CIRCUIT INITIALIZATION<br />When power is turned ON, WS0010 is initialized automatically by an internal reset circuit . The following items are set (default) during the initialization.<br />1. Display clear<br />2. Function set:<br />DL=&quot;1&quot;: 8-bit interface data<br />N=&quot;0&quot;: 1-line display<br />F=&quot;0&quot;: 5 x 8 dot character font<br />3. Power turn off<br />PWR=”0”<br />4. Display on/off control: D=&quot;0&quot;: Display off C=&quot;0&quot;: Cursor off B=&quot;0&quot;: Blinking off<br />5. Entry mode set<br />I/D=&quot;1&quot;: Increment by 1<br />S=&quot;0&quot;: No shift<br />6. Cursor/Display shift/Mode / Pwr<br />S/C=”0”, R/L=”1”: Shifts cursor position to the right<br />G/C=”0”: Character mode<br />Pwr=”1”: Internal DCDC power on<br />The Busy Flag (BF) is in a busy state until the initialization is completed (BF=&quot;1&quot;). The busy state will be<br />in effect 10 ms after VDD stabilization.</em><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1988">iwi</a> — 21 gru 2015, o 01:06</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Marcin_G]]></name></author>
<updated>2015-12-16T18:28:51+01:00</updated>
<published>2015-12-16T18:28:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=148238#p148238</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=148238#p148238"/>
<title type="html"><![CDATA[Re: Wyświetlacz Winstar OLED sterownik WS0010]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=148238#p148238"><![CDATA[
Hmm, już dokładnie nie pamiętam ale chyba uznałem że tak będzie łatwiej <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=758">Marcin_G</a> — 16 gru 2015, o 18:28</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[iwi]]></name></author>
<updated>2015-12-16T12:20:45+01:00</updated>
<published>2015-12-16T12:20:45+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=148209#p148209</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=148209#p148209"/>
<title type="html"><![CDATA[Re: Wyświetlacz Winstar OLED sterownik WS0010]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=148209#p148209"><![CDATA[
Witaj.<br />A dlaczego zdecydowałeś się na I2C a nie na wbudowaną obsługę SPI?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1988">iwi</a> — 16 gru 2015, o 12:20</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2014-06-24T16:07:34+01:00</updated>
<published>2014-06-24T16:07:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=85626#p85626</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=85626#p85626"/>
<title type="html"><![CDATA[Re: Odp: Wyświetlacz Winstar OLED sterownik WS0010]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=85626#p85626"><![CDATA[
<div class="quotetitle">Marcin_G napisał(a):</div><div class="quotecontent"><br />Znalazłem przyczynę nie działania wyświetlacza. Winny był mój debugger diodowy który sobie zmajstrowałem żeby sprawdzać co się dzieje na liniach danych wysyłanych do wyświetlacza. Niska wydajność prądowa PCF-a plus diody i zabrakło prądu do wysterowania wyświetlacza. Tydzień zmarnowany przez taką pierdołę <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /> No ale nic, kolejne doświadczenie zdobyte <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /></div><br />twoje meczarnie wyszly na + dla nas <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br />wiesz dlaczego?<br /><br />podzieliles sie rozwiazaniem i my tego bledu dzieki tobie nie popelnimy <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />Wysłane z telefonu<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 24 cze 2014, o 16:07</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Marcin_G]]></name></author>
<updated>2014-06-23T14:48:24+01:00</updated>
<published>2014-06-23T14:48:24+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=85483#p85483</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=85483#p85483"/>
<title type="html"><![CDATA[Re: Wyświetlacz Winstar OLED sterownik WS0010]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=85483#p85483"><![CDATA[
Znalazłem przyczynę nie działania wyświetlacza. Winny był mój debugger diodowy który sobie zmajstrowałem żeby sprawdzać co się dzieje na liniach danych wysyłanych do wyświetlacza. Niska wydajność prądowa PCF-a plus diody i zabrakło prądu do wysterowania wyświetlacza. Tydzień zmarnowany przez taką pierdołę <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /> No ale nic, kolejne doświadczenie zdobyte <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=758">Marcin_G</a> — 23 cze 2014, o 14:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Marcin_G]]></name></author>
<updated>2014-06-22T21:37:40+01:00</updated>
<published>2014-06-22T21:37:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=85412#p85412</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=85412#p85412"/>
<title type="html"><![CDATA[Wyświetlacz Winstar OLED sterownik WS0010]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7538&amp;p=85412#p85412"><![CDATA[
Witam<br />Kupiłem wyświetlacz alfanumeryczny OLED oparty na sterowniku WS0010. Sterownik ten jest kompatybilny ze standardowym HD44780. Podłączony tradycyjnie do mikrokontrolera działa bez problemu. Zachciało mi się jednak obsłużyć go poprzez I2C używając do tego celu PCF8574. Zacząłem szukać na forum informacji i w oparciu o wątek gdzie ten temat został poruszony napisałem stosowne funkcje. Niestety nie zadziałało <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /> Od tygodnia z tym walczę aż dziś w przebłysku &quot;geniuszu&quot; <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> wpadłem na pomysł żeby podłączyć zwykły wyświetlacz LCD. No i cud, wyświetlacz działa bez problemu po I2C. Podłączyłem ponownie OLED-a i ciemność. No i teraz brak mi już pomysłów co może być przyczyną tego że gdy jest podłączony do Atmegi to działa a poprzez PCF-a już nie,  gdy pod tym samym programem zwykły LCD działa zarówno z Atmegi jak i  z PCF-a po I2C.<br />Wiem że PCF ma małą wydajność prądową w stanie wysokim i tak się zastanawiam czy to może być przyczyną że wyświetlacz ten nie chce zadziałać gdy jest podłączony do PCF-a, lecz nie wiem jak temu zaradzić żeby to sprawdzić.<br />W linku poniżej jest dokumentacja tego wyświetlacza.<br /><!-- m --><a class="postlink" href="http://dl.btc.pl/kamami_wa/weh001602alpp5n00001.pdf" >http://dl.btc.pl/kamami_wa/weh001602alpp5n00001.pdf</a><!-- m --><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=758">Marcin_G</a> — 22 cze 2014, o 21:37</p><hr />
]]></content>
</entry>
</feed>