<?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=12&amp;t=10240&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-01-22T21:05:58+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=12&amp;t=10240&amp;mode</id>
<entry>
<author><name><![CDATA[pikczu]]></name></author>
<updated>2015-01-22T21:05:58+01:00</updated>
<published>2015-01-22T21:05:58+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115381#p115381</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115381#p115381"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115381#p115381"><![CDATA[
Bartek spadłem z krzesła <!-- m --><a class="postlink" href="http://youtu.be/UKv9Up_4v-E?t=16m15s" >http://youtu.be/UKv9Up_4v-E?t=16m15s</a><!-- m -->  jak usłyszałem o feministce <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=154">pikczu</a> — 22 sty 2015, o 21:05</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[romantv]]></name></author>
<updated>2015-01-22T16:13:26+01:00</updated>
<published>2015-01-22T16:13:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115331#p115331</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115331#p115331"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115331#p115331"><![CDATA[
Witam ponownie.<br /><br />Przesyłam kod poprawnie pracujący, który umożliwia sterowanie układem PCA 9685<br /><br />[syntax=basic4gl]$regfile = &quot;m32def.dat&quot;<br />$crystal = 16000000<br /><br />Enable Interrupts<br /><br />Config Graphlcd = 240 * 128 , Dataport = Portd , Controlport = Porta , Ce = 2 , Cd = 3 , Wr = 0 , Rd = 1 , Reset = 4 , Fs = 5 , Mode = 8<br />Cursor Off<br /><br />' ------------------------- Przełączniki ---------------------------------------<br />Config Pinc.2 = Input<br />Config Pinc.3 = Input<br /><br />Config Pinb.0 = Input<br />Config Pinb.1 = Input<br /><br />Set Portc.2<br />Set Portc.3<br /><br />Set Portb.0<br />Set Portb.1<br /><br />P1 Alias Pinc.2<br />P2 Alias Pinc.3<br /><br />P3 Alias Pinb.1<br />P4 Alias Pinb.0<br /><br />Config Scl = Portc.0<br />Config Sda = Portc.1<br /><br />I2cinit<br /><br /><br />' ------------------------- Zmienne --------------------------------------------<br />Dim A As Byte<br />Dim B As Byte<br />Dim Adres As Byte<br />Dim Led As Byte<br />Dim Dane(16) As Byte<br /><br /><br />' zmienna określająca moc świecenia diody LED<br /><br />Dim D(2) As Word<br />Dim H(2) As Byte<br />Dim L(2) As Byte<br /><br /><br />' LED<br /><br />Const Led_0_on_l = 6<br />Const Led_0_on_h = 7<br />Const Led_0_off_l = 8<br />Const Led_0_off_h = 9<br /><br />Const Led_1_on_l = 10<br />Const Led_1_on_h = 11<br />Const Led_1_off_l = 12<br />Const Led_1_off_h = 13<br /><br />Const Led_2_on_l = 14<br />Const Led_2_on_h = 15<br />Const Led_2_off_l = 16<br />Const Led_2_off_h = 17<br /><br />Const Led_3_on_l = 18<br />Const Led_3_on_h = 19<br />Const Led_3_off_l = 20<br />Const Led_3_off_h = 21<br /><br />Const Led_4_on_l = 22<br />Const Led_4_on_h = 23<br />Const Led_4_off_l = 24<br />Const Led_4_off_h = 25<br /><br />Const Led_5_on_l = 26<br />Const Led_5_on_h = 27<br />Const Led_5_off_l = 28<br />Const Led_5_off_h = 29<br /><br />Const Led_6_on_l = 30<br />Const Led_6_on_h = 31<br />Const Led_6_off_l = 32<br />Const Led_6_off_h = 33<br /><br />Const Led_7_on_l = 34<br />Const Led_7_on_h = 35<br />Const Led_7_off_l = 36<br />Const Led_7_off_h = 37<br /><br />Const Led_8_on_l = 38<br />Const Led_8_on_h = 39<br />Const Led_8_off_l = 40<br />Const Led_8_off_h = 41<br /><br />Const Led_9_on_l = 42<br />Const Led_9_on_h = 43<br />Const Led_9_off_l = 44<br />Const Led_9_off_h = 45<br /><br />Const Led_10_on_l = 46<br />Const Led_10_on_h = 47<br />Const Led_10_off_l = 48<br />Const Led_10_off_h = 49<br /><br />Const Led_11_on_l = 50<br />Const Led_11_on_h = 51<br />Const Led_11_off_l = 52<br />Const Led_11_off_h = 53<br /><br />Const Led_12_on_l = 54<br />Const Led_12_on_h = 55<br />Const Led_12_off_l = 56<br />Const Led_12_off_h = 57<br /><br />Const Led_13_on_l = 58<br />Const Led_13_on_h = 59<br />Const Led_13_off_l = 60<br />Const Led_13_off_h = 61<br /><br />Const Led_14_on_l = 62<br />Const Led_14_on_h = 63<br />Const Led_14_off_l = 64<br />Const Led_14_off_h = 65<br /><br />Const Led_15_on_l = 66<br />Const Led_15_on_h = 67<br />Const Led_15_off_l = 68<br />Const Led_15_off_h = 69<br /><br />Const Led_all_on_l = 250<br />Const Led_all_on_h = 251<br />Const Led_all_off_l = 252<br />Const Led_all_off_h = 253<br /><br />' Adres PCA9685<br />Const Adres_do_wpisu = 224<br />Const Adres_do_odczy = 225<br /><br />' Inne stałe<br />Const Mode1 = 0<br />Const Mode2 = 1<br />Const Subadr1 = 2<br />Const Subadr2 = 3<br />Const Subadr3 = 4<br />Const All_call_adr = 5<br /><br />Const Pre_scale = 254<br />Const Test_mode = 255<br /><br />D(1) = 2000<br />D(2) = 50<br /><br />Cls<br /><br />       I2cstart<br />         I2cwbyte Adres_do_wpisu<br />         I2cwbyte Mode1<br />         I2cwbyte &amp;B00100000<br />       I2cstop<br /><br />       I2cstart<br />         I2cwbyte Adres_do_wpisu<br />         I2cwbyte Mode2<br />         I2cwbyte &amp;B11111110<br />       I2cstop<br /><br />Do<br /><br /><br />' Przycisk P1 jak jest włączony<br />If P1 = 0 Then<br /><br />If D(2) &lt; 4000 Then<br /><br />' Zmienna typu Word<br />D(2) = D(2) + 20<br /><br />' Dzielenie zmiennej<br />L(1) = Low(d(1))<br />H(1) = High(d(1))<br /><br />L(2) = Low(d(2))<br />H(2) = High(d(2))<br /><br /><br /><br />       I2cstart<br />         I2cwbyte Adres_do_wpisu<br />         I2cwbyte Led_15_on_l<br />         I2cwbyte Mode1<br />         I2cwbyte Mode1<br />         I2cwbyte L(2)<br />         I2cwbyte H(2)<br />       I2cstop<br /><br /><br /><br />Waitms 100<br />End If<br /><br />End If<br /><br />Loop<br /><br /><br /><br />End[/syntax]<br /><br /><br />Pozdrawiam i wszystkim dziękuję za pomoc.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7904">romantv</a> — 22 sty 2015, o 16:13</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[pikczu]]></name></author>
<updated>2015-01-21T23:18:23+01:00</updated>
<published>2015-01-21T23:18:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115231#p115231</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115231#p115231"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115231#p115231"><![CDATA[
Romantv  bez scalaka na stole nasza pomoc mocno sie zaweza zrob cos na podobienstwo tych subow jak do 9551 do odczytu uzyj funkcji.<br />Ja ide spac dobranoc<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=154">pikczu</a> — 21 sty 2015, o 23:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[romantv]]></name></author>
<updated>2015-01-21T22:24:54+01:00</updated>
<published>2015-01-21T22:24:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115223#p115223</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115223#p115223"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115223#p115223"><![CDATA[
Tak masz rację, jednak na forach coraz częściej spotykam się z brakiem wyrozumiałości a nawet chamstwem i docinkami. Nie były one skierowane pod moim adresem ale czytając posty widzę co inni piszą. Jeszcze raz dziękuję i jutro zapieram się do testów.<br />Pozdrawiam.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7904">romantv</a> — 21 sty 2015, o 22:24</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[pikczu]]></name></author>
<updated>2015-01-21T22:03:34+01:00</updated>
<published>2015-01-21T22:03:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115219#p115219</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115219#p115219"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115219#p115219"><![CDATA[
Bartek masz oczywiście racje ale jak na razie to większość w tym dziale troli bo jak już coś naskrobią to zmienia to rangę na tajne łamane przez poufne.<br /><br />Na tego PCA9551 pisałem wieczorami po pracy i chyba zajęło mi to 5 wieczorów plus chyba ze 2 godziny w weekend włosy z głowy rwałem bo nie mogłem nic odczytać a mogłem ustawiać.<br />Okazało się że nie doczytałem w PDFie że jest tam &quot;repeat start&quot; a ja dawałem ponownie I2Cstart.<br /><br />Dodam tylko ze suby które dodałem nie działają z biblioteka  $LIB &quot;I2CV2.LIB&quot; sprawdzone w wersji 2.0.7.7<br /><br />to A to skrót od Acknowledge<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=154">pikczu</a> — 21 sty 2015, o 22:03</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[romantv]]></name></author>
<updated>2015-01-21T21:53:24+01:00</updated>
<published>2015-01-21T21:53:24+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115214#p115214</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115214#p115214"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115214#p115214"><![CDATA[
Jak się przyglądam czytam posty to staje się to coraz prostsze. Oczywiście procedury będą bo muszę one być i wykorzystam do tego wyświetlacz graficzny 240x128.<br /><br />Pozdrawiam.<br /><br />PS. Nigdy mnie nie interesowały gotowe programy innych autorów, jedynie zawsze korzystam z porad czy podpowiedzi <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" />. Kiedy nie znam odpowiedzi czy mam problem ze zrozumieniem dokumentacji. Projekt, który robię jest oparty wyłącznie o mój pomysł i schemat.<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 2 minutach ]</span></strong><br /><br /><div class="quotetitle">pikczu napisał(a):</div><div class="quotecontent"><br />ACK i NACK dodajesz przy odczycie jak obierasz tylko jeden bajt to dajesz NACK bo już kończysz czyli NOT ACKNOWLEDGE ale jak odbierasz więcej niż jeden musisz dać przy każdym NIE ostatnim odczycie ACK<br /></div><br /><br />To wiem tylko zastanawiałem się nad &quot;A&quot;.  dziękuję.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7904">romantv</a> — 21 sty 2015, o 21:53</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[pikczu]]></name></author>
<updated>2015-01-21T21:46:31+01:00</updated>
<published>2015-01-21T21:46:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115211#p115211</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115211#p115211"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115211#p115211"><![CDATA[
ACK i NACK dodajesz przy odczycie jak obierasz tylko jeden bajt to dajesz NACK bo już kończysz czyli NOT ACKNOWLEDGE ale jak odbierasz więcej niż jeden musisz dać przy każdym NIE ostatnim odczycie ACK<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=154">pikczu</a> — 21 sty 2015, o 21:46</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[romantv]]></name></author>
<updated>2015-01-21T21:16:03+01:00</updated>
<published>2015-01-21T21:16:03+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115199#p115199</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115199#p115199"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115199#p115199"><![CDATA[
Oczywiście mogę to poprawić i to uczynię. Kod, który pisałem miał mi służyć tylko do przetestowania i opracowania składni. Program miałem dopiero pisać i stąd te problemy. Już wiem, że powinienem jasno i czytelnie pisać i dopasowywać się do PDF-a. Bardzo dziękuję za każdą radę, jutro zabieram się za kolejne testy. <br /><br />Jeszcze raz dziękuję Wam za pomoc.<br /><br /><br />PS<br /><br /><a href="http://forum.atnel.pl/_obrazki/o/7904/d706b1837a3544658de7ae2a6076d7fe.JPG"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/7904/d706b1837a3544658de7ae2a6076d7fe.JPG" alt="Obrazek" /></a><br /><br />Rozumiem, że w tabeli &quot;A&quot; jest to parametr ACK, lub Nack-ostatni parametr do odczytu.<br />Mogę go pominąć w składni?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7904">romantv</a> — 21 sty 2015, o 21:16</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[pikczu]]></name></author>
<updated>2015-01-21T20:28:30+01:00</updated>
<published>2015-01-21T20:28:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115188#p115188</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115188#p115188"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115188#p115188"><![CDATA[
Witam proponuej przepisać stałe jednak z wartoscami bitowymi a nie dziesiętnymi kod zaraz sie rozrośnie a to od poczatku jets bardzo słabo czytelne.<br />Co by nie mówic jednak jestesmy zwrokowcami  <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" />  szybciej mozna to porównac z PDf-em.<br />Zaraz <strong>romantv</strong>  pogubisz sie w tym a tym bardziej my.<br />Tak że kolejnt raz zwracam uwagę na czytelność.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=154">pikczu</a> — 21 sty 2015, o 20:28</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[romantv]]></name></author>
<updated>2015-01-21T16:14:10+01:00</updated>
<published>2015-01-21T16:14:10+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115147#p115147</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115147#p115147"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115147#p115147"><![CDATA[
Witam ponownie i dziękuję za wskazówki, proszę o weryfikację kodu.<br /><br />[syntax=basic4gl]$regfile = &quot;m32def.dat&quot;<br />$crystal = 16000000<br /><br />Enable Interrupts<br /><br />Config Graphlcd = 240 * 128 , Dataport = Portd , Controlport = Porta , Ce = 2 , Cd = 3 , Wr = 0 , Rd = 1 , Reset = 4 , Fs = 5 , Mode = 8<br />Cursor Off<br /><br />' ------------------------- Przełączniki ---------------------------------------<br />Config Pinc.2 = Input<br />Config Pinc.3 = Input<br /><br />Config Pinb.0 = Input<br />Config Pinb.1 = Input<br /><br />Set Portc.2<br />Set Portc.3<br /><br />Set Portb.0<br />Set Portb.1<br /><br />P1 Alias Pinc.2<br />P2 Alias Pinc.3<br /><br />P3 Alias Pinb.1<br />P4 Alias Pinb.0<br /><br />Config Scl = Portc.0<br />Config Sda = Portc.1<br /><br />I2cinit<br /><br /><br />' ------------------------- Zmienne --------------------------------------------<br />Dim A As Byte<br />Dim B As Byte<br />Dim Adres As Byte<br />Dim Led As Byte<br /><br /><br />' zmienna określająca moc świecenia diody LED<br /><br />Dim D(2) As Word<br />Dim H(2) As Byte<br />Dim L(2) As Byte<br /><br /><br />' LED<br /><br />Const Led_0_on_l = 6<br />Const Led_0_on_h = 7<br />Const Led_0_off_l = 8<br />Const Led_0_off_h = 9<br /><br />Const Led_1_on_l = 10<br />Const Led_1_on_h = 11<br />Const Led_1_off_l = 12<br />Const Led_1_off_h = 13<br /><br />Const Led_2_on_l = 14<br />Const Led_2_on_h = 15<br />Const Led_2_off_l = 16<br />Const Led_2_off_h = 17<br /><br />Const Led_3_on_l = 18<br />Const Led_3_on_h = 19<br />Const Led_3_off_l = 20<br />Const Led_3_off_h = 21<br /><br />Const Led_4_on_l = 22<br />Const Led_4_on_h = 23<br />Const Led_4_off_l = 24<br />Const Led_4_off_h = 25<br /><br />Const Led_5_on_l = 26<br />Const Led_5_on_h = 27<br />Const Led_5_off_l = 28<br />Const Led_5_off_h = 29<br /><br />Const Led_6_on_l = 30<br />Const Led_6_on_h = 31<br />Const Led_6_off_l = 32<br />Const Led_6_off_h = 33<br /><br />Const Led_7_on_l = 34<br />Const Led_7_on_h = 35<br />Const Led_7_off_l = 36<br />Const Led_7_off_h = 37<br /><br />Const Led_8_on_l = 38<br />Const Led_8_on_h = 39<br />Const Led_8_off_l = 40<br />Const Led_8_off_h = 41<br /><br />Const Led_9_on_l = 42<br />Const Led_9_on_h = 43<br />Const Led_9_off_l = 44<br />Const Led_9_off_h = 45<br /><br />Const Led_10_on_l = 46<br />Const Led_10_on_h = 47<br />Const Led_10_off_l = 48<br />Const Led_10_off_h = 49<br /><br />Const Led_11_on_l = 50<br />Const Led_11_on_h = 51<br />Const Led_11_off_l = 52<br />Const Led_11_off_h = 53<br /><br />Const Led_12_on_l = 54<br />Const Led_12_on_h = 55<br />Const Led_12_off_l = 56<br />Const Led_12_off_h = 57<br /><br />Const Led_13_on_l = 58<br />Const Led_13_on_h = 59<br />Const Led_13_off_l = 60<br />Const Led_13_off_h = 61<br /><br />Const Led_14_on_l = 62<br />Const Led_14_on_h = 63<br />Const Led_14_off_l = 64<br />Const Led_14_off_h = 65<br /><br />Const Led_15_on_l = 66<br />Const Led_15_on_h = 67<br />Const Led_15_off_l = 68<br />Const Led_15_off_h = 69<br /><br />Const Led_all_on_l = 250<br />Const Led_all_on_h = 251<br />Const Led_all_off_l = 252<br />Const Led_all_off_h = 253<br /><br />' Adres PCA9685<br />Const Adres_do_wpisu = 224<br />Const Adres_do_odczy = 225<br /><br />' Inne stałe<br />Const Mode1 = 0<br />Const Mode2 = 1<br />Const Subadr1 = 2<br />Const Subadr2 = 3<br />Const Subadr3 = 4<br />Const All_call_adr = 5<br /><br />Const Pre_scale = 254<br />Const Test_mode = 255<br /><br /><br /><br /><br />D(1) = 50<br />D(2) = 4095<br /><br />L(1) = Low(d(1))<br />H(1) = High(d(1))<br /><br />L(2) = Low(d(2))<br />H(2) = High(d(2))<br /><br />Cls<br /><br /><br />Do<br /><br /><br /><br /><br /><br />' Przycisk P1 jak jest włączony<br />If P1 = 0 Then<br /><br /><br />If D(1) &lt; 4000 Then<br /><br />' Zmienna typu Word<br />D(1) = D(1) + 20<br /><br />' Dzielenie zmiennej<br />L(1) = Low(d(1))<br />H(1) = High(d(1))<br /><br />L(2) = Low(d(2))<br />H(2) = High(d(2))<br /><br /><br /><br />' ============= blok 1 =========================<br /><br />         I2cstart<br />         I2cwbyte Adres_do_wpisu<br /><br />         I2cwbyte Mode1<br />         I2cwbyte &amp;B00100000<br />         I2cstop<br /><br /><br />' ============= blok 2 =========================<br /><br />         I2cstart<br />         I2cwbyte Adres_do_wpisu<br /><br />         I2cwbyte Mode2<br />         I2cwbyte &amp;B11111110<br /><br />         I2cwbyte Subadr1<br />         I2cwbyte &amp;B11111110<br /><br />         I2cstop<br /><br /><br />' ============= blok 3 =========================<br /><br />         I2cstart<br />         I2cwbyte Adres_do_wpisu<br /><br />         I2cwbyte Led_1_on_l<br />         I2cwbyte Led_1_on_h<br />         I2cwbyte Mode1<br /><br />         I2cwbyte L(1)<br />         I2cwbyte H(1)<br /><br />         I2cwbyte Led_1_off_l<br />         I2cwbyte Led_1_off_h<br />         I2cwbyte Mode1<br /><br />         I2cwbyte L(2)<br />         I2cwbyte H(2)<br />         I2cstop<br /><br /><br /><br />I2cstop<br /><br />'Wyświetla informację o zmiennej:<br /><br />Locate 1 , 1<br />Lcd D(1) ; &quot;  -  &quot; ; H(1) ; &quot;  -  &quot; ; L(1)<br /><br />Locate 2 , 1<br />Lcd D(2) ; &quot;  -  &quot; ; H(2) ; &quot;  -  &quot; ; L(2)<br /><br /><br />Waitms 100<br />End If<br /><br />end If<br /><br />loop<br /><br />End[/syntax]<br /><br /><br />Tak zapisany kod pozwala zapalać diodę nr 1, kolejne włączanie przycisku powoduje rozjaśnianie diody1 ponieważ zmienia się wartość zmiennej D(1).<br />Z pewnością jest błąd i proszę o poprawienie jego.<br />Blok 1 i 2 to przypadek i bez niego nie działa, natomiast blok 3 to jest czytelny i wydaje się być poprawny.<br /><br />Dziękuję za pomoc, pozdrawiam.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7904">romantv</a> — 21 sty 2015, o 16:14</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[romantv]]></name></author>
<updated>2015-01-21T10:17:33+01:00</updated>
<published>2015-01-21T10:17:33+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115087#p115087</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115087#p115087"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115087#p115087"><![CDATA[
ACK lub NACK to parametry stosowane przy odczycie. A mi chodzi o zapis ustawień do układu PCA 9685. Tak naprawdę jak powinna prawidłowo wyglądać składnie w Bascomie do np. zapalenia diody LED 5.<br /><br />Ja to tak zrobiłem (jest to fragment kodu):<br /><br />[syntax=basic4gl]D(1) = 4095<br />D(2) = 1<br /><br />L(1) = Low(d(1))<br />H(1) = High(d(1))<br /><br />L(2) = Low(d(2))<br />H(2) = High(d(2))<br /><br />'==============================<br />         I2cstart<br />         I2cwbyte 224<br /><br />         I2cwbyte 1<br />         I2cwbyte &amp;B11111110<br /><br />         I2cwbyte 2<br />         I2cwbyte &amp;B11111110<br /><br />         I2cstop<br /><br />'==============================================================<br /><br />         I2cstart<br />         I2cwbyte 224<br /><br />        'Adresy Led od 2 do 62 co 4<br />        'Led 3<br />         I2cwbyte 26<br />         I2cwbyte 27<br />         I2cwbyte 0<br /><br />         I2cwbyte L(1)<br />         I2cwbyte H(1)<br /><br />         I2cwbyte 26<br />         I2cwbyte 27<br />         I2cwbyte 0<br /><br />         I2cwbyte L(2)<br />         I2cwbyte H(2)<br />         I2cstop[/syntax]<br /><br />Kod działa, jednak nie jestem przekonany, że to dobrze robię. Ponieważ nie mogę w ten sposób zapalić ostatniej diody LED (16).<br /><br />Dziękuję za pomoc.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7904">romantv</a> — 21 sty 2015, o 10:17</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[romantv]]></name></author>
<updated>2015-01-21T09:54:18+01:00</updated>
<published>2015-01-21T09:54:18+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115084#p115084</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115084#p115084"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=115084#p115084"><![CDATA[
Kontynuując temat <br /><br />przykład kodu:<br />[syntax=basic4gl]I2cstart<br />         I2cwbyte 224<br /><br />         'MODE1 zapala all led<br />         'I2cwbyte 0<br />         'I2cwbyte &amp;B11111110<br /><br />         I2cwbyte 1<br />         I2cwbyte &amp;B11111110<br /><br />         I2cwbyte 2<br />         I2cwbyte &amp;B11111110<br /><br />         I2cstop<br /><br />'==============================================================<br /><br /><br /><br /><br />         I2cstart<br />         I2cwbyte 224<br /><br />        'Adresy Led od 2 do 62 co 4<br />        'Led 3<br />         I2cwbyte A<br />         I2cwbyte B<br />         I2cwbyte 0<br /><br />         I2cwbyte L(1)<br />         I2cwbyte H(1)<br /><br />         I2cwbyte A<br />         I2cwbyte B<br />         I2cwbyte 0<br /><br />         I2cwbyte L(2)<br />         I2cwbyte H(2)<br />         I2cstop[/syntax] <br /><br /><br />Idzie sterować poszczególnymi diodami LED. Nie jest to jeszcze rozwiązana sprawa i stąd moje pytanie:<br /><br />Na wykresie przebiegu sygnału co oznacza &quot;A&quot; i jaką wartość powinien mieć ?<br /><br />Dziękuję.<br /><br /><br /><a href="http://forum.atnel.pl/_obrazki/o/7904/7707111d02a4ab8c01fd2d9e41048a5d.JPG"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/7904/7707111d02a4ab8c01fd2d9e41048a5d.JPG" alt="Obrazek" /></a><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7904">romantv</a> — 21 sty 2015, o 09:54</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[romantv]]></name></author>
<updated>2015-01-16T22:20:42+01:00</updated>
<published>2015-01-16T22:20:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114442#p114442</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114442#p114442"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114442#p114442"><![CDATA[
Dziękuję.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7904">romantv</a> — 16 sty 2015, o 22:20</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[pikczu]]></name></author>
<updated>2015-01-16T22:12:55+01:00</updated>
<published>2015-01-16T22:12:55+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114441#p114441</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114441#p114441"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114441#p114441"><![CDATA[
<img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /> Sorry ale nie będę poprawiał twojego &quot;kodu&quot;.<br />Żeby go &quot;poprawić&quot; trzeba  dopisać z 300 linijek i mieć ten układ na stole.<br />Zobacz jak ja napisałem dla PCA9551 który ma tylko 8 ledów i dwa PWM-y a nie 16 ledów i tyle samo PWM kanałów.<br />Powalcz sam  a jak już coś konkretnego napiszesz to Ci pomogę.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=154">pikczu</a> — 16 sty 2015, o 22:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Jaglarz]]></name></author>
<updated>2015-01-16T22:03:37+01:00</updated>
<published>2015-01-16T22:03:37+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114437#p114437</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114437#p114437"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114437#p114437"><![CDATA[
<!-- l --><a class="postlink-local" href="http://forum.atnel.pl/topic7402.html" >topic7402.html</a><!-- l --><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=471">Jaglarz</a> — 16 sty 2015, o 22:03</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[romantv]]></name></author>
<updated>2015-01-16T21:56:35+01:00</updated>
<published>2015-01-16T21:56:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114435#p114435</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114435#p114435"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114435#p114435"><![CDATA[
Dziękuję za odpowiedź.<br />PDF-a posiadam <br /><!-- m --><a class="postlink" href="https://www.adafruit.com/datasheets/PCA9685.pdf" >https://www.adafruit.com/datasheets/PCA9685.pdf</a><!-- m --><br />Tak jak pisałem potrzebuję sterować układem PCA9685, ATmegą po I2C część kodu:<br /><br />'Adres<br />Zi2c(4) = 224<br />Oi2c(4) = 225<br /><br />'Zmienne dane<br />D(1) = 2000<br />D(2) = 3000<br /><br />'Podział liczby na 2 * po byte czyli     00000000      00000000<br />L(1) = Low(d(1)) <br />H(1) = High(d(1))<br /><br /><br />L(2) = Low(d(2))<br />H(2) = High(d(2))<br /><br />I2cstart<br />I2cwbyte Zi2c(4) 'Adres<br /><br /><br />'LED0_ON_L read/write LED0 output and brightness control byte 0<br /><br />I2cwbyte 00000110<br /><br />' LED0_ON_H read/write LED0 output and brightness control byte 1<br /><br />I2cwbyte 00000111<br /><br /><br />'Wartość podzielona 1<br />I2cwbyte H(1)<br />I2cwbyte L(1)<br /><br />'Wartość podzielona 2<br />I2cwbyte H(2)<br />I2cwbyte L(2)<br /><br />I2cstop<br /><br />Proszę o poprawienie tego kodu, dziękuję.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7904">romantv</a> — 16 sty 2015, o 21:56</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[pikczu]]></name></author>
<updated>2015-01-17T23:29:11+01:00</updated>
<published>2015-01-16T21:08:58+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114429#p114429</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114429#p114429"/>
<title type="html"><![CDATA[Re: Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114429#p114429"><![CDATA[
PDF-a masz ?? <br />Tam jest wszytko idealnie banalnie rozpisane wystarczy skopiować jak małpa.<br />Jak pisałem suba dla PCA9551 nie było tam takiej &quot;idiot proof&quot; tabelki.<br /><br />Tu masz wersie dla PCA9551 jako suby i funkcje:<br /><br />Tu jest wybór leda i trybu pracy:<br />[syntax=basic4gl]$nocompile<br />'*****************************************************************************************<br />'**********PCA9551 ver 1.0  by Pawel Labedz aka Pikczu 2014*******************************<br />'*********************Pawel.labedz@gmail.com**********************************************<br />'*****************************************************************************************<br />'-----------------------------------------------------------------------------------------<br />'Name to include: &quot;Sub Pca9551_led.inc&quot;<br />'Syntax:  Call Pca9551_ledv2(led number  , mode 0 or 1 or 2 or 3 )<br />'Make sure you add constant in to main.bas<br />'Const Led0_on = &amp;B11111100<br />'Const Led0_off = &amp;B00000001<br />'Const Led0_pwm0 = &amp;B00000010                                ' make sure you send first off mask then<br />'Const Led0_pwm1 = &amp;B00000011                                'use OR  after default condition 01010101 to change to  PWM1<br />'Const Led1_on = &amp;B11110011<br />'Const Led1_off = &amp;B00000100<br />'Const Led1_pwm0 = &amp;B00001000<br />'Const Led1_pwm1 = &amp;B00001100                                'use OR  after default condition 01010101 to change to  PWM1<br />'Const Led2_on = &amp;B11001111<br />'Const Led2_off = &amp;B00010000<br />'Const Led2_pwm0 = &amp;B00100000<br />'Const Led2_pwm1 = &amp;B00110000                                'use OR  after default condition 01010101 to change to  PWM1<br />'Const Led3_on = &amp;B00111111<br />'Const Led3_off = &amp;B01000000<br />'Const Led3_pwm0 = &amp;B10000000<br />'Const Led3_pwm1 = &amp;B11000000                                'use OR  after default condition 01010101 to change to  PWM1<br />'Const Led4_on = &amp;B11111100<br />'Const Led4_off = &amp;B00000001<br />'Const Led4_pwm0 = &amp;B00000010<br />'Const Led4_pwm1 = &amp;B00000011                                'use OR  after default condition 01010101 to change to  PWM1<br />'Const Led5_on = &amp;B11110011<br />'Const Led5_off = &amp;B00000100<br />'Const Led5_pwm0 = &amp;B00001000<br />'Const Led5_pwm1 = &amp;B00001100                                'use OR  after default condition 01010101 to change to  PWM1<br />'Const Led6_on = &amp;B11001111<br />'Const Led6_off = &amp;B00010000<br />'Const Led6_pwm0 = &amp;B00100000<br />'Const Led6_pwm1 = &amp;B00110000                                'use OR  after default condition 01010101 to change to  PWM1<br />'Const Led7_on = &amp;B00111111<br />'Const Led7_off = &amp;B01000000<br />'Const Led7_pwm0 = &amp;B01000000<br />'Const Led7_pwm1 = &amp;B11000000                                'use OR  after default condition 01010101 to change to  PWM1<br />'Const 0to3led_off = &amp;B01010101<br />'Const 0to3led_on = &amp;B00000000<br />'Const 4to7led_off = &amp;B01010101<br />'Const 4to7led_on = &amp;B00000000<br />'-----------------------------------------------------------------------------------------<br /><br />'PCA9551 Led driver with PWM<br />Sub Pca9551_led(byval Led As Byte , Byval Led_mode As Byte )<br />   Dbg<br />   'Const Pca9551rd = 193<br />   'Const Pca9551wr = 192<br />   Local Bufor_1 As Byte<br />   Local Bufor_2 As Byte<br />   Bufor_1 = 0<br />   Bufor_2 = 0<br />   I2cstart<br />   I2cwbyte Pca9551wr<br />   I2cwbyte &amp;B00010101<br />   I2crepstart<br />   I2cwbyte Pca9551rd<br />   I2crbyte Bufor_1 , Ack                                   'led 0 to 3<br />   I2crbyte Bufor_2 , Nack                                  'led 4 to 7<br />   I2cstop<br />   I2cstart<br />   I2cwbyte Pca9551wr<br />   If Led &gt; 3 Then<br />      I2cwbyte 6<br />   Else<br />      I2cwbyte 5<br />   End If<br />   Select Case Led<br /><br />      Case 0<br />         Select Case Led_mode<br />            Case 0                                          ' led0_off<br />               Bufor_1 = Bufor_1 And Led0_on                'AND zerowanie<br />               Bufor_1 = Bufor_1 Or Led0_off                ' OR ustwianie<br />            Case 1                                          'led0_on<br />               Bufor_1 = Bufor_1 And Led0_on                'AND zerowanie<br />            Case 2                                          'led0 PWM0<br />               Bufor_1 = Bufor_1 And Led0_on<br />               Bufor_1 = Bufor_1 Or Led0_pwm0<br />            Case 3                                          'led0 pwm1<br />               Bufor_1 = Bufor_1 Or Led0_pwm1<br />         End Select<br />      Case 1                                                'led 1<br />         Select Case Led_mode<br />            Case 0                                          ' led1_off<br />               Bufor_1 = Bufor_1 And Led1_on                'AND zerowanie<br />               Bufor_1 = Bufor_1 Or Led1_off                ' OR ustwianie<br />            Case 1                                          'led1_on<br />               Bufor_1 = Bufor_1 And Led1_on                'AND zerowanie<br />            Case 2                                          'led1 PWM0<br />               Bufor_1 = Bufor_1 And Led1_on<br />               Bufor_1 = Bufor_1 Or Led1_pwm0<br />            Case 3                                          'led1 pwm1<br />               Bufor_1 = Bufor_1 Or Led1_pwm1<br />         End Select<br />      Case 2                                                'led 2<br />         Select Case Led_mode<br />            Case 0                                          ' led2_off<br />               Bufor_1 = Bufor_1 And Led2_on                'AND zerowanie<br />               Bufor_1 = Bufor_1 Or Led2_off                ' OR ustwianie<br />            Case 1                                          'led2_on<br />               Bufor_1 = Bufor_1 And Led2_on                'AND zerowanie<br />            Case 2                                          'led2 PWM0<br />               Bufor_1 = Bufor_1 And Led2_on<br />               Bufor_1 = Bufor_1 Or Led2_pwm0<br />            Case 3                                          'led2 pwm1<br />               Bufor_1 = Bufor_1 Or Led2_pwm1<br />         End Select<br />      Case 3                                                'led3<br />         Select Case Led_mode<br />            Case 0                                          ' led3_off<br />               Bufor_1 = Bufor_1 And Led3_on                'AND zerowanie<br />               Bufor_1 = Bufor_1 Or Led3_off                ' OR ustwianie<br />            Case 1                                          'led3_on<br />               Bufor_1 = Bufor_1 And Led3_on                'AND zerowanie<br />            Case 2                                          'led3 PWM0<br />               Bufor_1 = Bufor_1 And Led3_on<br />               Bufor_1 = Bufor_1 Or Led3_pwm0<br />            Case 3                                          'led3 pwm1<br />               Bufor_1 = Bufor_1 Or Led3_pwm1<br />         End Select<br />      Case 4                                                'led 4<br />         Select Case Led_mode<br />            Case 0                                          ' led4_off<br />               Bufor_2 = Bufor_2 And Led4_on                'AND zerowanie<br />               Bufor_2 = Bufor_2 Or Led4_off                ' OR ustwianie<br />            Case 1                                          'led4_on<br />               Bufor_2 = Bufor_2 And Led4_on                'AND zerowanie<br />            Case 2                                          'led4 PWM0<br />               Bufor_2 = Bufor_2 And Led4_on<br />               Bufor_2 = Bufor_2 Or Led4_pwm0<br />            Case 3                                          'led4 pwm1<br />               Bufor_2 = Bufor_2 Or Led4_pwm1<br />         End Select<br />      Case 5                                                'led 5<br />         Select Case Led_mode<br />            Case 0                                          ' led5_off<br />               Bufor_2 = Bufor_2 And Led5_on                'AND zerowanie<br />               Bufor_2 = Bufor_2 Or Led5_off                ' OR ustwianie<br />            Case 1                                          'led5_on<br />               Bufor_2 = Bufor_2 And Led5_on                'AND zerowanie<br />            Case 2                                          'led5 PWM0<br />               Bufor_2 = Bufor_2 And Led5_on<br />               Bufor_2 = Bufor_2 Or Led5_pwm0<br />            Case 3                                          'led3 pwm1<br />               Bufor_2 = Bufor_2 Or Led5_pwm1<br />         End Select<br />      Case 6                                                'led 6<br />         Select Case Led_mode<br />            Case 0                                          ' led6_off<br />               Bufor_2 = Bufor_2 And Led6_on                'AND zerowanie<br />               Bufor_2 = Bufor_2 Or Led6_off                ' OR ustwianie<br />            Case 1                                          'led6_on<br />               Bufor_2 = Bufor_2 And Led6_on                'AND zerowanie<br />            Case 2                                          'led6 PWM0<br />               Bufor_2 = Bufor_2 And Led6_on<br />               Bufor_2 = Bufor_2 Or Led6_pwm0<br />            Case 3                                          'led6 pwm1<br />               Bufor_2 = Bufor_2 Or Led6_pwm1<br />         End Select<br />      Case 7                                                'led 7<br />         Select Case Led_mode<br />            Case 0                                          ' led7_off<br />               Bufor_2 = Bufor_2 And Led7_on                'AND zerowanie<br />               Bufor_2 = Bufor_2 Or Led7_off                ' OR ustwianie<br />            Case 1                                          'led7_on<br />               Bufor_2 = Bufor_2 And Led7_on                'AND zerowanie<br />            Case 2                                          'led7 PWM0<br />               Bufor_2 = Bufor_2 And Led7_on<br />               Bufor_2 = Bufor_2 Or Led7_pwm0<br />            Case 3                                          'led7 pwm1<br />               Bufor_2 = Bufor_2 Or Led7_pwm1<br />         End Select<br /><br />   End Select<br /><br />   If Led &gt; 3 Then<br />      I2cwbyte Bufor_2<br />   Else<br />      I2cwbyte Bufor_1<br />   End If<br />   I2cstop<br />End Sub<br />'-----------------------------------------------------------------------------------------[/syntax]<br /><br />Tu jest ustawienie jednego z dwóch PWM-ów <br />[syntax=basic4gl]$nocompile<br />'*****************************************************************************************<br />'**********PCA9551 ver 1.0  by Pawel Labedz aka Pikczu 2014*******************************<br />'*********************Pawel.labedz@gmail.com**********************************************<br />'*****************************************************************************************<br />'-----------------------------------------------------------------------------------------<br /><br />' Name to include : &quot;Sub pca9551_pwm.inc&quot;<br />'syntax: PCA9551_PWM(0 or 1 , 0 to 255, 0 to 255)<br /><br /><br />Sub Pca9551_pwm(byval Pwm_0_1 As Byte , Byval Freq_pres As Byte , Byval Duty_cyc As Byte)<br />Dbg<br /><br />   If Pwm_0_1 &gt; 1 Then Pwm_0_1 = 1<br />   I2cstart<br />   I2cwbyte Pca9551wr<br />   Select Case Pwm_0_1<br />      Case 0<br />         I2cwbyte &amp;B00010001                                '10001 sub adres  plus auto increment  bit  4<br />         I2cwbyte Freq_pres<br />         I2cwbyte Duty_cyc<br />      Case 1<br />         I2cwbyte &amp;B00010011                                '10001 sub adres  plus auto increment  bit  4<br />         I2cwbyte Freq_pres<br />         I2cwbyte Duty_cyc<br /><br />   End Select<br />   I2cstop<br /><br /><br />End Sub[/syntax]<br /><br />Tu funkcja odczytu aktualnej wartości wypełnienia:<br />[syntax=basic4gl]$nocompile<br />'*****************************************************************************************<br />'**********PCA9551 ver 1.0  by Pawel Labedz aka Pikczu 2014*******************************<br />'*********************Pawel.labedz@gmail.com**********************************************<br />'*****************************************************************************************<br /><br /> 'name to include : &quot;function Pca9551_get_PWM_0_1_dutycy.inc&quot;<br />'syntax: yourvariable= Pca9551_get_pwm_0_1_dutycy(0 or 1)<br />'-----------------------------------------------------------------------------------------<br />'PCA9551 Led driver with PWM  reading dutycycle for pwm 0 or 1<br />Function Pca9551_get_pwm_0_1_dutycy(byval Pwms As Byte ) As Byte<br />Dbg<br />   'Const Pca9551rd = 193'this is address<br />   'Const Pca9551wr = 192' this is address setup in main code<br />   Local Bufor_1 As Byte<br />   'Local Bufor_2 As Byte<br />   Bufor_1 = 0<br />   'Bufor_2 = 0<br />   If Pwms &gt; 1 Then Pwms = 1<br /><br />   I2cstart<br />   I2cwbyte Pca9551wr<br />   Select Case Pwms<br />      Case 0<br />         I2cwbyte &amp;B00000010<br />         I2crepstart<br />         I2cwbyte Pca9551rd<br />         I2crbyte Bufor_1 , Nack                            'led 0 to 3<br />      Case 1<br />      I2cwbyte &amp;B00000100<br />         I2crepstart<br />         I2cwbyte Pca9551rd<br />         I2crbyte Bufor_1 , Nack                            'led 0 to 3<br />   End Select<br />   I2cstop<br />Pca9551_get_pwm_0_1_dutycy = Bufor_1<br />End Function[/syntax]<br /><br /><br />Tu funkcja odczytu częstotliwości:<br />[syntax=basic4gl]$nocompile<br />'*****************************************************************************************<br />'**********PCA9551 ver 1.0  by Pawel Labedz aka Pikczu 2014*******************************<br />'*********************Pawel.labedz@gmail.com**********************************************<br />'*****************************************************************************************<br />'-----------------------------------------------------------------------------------------<br /> 'name to include : &quot;function Pca9551_get_PWM_0_1_Freq.inc&quot;<br />' syntax:  yourvariable=Pca9551_get_pwm_0_1_freq(0 or 1 )<br />'-----------------------------------------------------------------------------------------<br />'PCA9551 Led driver with PWM  reading frequency for fwm 0 or 1<br />Function Pca9551_get_pwm_0_1_freq(byval Pwm_number As Byte ) As Byte<br />Dbg<br />   'Const Pca9551rd = 193'this is address<br />   'Const Pca9551wr = 192' this is address setup in main code<br />   Local Bufor_1 As Byte<br />   'Local Bufor_2 As Byte<br />   Bufor_1 = 0<br />   'Bufor_2 = 0<br />   If Pwm_number &gt; 1 Then Pwm_number = 1<br /><br /><br />   I2cstart<br />   I2cwbyte Pca9551wr<br />   Select Case Pwm_number<br />      Case 0<br /><br />         I2cwbyte &amp;B00000001<br />         I2crepstart<br />         I2cwbyte Pca9551rd<br />         I2crbyte Bufor_1 , Nack                            'led 0 to 3<br /><br />      Case 1<br />      I2cwbyte &amp;B00000011<br />         I2crepstart<br />         I2cwbyte Pca9551rd<br />         I2crbyte Bufor_1 , Nack                            'led 0 to 3<br />   End Select<br /><br />   I2cstop<br />Pca9551_get_pwm_0_1_freq = Bufor_1<br />End Function[/syntax]<br /><br /><br /><br />Dla PCA9685 Jest sporo pisania, żeby to miało ręce i nogi trzeba napisać stałe z tego co widzę az 63 stałe i najlepiej nazwać je jak w pdf-e.<br />Później trzeba zrobić select case dla wszystkich 63 możliwości plus dodatkowe funkcje odczytu kolejnych rejestrów.<br /><br />Jeśli nie masz scalaka najpierw go kup a potem pisz bo inaczej szkoda czasu na pisanie.<br />Polecam zainwestować w oryginalną płytę testowa NXP z tym scalakiem na pokładzie będzie Ci łatwiej.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=154">pikczu</a> — 16 sty 2015, o 21:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[romantv]]></name></author>
<updated>2015-01-16T10:46:11+01:00</updated>
<published>2015-01-16T10:46:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114309#p114309</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114309#p114309"/>
<title type="html"><![CDATA[Bascom - PCA9685 i PCA9551D - Sterowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10240&amp;p=114309#p114309"><![CDATA[
Witam. Proszę o pomoc w zakresie sterowania układem PCA9685. Potrzebuję fragment kodu w Bascomie, który umożliwi sterowanie tym scalakiem. Wykorzystuję do tego ATmegę32 i po I2C jest podłączony z PCA9685.<br />Z góry dziękuję za pomoc.<br /><br />Dim D(10) As Word<br />Dim H(10) As Byte<br />Dim L(10) As Byte<br /><br />Const I2crd = 225<br />Const I2cwr = 224<br /><br />Zi2c(4) = 224<br />Oi2c(4) = 225<br /><br />D(1) = 2000                                         <br />D(2) = 3000<br /><br />L(1) = Low(d(1))<br />H(1) = High(d(1))<br /><br />L(2) = Low(d(2))<br />H(2) = High(d(2))<br /><br />I2cstart<br />I2cwbyte Zi2c(4)<br />I2cwbyte H(1)<br />I2cwbyte L(1)<br /><br />I2cwbyte H(2)<br />I2cwbyte L(2)<br /><br />I2cwbyte 11111010<br /><br />I2cstop<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7904">romantv</a> — 16 sty 2015, o 10:46</p><hr />
]]></content>
</entry>
</feed>