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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-12-19T20:47:29+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=9752&amp;mode</id>
<entry>
<author><name><![CDATA[SylwekK]]></name></author>
<updated>2014-12-19T20:47:29+01:00</updated>
<published>2014-12-19T20:47:29+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109572#p109572</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109572#p109572"/>
<title type="html"><![CDATA[Re: Problem z ustawieniem LOW]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109572#p109572"><![CDATA[
A żeby Ci to nie migało podczas trzymania to wykorzystaj dodatkową flagę i sprawa załatwiona. Przy led sprawdzasz jej stan i jeśli zero to zmieniasz stan led i ustawiasz flagę. Zerowanie flagi wykonaj jeśli zwolniony przycisk.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1922">SylwekK</a> — 19 gru 2014, o 20:47</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2014-12-19T19:18:20+01:00</updated>
<published>2014-12-19T19:18:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109549#p109549</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109549#p109549"/>
<title type="html"><![CDATA[Re: Problem z ustawieniem LOW]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109549#p109549"><![CDATA[
Miałem szczęście ;d Akurat w zeszłym tygodniu kupiłem jednego at-tiniacza13 w DIP'ie żeby leżał profilaktycznie w szufladzie (do męczenia na stykówce w razie potrzeby).<p>Statystyki: Napisane przez Gość — 19 gru 2014, o 19:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[eMCe2]]></name></author>
<updated>2014-12-19T11:50:23+01:00</updated>
<published>2014-12-19T11:50:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109462#p109462</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109462#p109462"/>
<title type="html"><![CDATA[Re: Problem z ustawieniem LOW]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109462#p109462"><![CDATA[
<div class="quotetitle">wwojtek napisał(a):</div><div class="quotecontent"><br />Koledzy chyba troszkę za szybko zaszufladkowali pytanie Autora tematu. Ciekaw jestem czy ktokolwiek przemyślał podany kod i znalazł konkretny błąd powodujący opisane zachowanie układu (ciemniejsze świecenie diody)?<br /></div><br /><br />Każdy robi błędy więc przyznam że to co mi wytknąłeś to faktycznie jest to samo binarnie... Przyzwyczajenie do kodu robi swoje <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> I tu pewnie wszystkim się łatwiej na to patrzy jak jest po Atnelowskiemu jeśli mogę to tak nazwać...<br />Dobrze że masz attiny13a w gratach i to sprawdziłeś że działa przynajmniej możesz pomóc <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=1363">eMCe2</a> — 19 gru 2014, o 11:50</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2014-12-19T11:31:06+01:00</updated>
<published>2014-12-19T11:31:06+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109459#p109459</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109459#p109459"/>
<title type="html"><![CDATA[Re: Problem z ustawieniem LOW]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109459#p109459"><![CDATA[
Koledzy chyba troszkę za szybko zaszufladkowali pytanie Autora tematu. Ciekaw jestem czy ktokolwiek przemyślał podany kod i znalazł konkretny błąd powodujący opisane zachowanie układu (ciemniejsze świecenie diody)?<br /><br />@<strong>Grzegorz...</strong> - mógłbyś wyjaśnić jak drgania styków w układzie opisanym przez Autora prowadzą do opisanego zachowania całości?<br /><br />@<strong>eMCe2</strong> - które &quot;babole&quot; w kodzie powodują jego niepoprawne działanie? I jaka jest różnica (pomijając formę) między zapisem Autora:<br />[syntax=c]PORTB = (PORTB ^ 0b00000010);[/syntax]<br />a wersją zaproponowaną przez Ciebie:<br />[syntax=c]PORTB ^= (1&lt;&lt;PB1);[/syntax]<br />?<br /><br />Oczywiście zgadzam się, że zawsze warto pooglądać poradniki Atnelowskie i że prezentowany kod mógłby być ładniejszy, ale mnie ewidentnego błędu nie udało się znaleźć. <br /><br />@<strong>wrogu</strong> Pozwoliłem sobie zbudować układ (oparłem się na kodzie: attiny13a, przycisk z PB0 do masy, dioda z PB1 przez R do masy) i wrzucić kod z pierwszego posta... U mnie działa ;] Po wduszeniu switcha dioda miga, po puszczeniu zostaje w stanie w jakim aktualnie jest. &quot;Przyciemnień&quot; nie zaobserwowano.<br />Czym programujesz avr'ka? PB1 to jedna z linii ISP - może programator zasila diodę? Próbowałeś go odpiąć? Jeśli to nie pomoże to ja bym sprawdził na innym attinym.<p>Statystyki: Napisane przez Gość — 19 gru 2014, o 11:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[eMCe2]]></name></author>
<updated>2014-12-18T21:24:32+01:00</updated>
<published>2014-12-18T21:24:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109383#p109383</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109383#p109383"/>
<title type="html"><![CDATA[Re: Problem z ustawieniem LOW]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109383#p109383"><![CDATA[
<div class="quotetitle">wrogu napisał(a):</div><div class="quotecontent"><br />[syntax=c]if ((PINB &amp; 0b00000001) == 0) {            //warunek przycisniecia przycisku<br />                        licznik_czasu++;<br />                        if (licznik_czasu == 20) {              //liczy 1s wcisniecia przycisku<br />                                PORTB = (PORTB ^ 0b00000010); //odwroc stan pinu PB1<br />                                licznik_czasu=0;<br />                                }<br />                }[/syntax]<br /></div><br /><br />Tu masz trochę baboli więc jak radzą zerknij na poradniki...A stan wyjścia odwracaj tak [syntax=c]PORTB ^= (1&lt;&lt;PB1);[/syntax]<br />Ale obejrzyj sobie poradniki o miganiu diodami Mirka to po pierwsze się zrelaksujesz trochę a po drugie sporo się dowiesz...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1363">eMCe2</a> — 18 gru 2014, o 21:24</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Grzegorz...]]></name></author>
<updated>2014-12-18T19:53:05+01:00</updated>
<published>2014-12-18T19:53:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109367#p109367</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109367#p109367"/>
<title type="html"><![CDATA[Re: Problem z ustawieniem LOW]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109367#p109367"><![CDATA[
Myślę, że powinieneś obejrzeć poradniki Mirka to nie dość, że nauczysz się lepszych technik programowania to na dodatek wszystko stanie się jasne.<br />Na początek odnośnie przycisków:<br /><!-- m --><a class="postlink" href="http://mirekk36.blogspot.com/2012/10/drgania-stykow-to-bajki-wiec-jak-to.html" >http://mirekk36.blogspot.com/2012/10/dr ... ak-to.html</a><!-- m --><br /><!-- m --><a class="postlink" href="http://mirekk36.blogspot.com/2012/10/obsuga-klawiszy-drgania-stykow-cd2.html" >http://mirekk36.blogspot.com/2012/10/ob ... w-cd2.html</a><!-- m --><br /><!-- m --><a class="postlink" href="http://mirekk36.blogspot.com/2012/10/obsuga-klawiszy-zwoka-czasowa-cd3.html" >http://mirekk36.blogspot.com/2012/10/ob ... a-cd3.html</a><!-- m --><br /><br />To na prawdę kawał porządnej wiedzy, która wszystko wyjaśnia.<br />Myślę, że na prawdę warto poświęcić czas na obejrzenie tak obszernego materiału aby potem nie błądzić w ciemnościach.<br />Tu dodatkowa prośba nie pisz o uszkodzonych procesorach, bo to na prawdę na wielu działa jak &quot;płachta na byka&quot; i co ważniejsze mają rację. Na prawdę nie tak prosto &quot;uwalić&quot; uC - no chyba, że chcesz to na siłę zrobić.<br /><br />-- <br />Grzegorz...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1748">Grzegorz...</a> — 18 gru 2014, o 19:53</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[wrogu]]></name></author>
<updated>2014-12-18T19:03:50+01:00</updated>
<published>2014-12-18T18:54:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109359#p109359</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109359#p109359"/>
<title type="html"><![CDATA[Problem z ustawieniem LOW]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9752&amp;p=109359#p109359"><![CDATA[
Witam,<br /><br />mam następujący problem - chciałem sobie zrobić przycisk on/off na attiny13a. Zamiast brać wielkiego flip-flopa J-K postanowiłem oprogramować procesor. <br />Program ma obsługiwać on/off mikrostyk. Sprawa niby banalnie prosta .... ale mam problem gdyż nie mogę ustawić LOW na wyjściu pinu PB1 w moim attiny13.<br />Napisałem an szybko programik:<br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br /><br />int main(void) {<br /><br />//ustawianie Input/Output<br /><br />DDRB = 0b00000010; //pin PB1 output, reszta input<br />PORTB = 0b00000001; //VCC podciagniete do PB0<br /><br />//ustawianie zmiennych pomocnicznych<br /><br />uint8_t licznik_czasu=0;<br /><br />while(1) {<br /><br />    if ((PINB &amp; 0b00000001) == 0) {            //warunek przycisniecia przycisku<br />    licznik_czasu++;<br />if (licznik_czasu == 20) {//liczy 1s wcisniecia przycisku<br />PORTB = (PORTB ^ 0b00000010); //odwroc stan pinu PB1<br />licznik_czasu=0;<br />}<br />    }<br />    _delay_ms(50);<br />}<br /><br />}[/syntax]<br /><br />Problem objawia sie tak, ze dioda permanentnie świeci (wpięta jest przez rezystor 500 Om, swiecenie jest mocno przycmione) (+ do pinu PB1, - do gnd). Pełne włączenie i wyłączenie tj. prawidłowe ustawienie stanu wysokiego i niskiego odbywa się jedynie jak mam microswitch wciśnięty non stop  (dioda w efekcie mruga, nieco jasniej niz przy puszczonym switchu).<br /><br />Na robieniu tego na PWM jakoś mi nie zależy, wystarczą mi dwa stany on/off.<br /><br />Czy przyczyną może być uszkodzony procesor czy może coś w kodzie namieszałem?<br /><br />Przepraszam za pisanie w wartościach binarnych, ale to kolejny etap sprawdzania błędów....<br /><br />Pozdrawiam<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2737">wrogu</a> — 18 gru 2014, o 18:54</p><hr />
]]></content>
</entry>
</feed>