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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-07-28T11:33:07+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=7900&amp;mode</id>
<entry>
<author><name><![CDATA[mopsiok]]></name></author>
<updated>2014-07-28T11:33:07+01:00</updated>
<published>2014-07-28T11:33:07+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=89239#p89239</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=89239#p89239"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=89239#p89239"><![CDATA[
Okej, dzisiaj w nocy pokodziłem co nieco i wychodzi na to że powyższy &quot;algorytm&quot; śmiga jak marzenie. W trybie uśpienia całość pobiera poniżej 1uA (nie wiem ile bo mi multimetru nie starczyło <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" />), co jest wynikiem wysoce zadowalającym. Po pętli while dałem jeszcze delay'a na 100ms - wystarcza całkowicie do wytłumienia drgań, a nie opóźnia zbytnio działania.<br /><br />Chciałem z tego miejsca podziękować wszystkim wypowiadającym się, a w szczególności koledze Krauser. Dzięki Twoim fantastycznym konceptom całość mogę zbudować na tiniaczu, czyli tak jak sobie wymarzyłem. Dzięki wielkie za poświęcony czas!<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1371">mopsiok</a> — 28 lip 2014, o 11:33</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mopsiok]]></name></author>
<updated>2014-07-27T23:40:35+01:00</updated>
<published>2014-07-27T23:40:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=89203#p89203</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=89203#p89203"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=89203#p89203"><![CDATA[
Hej, wróciłem! <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br />Zaprojektowałem płytkę testową dla 12 przycisków. W kwestii połączeń zmieniłem tylko ilość kolumn na 3, żeby łatwiej było mi to rozmieścić na docelowej płytce. Oczywiście odpadł jeden rezystor &quot;poziomy&quot;, a pozostałym zmieniłem wartości z 240 na 330. W efekcie rozkład wciąż jest prawie idealnie liniowy. <br />W każdym razie, jestem świeżo po teście na żywym organizmie i jestem bardzo pozytywnie zaskoczony <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" />. Całość ruszyła od kopa, a przy odczycie nie ma żadnych przekłamań. <br />Nurtuje mnie jednak jedna kwestia. W zaproponowanym przez Krausera rozwiązaniu chyba najprościej by było odczytywać ADC i nadawać ramkę bezpośrednio w pętli głównej przy pomocy delayów. A co później? Chciałbym nadawać ramkę tak długo jak przycisk jest wciśnięty (co jakieś 100-200ms). Pomyślałem o czymś takim:<br />[syntax=c]for(;;) { //petla glowna<br />//wylaczanie peryferiow, wlaczenie przerwania PCINT i przejscie w tryb power down<br /><br />//po obudzeniu - wylaczenie PCINT, wlaczenie ADC<br />//odczyt ADC, okreslenie ktory to przycisk i nadanie jego ramki (*)<br />//wylaczenie ADC, zeby mozna bylo sprawdzic stan przyciskow<br /><br />while(!(PINB &amp; (1&lt;&lt;JAKIS_PIN_ADC))) { //wykonuj dopoki dany przycisk jest wcisniety <br />_delay_ms(1);<br />if (++licznik == 100) { //co 100ms nadaj ramke<br />licznik = 0;<br />//ponowne wykonanie funkcji z linijek 4-6<br />}<br />}<br /><br />//jesli tu doszlo, to znaczy ze w pewnym momencie  przycisk zostal zwolniony - wroc do poczatku<br />}[/syntax]<br />Tylko właśnie trochę się martwię drganiami styków przy puszczaniu przycisku. Jeśli procesor się uśpi za wcześnie, może się zaraz wybudzić właśnie przez drgania i nadać niepotrzebnie komendę. Tak myślałem, że gdyby tak dać kolejnego delay'a za pętlą while, to mogłoby to rozwiązać problem. Tylko nie wiem jak długi czas musiałby to być - np. przy 500ms miałbym już pewność że jest okej, ale boję się że nadajnik w odpowiednich warunkach sprawiałby wrażenie nieco &quot;opóźnionego&quot; <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" />. I niezbyt wiem co z tym fantem teraz zrobić...<br /><br />Oczywiście jestem otwarty na propozycje - jeśli ktoś ma jakiś fajniejszy pomysł na rozwiązanie tego, to piszcie śmiało!<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1371">mopsiok</a> — 27 lip 2014, o 23:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2014-07-26T19:31:20+01:00</updated>
<published>2014-07-26T19:31:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=89003#p89003</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=89003#p89003"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=89003#p89003"><![CDATA[
<div class="quotetitle">mopsiok napisał(a):</div><div class="quotecontent"><br />Naprawdę układ jest świetny, ale boję się że attiny nie starczy dokładności i będzie wysyłać nie te komendy co trzeba. Nawet jak użyję 10-bitowej rozdzielczości, to i tak przecież w grę wchodzą błędy przetwornika ADC (nieliniowość, przesunięcie, itp. - pełno ich w nocie).<br /></div> i na dodatek skoro używa ADC to jest... drogi. Jakby zamiast attiny 5 zastosować attiny 4 to zaoszczędzi się 5 groszy (kolejne 5k premii). Klasyczny układ z rezystorem podciągającym czy ten wyżej opisany ma jeszcze taką wadę, że jak kot siądzie na pilocie to szybko rozładuje baterię. Podam jeszcze taki przykład:<br /><a href="http://forum.atnel.pl/_obrazki/o/465/b0520679cbd28f71e8be05abdc7aecef.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/465/b0520679cbd28f71e8be05abdc7aecef.png" alt="Obrazek" /></a><br />Wciśnięcie klawisza w końcu naładuje pojemności, ale nim się to stanie będzie na nich 0V co procesor wykryje jako stan niski i wybudzi się. Musi on teraz włączyć tryb przechwytywania i zmierzyć czas do naładowania pojemności czyli do osiągnięcia stanu wysokiego. Mając te dane timer należy skonfigurować w tryb CTC na 36kHz i używając _delay_us(889); nadać ramkę z kodem klawisza. <br />W zależności od pojemności możliwe, że trzeba będzie dodać klikumegowe rezystory równolegle do każdego kondensatora. Wracając do kota  <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> to w takim układzie wciśnięty klawisz nie powoduje przepływu prądu, bo kondensator się naładował i stanowi przerwę w obwodzie. Oczywiście należy użyć kondensatorów z dielektykiem COG lub X7R. Najlepsze będą 22pF i 100pF z dielektrykiem COG, bo są dodatkowo stabilne w całym zakresie temperatur. Z tego powodu najlepiej użyć układu z jednym kondensatorem łącząc 2 powyższe:<br /><a href="http://forum.atnel.pl/_obrazki/o/465/66436eebfde2a8f011e61de02c681002.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/465/66436eebfde2a8f011e61de02c681002.png" alt="Obrazek" /></a><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 26 lip 2014, o 19:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mopsiok]]></name></author>
<updated>2014-07-26T18:06:41+01:00</updated>
<published>2014-07-26T18:06:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88990#p88990</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88990#p88990"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88990#p88990"><![CDATA[
Santa Maria, toż to jest genialne <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" />. No nie mogę się napatrzeć normalnie! Tak liczę i faktycznie rozkład jest równomierny, ale różnica między przyciskami jest na poziomie 60mV, a maksymalna wartość do uzyskania to właśnie 0.81V. Naprawdę układ jest świetny, ale boję się że attiny nie starczy dokładności i będzie wysyłać nie te komendy co trzeba. Nawet jak użyję 10-bitowej rozdzielczości, to i tak przecież w grę wchodzą błędy przetwornika ADC (nieliniowość, przesunięcie, itp. - pełno ich w nocie). Ale oczywiście jak najbardziej sprawdzę to rozwiązanie, bo jestem nim dosłownie urzeczony <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" />. Szczególnie że automatyczne wybudzanie to też łakomy kąsek. Na chwilę obecną planowałem po prostu kolejny przycisk podpięty pod PCINT, który włączałby pilot (i dioda sygnalizacyjna czy pilot działa - po jakimś czasie bezczynności po prostu by się wyłączała, a procek się usypiał).<br /><br />P.S.<br />No by Cię licho Krauser - to już któryś mój temat, w którym przy okazji pokazujesz mi tego typu perełkę... jak Ty to robisz? <img src="https://forum.atnel.pl/images/smilies/icon_mrgreen.gif" alt=":mrgreen:" title="Pan Zielony" />.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1371">mopsiok</a> — 26 lip 2014, o 18:06</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2014-07-26T17:31:31+01:00</updated>
<published>2014-07-26T17:31:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88986#p88986</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88986#p88986"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88986#p88986"><![CDATA[
Patrząc ekonomicznie to używanie, aż tylu wartości rezystorów powoduje znaczne koszty wdrożenia podnosząc jednocześnie koszt magazynowania. Zaopatrzeniowiec będzie jęczał: &quot;5 wagonów rezystorów&quot;. Tak wiem<br /><div class="quotetitle">mopsiok napisał(a):</div><div class="quotecontent"><br />Hah  Projekt jest raczej prywatny, nie planuję produkować miliona sztuk .<br /></div><br />ale Mirek chyba kiedyś też tak mówił  <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br />No i co z tym wybudzeniem z PowerDown po wciśnięciu jednego z klawiszy?<br />Podam Ci inne rozwiązanie znalezione gdzieś na krańcach internetu:<br /><a href="http://forum.atnel.pl/_obrazki/o/465/c7da34fbf22794701e8e840f7bb293a9.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/465/c7da34fbf22794701e8e840f7bb293a9.png" alt="Obrazek" /></a><br />Wartości rezystorów są tak dobrane, aby wybudzić mirokontroler i jednocześnie, aby poszczególne klawisze dawały w miarę równomierny rozkład pomiarów. Przykładowo dla klawisz SW1 na wyjściu jest: 3V*(3*240R+3*1k)/(3*240R+3*1k +10k)=0,81V, a dla SW2 mamy: 3V*(2*240R+3*1k)/(2*240R+3*1k +10k) = 0,77V.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 26 lip 2014, o 17:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mopsiok]]></name></author>
<updated>2014-07-26T14:18:28+01:00</updated>
<published>2014-07-26T14:18:28+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88969#p88969</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88969#p88969"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88969#p88969"><![CDATA[
Hah <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /> Projekt jest raczej prywatny, nie planuję produkować miliona sztuk <img src="https://forum.atnel.pl/images/smilies/icon_mrgreen.gif" alt=":mrgreen:" title="Pan Zielony" />. <br />Przyznam że temat jest tak ciekawy że chyba jednak spróbuję w nim swoich sił. Płytkę pod megę88 mam już przygotowaną, niech sobie czeka na swoją kolej, a na chwilę obecną zabiorę się za prototyp na attiny i zobaczymy czy coś z tego wyjdzie. <br />Jeszcze wracając do przerwania ADC, to widzę że maksymalny preskaler ma 128, co przy 1.2MHz daje 9375Hz. Zatem trzeba jeszcze dać kolejny &quot;programowy preskaler&quot; wewnątrz przerwania, o wartości np. 9 (wtedy wyjdzie 1042 Hz). Mam już zarys przerwania, idę kodzić bo normalnie taka mnie wzięła chętka że nie ma słów <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" />.<br /><br />Odnośnie analogowych przycisków, to planowałem zrobić taką jakby drabinkę przyciskowo-rezystorową.... Takie coś wymodziłem:<br /><a href="http://forum.atnel.pl/_obrazki/o/1371/774f313a93003cdd575bab0acfc4d7f9.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1371/774f313a93003cdd575bab0acfc4d7f9.png" alt="Obrazek" /></a><br />Co prawda w takim rozwiązaniu ciężko obsłużyć przypadek gdy wciśnięte zostało wiele przycisków naraz, ale akurat na pilocie raczej się tego nie robi <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" />.<br />Oczywiście w przerwaniu ADC na zmianę ustawiać będę kanał na ADC2 i ADC3, żeby móc odczytywać każdy z 12 przycisków.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1371">mopsiok</a> — 26 lip 2014, o 14:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2014-07-26T13:44:23+01:00</updated>
<published>2014-07-26T13:44:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88965#p88965</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88965#p88965"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88965#p88965"><![CDATA[
<div class="quotetitle">mopsiok napisał(a):</div><div class="quotecontent"><br />Akurat w tym przypadku zrobię już pilot na atmedze (siedziałem do 4 rano i robiłem PCB, więc już mi się nie opłaca tego zmieniać ^^)<br /></div> I po premii  <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /> <br />Radzę przemyśleć tą decyzję. Jak firma sprzeda 1 mln pilotów w ciągu roku i dzięki użyciu powiedzmy attiny5 zaoszczędzisz 10 groszy to chyba dostaniesz te marne 10%. A to wychodzi: <br />1 mln*0,1zł*10%= 10k<br />Ile atmeg można za to kupić  <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> <br /><br />Pozostaje jeszcze kwestia omówienia przerwania od zmiany stanu przy użyciu klawiatury analogowej. Nie pokazałeś schematu  <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /> Czy zamierzasz wykorzystać jeden pin? Wtedy według moich obliczeń wypadałoby, aby każdy klawisz generował napięcie poniżej 3V*0.3 = 0,9V. Tylko wtedy procesor rozpozna to jako stan niski i wygeneruje przerwanie od zmiany stanu. A może lepiej klawisze dać do plusa, bo stan wysoki ma nieco szerszy zakres napięć (od 0,6*3V).<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 26 lip 2014, o 13:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mopsiok]]></name></author>
<updated>2014-07-26T11:54:39+01:00</updated>
<published>2014-07-26T11:54:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88948#p88948</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88948#p88948"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88948#p88948"><![CDATA[
Jak procek nie ma ICP to zawsze można używać przerwania PCINT i programowego licznika do zliczania czasu, ale zasada jest podobna. Właśnie wczoraj szukałem informacji na ten temat i znalazłem też dość ciekawą notę Atmela na temat dekodowania RC5: <!-- m --><a class="postlink" href="http://www.inforeg.lt/handbooks/Atmel/acrobat/doc2817.pdf" >http://www.inforeg.lt/handbooks/Atmel/a ... oc2817.pdf</a><!-- m --> .<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1371">mopsiok</a> — 26 lip 2014, o 11:54</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[sq8dsr]]></name></author>
<updated>2014-07-26T11:42:38+01:00</updated>
<published>2014-07-26T11:42:38+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88947#p88947</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88947#p88947"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88947#p88947"><![CDATA[
A skoro już jesteśmy przy IR oraz małych prockach. To może ktoś wpadł na fajny pomysł rozwiązania odbioru IR bez używania ICP ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1589">sq8dsr</a> — 26 lip 2014, o 11:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mopsiok]]></name></author>
<updated>2014-07-26T11:00:49+01:00</updated>
<published>2014-07-26T11:00:49+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88944#p88944</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88944#p88944"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88944#p88944"><![CDATA[
Łał, widzę że temat się przyjął <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" />. Czyli proponujesz żeby nośną generować tak jak chciałem, a przetwornik ADC ustawić w tryb free running mode tak żeby generował przerwanie 1kHz? Wewnątrz dać licznik i sprawdzać odczyt tylko co 100 przerwań (co 100ms), a gdy już wyłapie wciśnięty przycisk to ustawić flagę wysyłania znaku, która w kolejnych przerwaniach będzie powodować odpowiednie modulowanie pinem OC0A przez ustawianie/zerowanie flagi COM0A0 w rejestrze TCCR0A. No, przyznam szczerze że nawet bym to widział <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" />. Dzięki wielkie za koncept, rzeczywiście ma to o wiele większy sens. Akurat w tym przypadku zrobię już pilot na atmedze (siedziałem do 4 rano i robiłem PCB, więc już mi się nie opłaca tego zmieniać ^^), ale na pewno zapamiętam Twój pomysł na wypadek gdybym kiedyś chciał takiego dziwoląga zrobić <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" />.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1371">mopsiok</a> — 26 lip 2014, o 11:00</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2014-07-26T09:17:40+01:00</updated>
<published>2014-07-26T09:17:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88937#p88937</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88937#p88937"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88937#p88937"><![CDATA[
<div class="quotetitle">mopsiok napisał(a):</div><div class="quotecontent"><br />Ech... chciałem jakoś inaczej podejść do problemu pilota IR, ale chyba jednak Mirku wbiłeś gwóźdź do trumny mojego rozwiązania. Fajnie by było zrobić to tylko na Attiny13, szczególnie że odczyt 12 przycisków i modulowanie nośnej 36kHz mam już obmyślone i względnie napisane.<br /></div> Możesz to zrobić na Attiny13... tylko zapomnij to co obmyśliłeś  <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /> <br />Z tego co wyczytałem marzy ci się pilot z analogową klawiaturą. Generuj nośną timerem i nie włączaj przerwania. Masz przecież przerwanie po zakończeniu konwersji. Obudź sobie procesor ze stanu PowerDown przerwaniem od zmiany stanu. Włącz przetwornik i wykorzystaj to cykliczne przerwanie do skanowania klawiatury i po okresie bezczynności przejdź do PowerDown. Możesz też wysyłać jakiś znak w kosmos, aby wykorzystać przerwanie modułu UART( często UART wykorzystuje się do generowania sygnału prostokątnego jeśli nie ma timera z PWM). Częstotliwość taktowania watchdoga jest podawana tylko orientacyjnie. Nie nadaje się on do precyzyjnego odmierzania czasu.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 26 lip 2014, o 09:17</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-07-26T06:18:47+01:00</updated>
<published>2014-07-26T06:18:47+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88933#p88933</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88933#p88933"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88933#p88933"><![CDATA[
Tak ja też na Tiny10 bawiłem się Magic LED'ami, nawet optymalizując jeszcze bardziej wstawkę ASM, buforowanie jak mówisz wtedy odpada praktycznie i trzeba w locie to robić ... ale efekt jest o tyle fajny, że wygląda to tak jakby jakaś mała mucha przysiadła sobie na brzegu taśmy i nią sterowała <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=54">mirekk36</a> — 26 lip 2014, o 06:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[sq8dsr]]></name></author>
<updated>2014-07-26T00:59:25+01:00</updated>
<published>2014-07-26T00:59:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88928#p88928</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88928#p88928"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88928#p88928"><![CDATA[
Są ludzie którzy uwielbiają ATtiny <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> <br />Mam kolegę, który na at10 napisałem obsługę pomiarów na zewnętrznym ADC (I2C) oraz wsadził w to jeszcze własny protokół transmisji szeregowej. Oczywiście napisane w całości w ASM. <br /><br />Mnie na razie udało się zmusić AT10 do wysterowania paska WS-ek. <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> Ale oczywiście te 32B ramu uniemożliwiają bardziej normalne sterowanie z buforem, trzeba robić w locie. Fakt że MCU jest wielkości praktycznie tranzystora SMD może czymś takim fajnym <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=1589">sq8dsr</a> — 26 lip 2014, o 00:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mopsiok]]></name></author>
<updated>2014-07-25T22:09:26+01:00</updated>
<published>2014-07-25T22:09:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88920#p88920</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88920#p88920"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88920#p88920"><![CDATA[
Ech... chciałem jakoś inaczej podejść do problemu pilota IR, ale chyba jednak Mirku wbiłeś gwóźdź do trumny mojego rozwiązania. Fajnie by było zrobić to tylko na Attiny13, szczególnie że odczyt 12 przycisków i modulowanie nośnej 36kHz mam już obmyślone i względnie napisane. Niemniej nie będę ryzykować komunikacji, bo pilot to będzie jedyna przyjemna opcja rozmawiania z odbiornikiem (no, będzie też UART, ale komu by się chciało z kablem latać <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> ).<br />Co prawda w datasheecie mojego TSOPa nie znalazłem konkretnej maksymalnej wartości, ale nie będę ryzykował. Już i tak to rozwiązanie ma za dużo uproszczeń i kombinacji. No nic, pozostaje mi zrobić kolejny nudny nadajnik RC5 na Atmedze168 <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> (to najmniejsze co mam - poza attiny13 i 10).<br /><br />Dzięki Wam za wyjaśnienie mi moich wątpliwości, ale jak widać takie rozwiązanie ma niewiele sensu. Być może kiedyś wykonam pilocik oparty na zasadach opisywanych w tym temacie, ale na pewno nie będę go stosował do niczego istotnego <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" />. Dzięki raz jeszcze i przepraszam za zawracanie głowy.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1371">mopsiok</a> — 25 lip 2014, o 22:09</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-07-25T21:27:48+01:00</updated>
<published>2014-07-25T21:27:48+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88915#p88915</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88915#p88915"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88915#p88915"><![CDATA[
<div class="quotetitle">mopsiok napisał(a):</div><div class="quotecontent"><br />. Skoro tak, to zamiast 889us na &quot;półbit&quot; mógłbym przeznaczyć np. 16ms<br /></div><br /><br />Nie kombinuj za mocno, sprawdź w nocie odbiornika TFMS - bo może się zatykać i wszystko ci padnie ...<br /><br />ja się zawsze dziwię po co robić taką gimnastykę jak można wziąć chociażby ATtiny25/48/85 i nie dość że masz kupę pamięci każdej więcej to i jeszcze dwa timery a obudowa ta sama - zamiast na siłę wciskać się w tiny13 ? <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=54">mirekk36</a> — 25 lip 2014, o 21:27</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[sq8dsr]]></name></author>
<updated>2014-07-25T21:12:58+01:00</updated>
<published>2014-07-25T21:12:58+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88911#p88911</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88911#p88911"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88911#p88911"><![CDATA[
Pomysł fajny. Tylko że ramka przez 0,5 sekundy... A jak część ramki się uszkodzi, trzeba będzie powtarzać, to się zrobi już ponad seknda.<br />Skoro już mówimy o własnym standardzie to przecież nie musisz nadawać takiej długiej ramki. Ile ma być komend ?<br />Dwa bity to już 4 komendy + plus jakiś nagłowek prosty.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1589">sq8dsr</a> — 25 lip 2014, o 21:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mopsiok]]></name></author>
<updated>2014-07-25T21:01:45+01:00</updated>
<published>2014-07-25T21:01:45+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88907#p88907</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88907#p88907"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88907#p88907"><![CDATA[
No można i tak, tylko szkoda mi miejsca na płytce na takie starocie ^^. Cena za attiny13 i typową aplikację na ne555 wyjdzie podobnie jak za atmegę88, a tylko 4 razy więcej miejsca zajmie. <br /><br />Przetestowałem proponowane przez Was rozwiązanie. Działać - działa, ale przyznam że ze zgrozą patrzę na długość wygenerowanego kodu przerwania. Nawet na 4.8MHz ledwo się to mieści. <br />W sumie tak sobie przypomniałem, że wcale nie muszę zachowywać koniecznie standardu RC5 - zarówno nadajnik jak i odbiornik robię samemu (chciałem zachować kompatybilność z typowymi pilotami, ale cóż - nie jest to najważniejszy cel). Skoro tak, to zamiast 889us na &quot;półbit&quot; mógłbym przeznaczyć np. 16ms <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" />. Wtedy cała ramka wysyłać się będzie jakieś pół sekundy, więc całkiem znośnie. Tak sobie pomyślałem, że skoro nie potrzebuję aż takiej częstotliwości, to może by wykorzystać watchdoga? <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> Wg noty przy najmniejszym preskalerze generuje on przerwanie właśnie co 16ms. <br /><br />Co o tym myślicie? Ma to w ogóle jakiś sens? Pytam, bo nie chcę żeby się skończyło tak że zacznę szukać informacji, projektować, kodować, testować, naprawiać, a potem się okaże tak jak wcześniej że to nie ma sensu <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" />. <br />Dzięki za wszelką pomoc!<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1371">mopsiok</a> — 25 lip 2014, o 21:01</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[sq8dsr]]></name></author>
<updated>2014-07-25T20:18:09+01:00</updated>
<published>2014-07-25T20:18:09+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88903#p88903</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88903#p88903"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88903#p88903"><![CDATA[
Zawsze można inaczej podejść do generowania tej nieszczęsnej nośnej. Np. dać ne555 aby ją generował. A jej kluczowanie zrzucić na procesor. <br />Są jeszcze mniejsze proce niż at13, np. at10 <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=1589">sq8dsr</a> — 25 lip 2014, o 20:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mopsiok]]></name></author>
<updated>2014-07-25T20:09:38+01:00</updated>
<published>2014-07-25T20:09:38+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88901#p88901</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88901#p88901"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88901#p88901"><![CDATA[
Ojej, fatalnie... tego się obawiałem <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" />.<br />Zaraz będę jeszcze testował, ale szczerze wątpię żebym się wyrobił. To ma być coś w rodzaju pilota RC5, zasilanie bateryjne 3V. Stąd też nie mogę sobie pozwolić na takie wysokie częstotliwości (zresztą i tak nie mam miejsca na zewnętrzny zegar, używam wszystkich pinów). Potrzebuję czytać stan 12 przycisków (przez ADC) i generować kod Manchester zmodulowany częstotliwością 36-38kHz. Gdybym tylko miał drugi timer to byłaby szansa że się z tym wszystkim wyrobię na 1.2MHz. Niestety widzę że poniżej 4.8Mhz nie ma co liczyć (a prąd rośnie...). Mam co prawda pomysł na zaoszczędzenie energii gdy pilot nie jest używany (usypianie po jakimś czasie bezczynności i przycisk na PCINT wybudzający attiny z trybu power down), ale i tak trzeba na nią uważać.<br />Oczywiście mógłbym zrobić to wszystko na Atmedze88 - każdy przycisk na osobnym pinie, dużo timerów itp. Ale wtedy nie byłoby takiej frajdy <img src="https://forum.atnel.pl/images/smilies/icon_mrgreen.gif" alt=":mrgreen:" title="Pan Zielony" />. <br /><br />No nic, rozmarzyłem się troszeczkę. Dzięki Wam Panowie za nakierowanie, przyznam że jestem trochę rozczarowany tą Attiny13 (4 kanały ADC, 6 PCINTów, a tylko 1 timer <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> ), ale zobaczymy. Jakbym się jednak zmieścił przy 4.8MHz i pojawią się jakieś kłopoty, to pozwolę sobie tu jeszcze napisać.<br /><br />Pozdrowienia!<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1371">mopsiok</a> — 25 lip 2014, o 20:09</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[sq8dsr]]></name></author>
<updated>2014-07-25T19:53:13+01:00</updated>
<published>2014-07-25T19:53:13+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88900#p88900</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88900#p88900"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88900#p88900"><![CDATA[
Tak częstotliwość na jednym i na drugim będzie taka sama, wypełnienie będzie tylko inne...<br /><br />Ale z tymi przerwaniami nie jest tak tragicznie. np. 16MHz. Teoretycznie 0,1 ms to będzie 1600 taktów. Więc króciutkie przerwanko powinno się wyrobić. Nawet 400 taktów powinno wystarczyć, a można zwiększyć taktowanie do 20 MHz w takim przypadku. Tylko oczywiście program główny nie może być zbyt czasożerny. Bo niewiele miejsca może zostać <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /><br /><br />W sumie nikt nie powiedział, że większość programu nie może się wykonywać w przerwaniu  <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /> <br /><br />Ale lepiej oczywiście, przy takich potrzebach dać dwa timery, w sumie po to są.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1589">sq8dsr</a> — 25 lip 2014, o 19:53</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-07-25T19:14:00+01:00</updated>
<published>2014-07-25T19:14:00+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88896#p88896</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88896#p88896"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88896#p88896"><![CDATA[
<div class="quotetitle">Krauser napisał(a):</div><div class="quotecontent"><br />Sprzętowo nie wygenerujesz jednym timerem 2 różnych częstotliwości. Timer przy ustawieniu w tryb CTC zlicza od 0 do OCR0A. Przy porównaniu z mniejszą wartością (OCR0B) zmienia sprzętowo stan OC0B, ale na kolejną zmianę stanu musisz czekać, aż timer doliczy do OCR0A (ale to jeszcze nie ten moment) potem zacznie liczyć od 0 i dojdzie do takiej wartości jaka jest wpisana do OCR0B. Częstotliwość zależy od OCR0A<br /></div><br /><br />Dokładnie - sam się teraz z ciekawości bliżej temu przyjrzałem testując w międzyczasie na m32 <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> i po chwili ... no tak... właśnie to samo mnie naszło co napisał Krauser ...<br /><br /><div class="quotetitle">Krauser napisał(a):</div><div class="quotecontent"><br />Okres mniejszej częstotliwości będzie musiał być wielokrotnością okresu wyższej częstotliwości. Do skonfigurowane wcześniej trybu dokłada się przerwanie i w tym przerwaniu definiuje się zmienną statyczną, która zlicza przerwania i jak dojdzie do określonej wartości to ją zerujesz i wykonujesz akcję lub ustawiasz flagę.<br /></div><br /><br />Tylko że przy tak dużych częstotliwościach o jakich mowa wyżej może się okazać że w przerwaniu może być za mało czasu aby próbować tam banglować tą zmienną dodatkową - no ale to już warto sprawdzić na żywym organizmie <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=54">mirekk36</a> — 25 lip 2014, o 19:14</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2014-07-25T18:19:10+01:00</updated>
<published>2014-07-25T18:19:10+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88889#p88889</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88889#p88889"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88889#p88889"><![CDATA[
Sprzętowo nie wygenerujesz jednym timerem 2 różnych częstotliwości. Timer przy ustawieniu w tryb CTC zlicza od 0 do OCR0A. Przy porównaniu z mniejszą wartością (OCR0B) zmienia sprzętowo stan OC0B, ale na kolejną zmianę stanu musisz czekać, aż timer doliczy do OCR0A (ale to jeszcze nie ten moment) potem zacznie liczyć od 0 i dojdzie do takiej wartości jaka jest wpisana do OCR0B. Częstotliwość zależy od OCR0A.<br /><br />Zrób tak, że większą częstotliwość generuj w trybie CTC sprzętowo (OCR0A = 29)<br />Okres mniejszej częstotliwości będzie musiał być wielokrotnością okresu wyższej częstotliwości. Do skonfigurowane wcześniej trybu dokłada się przerwanie i w tym przerwaniu definiuje się zmienną statyczną, która zlicza przerwania i jak dojdzie do określonej wartości to ją zerujesz i wykonujesz akcję lub ustawiasz flagę.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 25 lip 2014, o 18:19</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mopsiok]]></name></author>
<updated>2014-07-25T17:42:16+01:00</updated>
<published>2014-07-25T17:42:16+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88883#p88883</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88883#p88883"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88883#p88883"><![CDATA[
Panowie, ta linijka jest tylko tymczasowo (jak cały kod, zresztą) żeby widzieć jak dioda świeci &quot;na pełnej mocy&quot;. Oczywiście zazwyczaj piszę w nawiasach żeby uniknąć ewentualnych błędów, tu jakoś tak wyszło że jest bez. Niemniej nie ma to znaczenia, bo timer jak nie działał tak nie działa <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" />. Może ktoś ma jakieś sugestie czym to może być spowodowane?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1371">mopsiok</a> — 25 lip 2014, o 17:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-07-25T16:53:20+01:00</updated>
<published>2014-07-25T16:53:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88882#p88882</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88882#p88882"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88882#p88882"><![CDATA[
<div class="quotetitle">worner napisał(a):</div><div class="quotecontent"><br />Doczytałem ,że PB0 ma świecić na stałe, więc powinno chyba być tak<br /><br />[syntax=c]PORTB &amp;= ~(1&lt;&lt;0);[/syntax]<br /></div><br /><br />jeśli dioda podłączona jest KATODĄ do pinu to tak, ale jeśli autor podłączył anodą do pinu to jest dobrze tak jak przedtem<br /><br />[syntax=c]PORTB = 1&lt;&lt;0;[/syntax]<br /><br />1. nawiasów nie musi być - choć ładniej wygląda z nawiasami<br />2. OR przed = nie musi być - jeśli autor zakłada że stany na pozostałych pinach PORB mogą być = 0<br />3. po prostu to co wyżej jest równoważne: <br /><br />[syntax=c]PORTB = 1;[/syntax]<br /><br />bo wartością wyrażenia<br /><br /><strong><span style="color: #0040FF">(1&lt;&lt;0)</span></strong> jest właśnie liczba = 1 <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=54">mirekk36</a> — 25 lip 2014, o 16:53</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[worner]]></name></author>
<updated>2014-07-25T16:11:11+01:00</updated>
<published>2014-07-25T16:11:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88875#p88875</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88875#p88875"/>
<title type="html"><![CDATA[Re: [Attiny13] - Timer0 jako generator sygnału i przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7900&amp;p=88875#p88875"><![CDATA[
No brakuje chyba nawiasów (1&lt;&lt;0) i znaku OR | przez =<br /><br /><br />Doczytałem ,że PB0 ma świecić na stałe, więc powinno chyba być tak<br /><br />PORTB &amp;= ~(1&lt;&lt;0);<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=150">worner</a> — 25 lip 2014, o 16:11</p><hr />
]]></content>
</entry>
</feed>