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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-03-26T10:54:41+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=6500&amp;mode</id>
<entry>
<author><name><![CDATA[pagosa747]]></name></author>
<updated>2014-03-26T10:54:41+01:00</updated>
<published>2014-03-26T10:54:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6500&amp;p=75833#p75833</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6500&amp;p=75833#p75833"/>
<title type="html"><![CDATA[Re: licznik impulsów]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6500&amp;p=75833#p75833"><![CDATA[
No fakt , jest błąd , ale tak to jest jak się po nocy pisze <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> <br />Cieszę się , że mogłem pomóc .<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=629">pagosa747</a> — 26 mar 2014, o 10:54</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[tomo]]></name></author>
<updated>2014-03-26T09:40:12+01:00</updated>
<published>2014-03-26T09:40:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6500&amp;p=75830#p75830</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6500&amp;p=75830#p75830"/>
<title type="html"><![CDATA[Re: licznik impulsów]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6500&amp;p=75830#p75830"><![CDATA[
no i super. działa <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> tylko tam jest błąd w 21 linijce.  napisałeś zamiast DDRA DDRD ale to szczegół. Teraz będę mógł sobie troszkę poeksperymentować. Niestety będę musiał jeszcze raz przeczytać książkę bo nie wszystko rozumiem z tego kodu ale z grubsza ogarniam o co chodzi.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3485">tomo</a> — 26 mar 2014, o 09:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[pagosa747]]></name></author>
<updated>2014-03-26T03:05:35+01:00</updated>
<published>2014-03-26T03:05:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6500&amp;p=75816#p75816</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6500&amp;p=75816#p75816"/>
<title type="html"><![CDATA[Re: licznik impulsów]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6500&amp;p=75816#p75816"><![CDATA[
[syntax=c]/*<br /> * main.c<br /> *<br /> *  Created on: 2014-03-26<br /> *       Autor: pagosa747<br /> */<br />#include &lt;avr/io.h&gt;     // dołączenie głównego systemowego  pliku nagłówkowego<br />#include &lt;avr/interrupt.h&gt;     // obsługa przerwań<br />#include &lt;util/delay.h&gt;              // opóźnienia  <br /><br /><br />#define KEY_PIN (1&lt;&lt;PD2)  // podłączenie encodera na pin PD2 ( INT0 )<br />#define LED_PIN (1&lt;&lt;PA0)  // podłączenia diody na pin PA0<br /><br />volatile uint32_t licznik;      //zmienna licznik<br /><br />int main(void)<br />{<br />DDRD &amp;=~KEY_PIN; <br />PORTD |= KEY_PIN;<br />        DDRD |= LED_PIN;<br />        PORTA &amp;=~LED_PIN;<br /><br />//*********przerwanie INT0 ***********************<br /><br />MCUCR |=(1&lt;&lt;ISC01); //reakcja na zbocze opadające<br />GICR |=(1&lt;&lt;INT0); // włączenie przerwania INT0<br /><br />//*********************************************<br /><br />        licznik = 0;       // zerowanie licznika<br /><br />sei();     // włączenie globalnego zezwolenia na przerwania<br /><br />while(1)<br />{<br />            if(licznik&gt;500)    // sprawdzenie warunku<br />                                {<br />                                 PORTA ^= LED_PIN;  // zmiana stanu pinu z podpiętą diodą<br />                                 _delay_ms(550);       // zwłoka 550 ms<br />                                 PORTA ^= LED_PIN;  // ponowna zmiana stanu pinu z podpiętą diodą<br />                                 licznik = 0 ;             // zerowanie licznika<br />                                 }<br />}<br /><br />}<br /><br /><br />ISR(INT0_vect)<br />{<br />licznik++;<br />}[/syntax]<br /><br />Witam .<br />Niestety nie posiadam encodera aby sprawdzić powyższy kod , ale jeżeli działa on tak jak opisałeś ( zmienia stan z wysokiego na niski itd) to powinno działać . Ja mam w ten sposób podłączony transoptor szczelinowy i jest ok. <br />Tak czy inaczej mam nadzieją , że się przyda .<br />Pozdrawiam .<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=629">pagosa747</a> — 26 mar 2014, o 03:05</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[icer_cmg]]></name></author>
<updated>2014-03-26T00:36:45+01:00</updated>
<published>2014-03-26T00:36:45+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6500&amp;p=75812#p75812</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6500&amp;p=75812#p75812"/>
<title type="html"><![CDATA[Re: licznik impulsów]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6500&amp;p=75812#p75812"><![CDATA[
impulsator działa jak klawisz wciskany cały czas, czyli jakby symuluje wciśnięcie klawisza co jakiś czas, zależnie od prędkości obrotu. Mając bluebooka masz opisane jak sprawdzić, czy klawisz jest wciśnięty. Masz również opisane jak mignąć diodką. Program to licznik, który będzie liczył ile razy został wciśnięty klawisz (czyli przyszedł sygnał z enkodera) i jeśli licznik osiągnie wartość to migasz diodką i zerujesz licznik. Wszystko robisz w pętli.<br /><br /><!-- m --><a class="postlink" href="http://mirekk36.blogspot.com/2013/04/encoder-avr-callbackow-ciag-dalszy-cz2.html" >http://mirekk36.blogspot.com/2013/04/en ... y-cz2.html</a><!-- m --><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1636">icer_cmg</a> — 26 mar 2014, o 00:36</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[tomo]]></name></author>
<updated>2014-03-26T00:18:39+01:00</updated>
<published>2014-03-26T00:18:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6500&amp;p=75807#p75807</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6500&amp;p=75807#p75807"/>
<title type="html"><![CDATA[licznik impulsów]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6500&amp;p=75807#p75807"><![CDATA[
Witam. Jestem posiadaczem niebieskiej książki i uC atmega32 + usbasp. Od kilku dni przeszukuje internet w poszukiwaniu programu licznika impulsów na atmega32 w języku C ale niestety albo nic na ten temat nie ma albo kompletnie nie działa. Moje pomysły na zrealizowanie tego programu już się wyczerpały (żaden nie zadziałał)... Zadanie niby jest proste:<br />Z enkodera (enkoder daje stan wysoki i niski na przemian) sczytywane są impulsy. Licznik ma za zadanie policzyć np do 500 i wykonać jakieś proste polecenie- na jakimś pinie ustawić stan wysoki/niski<br />przez jakiś czas. Następnie ma się wyzerować i zacząć zliczać impulsy od 0 do 500.<br />Bardzo proszę o pomoc bo jest mi to bardzo potrzebne a nigdzie nie mogę znaleźć takiego tematu. Może ktoś robił taki licznik i ma gotowy program. Aha i nie potrzebuje żadnego wyświetlacza ani żadnych przycisków- bajerów.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3485">tomo</a> — 26 mar 2014, o 00:18</p><hr />
]]></content>
</entry>
</feed>