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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-09-07T18:40:07+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=8&amp;t=12863&amp;mode</id>
<entry>
<author><name><![CDATA[artixxx]]></name></author>
<updated>2015-09-07T18:40:07+01:00</updated>
<published>2015-09-07T18:40:07+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=12863&amp;p=139282#p139282</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=12863&amp;p=139282#p139282"/>
<title type="html"><![CDATA[Re: Problem z silnikiem krokowym]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=12863&amp;p=139282#p139282"><![CDATA[
Dziękuje za odpowiedź. Z kodem i schematem który wrzuciłem jest jednak wszystko w porządku. Problemem był &quot;zepsuty&quot; kabelek który przyłączałem do zasilania silnika.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=10989">artixxx</a> — 7 wrz 2015, o 18:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[gumeni]]></name></author>
<updated>2015-09-06T15:07:24+01:00</updated>
<published>2015-09-06T15:07:24+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=12863&amp;p=139209#p139209</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=12863&amp;p=139209#p139209"/>
<title type="html"><![CDATA[Re: Problem z silnikiem krokowym]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=12863&amp;p=139209#p139209"><![CDATA[
Przykładowy kod napisany na attiny4313 łatwo go przerobisz na atmege8. Możesz dorobić odbieranie danych po UART wpisując dane do zmiennej step silnik wykona określoną liczbę kroków. Możesz także sterować przyciskami, trzymając przycisk silnik obraca się. Program ma wpisane na początku do zmiennej step 200, więc przy uruchomieniu programu silnik obraca się o 200 kroków. Rejestr OCR0A odpowiedzialny jest za prędkość silnika im mniejsza wartość tym szybciej silnik się obraca.<br />[syntax=c]/*<br /> * main.c<br /> *<br /> *  Created on: 09-05-2015<br /> *      Author: cover<br /> */<br /><br />#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br /><br />volatile int32_t step;<br /><br />uint8_t step_tab&#91;&#93;={<br />0b00001010,<br />0b00001000,<br />0b00001001,<br />0b00000001,<br />0b00000101,<br />0b00000100,<br />0b00000110,<br />0b00000010,<br />0b00000000<br />};<br /><br />ISR(TIMER0_COMPA_vect){<br />static uint8_t i=0;<br />if(step==0)PORTB=step_tab&#91;8&#93;;<br /><br />if(step&gt;0){<br />PORTB=step_tab&#91;i&#93;;<br /><br />if(i==0) i=8;<br />i--;<br />step--;<br />}<br /><br />if(step&lt;0){<br />PORTB=step_tab&#91;i&#93;;<br /><br />i++;<br />if(i==8)i=0;<br />step++;<br />}<br />if(!(PIND&amp;(1&lt;&lt;PD5))) step++;<br />if(!(PIND&amp;(1&lt;&lt;PD4))) step--;<br /><br />}<br /><br />int main(void){<br /><br />TCCR0A|=(1&lt;&lt;WGM01);<br />TCCR0B|=(1&lt;&lt;CS02);<br />TIMSK|=(1&lt;&lt;OCIE0A);<br />OCR0A=25;//predkosc silnika<br /><br />DDRB|=(1&lt;&lt;PB1)|(1&lt;&lt;PB2)|(1&lt;&lt;PB0)|(1&lt;&lt;PB3);//silnik<br /><br />PORTD|=(1&lt;&lt;PD4)|(1&lt;&lt;PD5); //przyciski<br /><br />step=200;<br /><br />sei();<br /><br />while(1){<br /><br /><br />}<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3088">gumeni</a> — 6 wrz 2015, o 15:07</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2015-09-06T13:25:49+01:00</updated>
<published>2015-09-06T13:25:49+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=12863&amp;p=139203#p139203</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=12863&amp;p=139203#p139203"/>
<title type="html"><![CDATA[Re: Problem z silnikiem krokowym]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=12863&amp;p=139203#p139203"><![CDATA[
Ja mam pomysł - zamiast szukać w internecie jakichś gotowców z których kompletnie nic nie rozumiesz - bo na to wychodzi, to polecam ci książkę<br /><!-- m --><a class="postlink" href="http://atnel.pl/mikrokontrolery-avr-jezyk-c.html" >http://atnel.pl/mikrokontrolery-avr-jezyk-c.html</a><!-- m --><br /><br />gdzie nie tylko ten temat będziesz miał ładnie opisany a przy okazji nauczysz się porządnie języka C dla AVR<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 6 wrz 2015, o 13:25</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[artixxx]]></name></author>
<updated>2015-09-06T12:34:01+01:00</updated>
<published>2015-09-06T12:34:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=12863&amp;p=139198#p139198</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=12863&amp;p=139198#p139198"/>
<title type="html"><![CDATA[Problem z silnikiem krokowym]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=12863&amp;p=139198#p139198"><![CDATA[
Witam<br />Mam problem ze sterowaniem silnikiem krokowym. Otóż po wgraniu do mikroprocesora programu i podłączenia układu na płytce stykowej nic się nie dzieje. Używam atmegi8 , silnika krokowego 28byj-48 i układu ULN2003 i zasilania(silnika i mikrokontrolera) z programatora(USBasp).<br />Kod : [syntax=c]#include&lt;avr/io.h&gt;<br />#include&lt;util/delay.h&gt;<br /><br /><br />unsigned char v&#91;&#93;={0x09,0x05,0x06,0x0a};<br />unsigned char w&#91;&#93;={0x0a,0x06,0x05,0x09};<br />unsigned int k,l,m,n;                      <br /><br /><br />int main(void)                <br />{<br />DDRB=0xff;<br /><br />while(1)                 <br />{<br />for(n=0;n&lt;5;n++)        <br />{<br />for(k=0;k&lt;4;k++)      <br />{<br />PORTB=v&#91;k&#93;;              <br />_delay_ms(2);            <br />}<br />}<br />for(m=0;m&lt;5;m++)<br />{<br />for(l=0;l&lt;4;l++)<br />{<br />PORTB=w&#91;l&#93;;            <br />_delay_ms(2);<br />}<br />}<br />}<br />}[/syntax]<br />Zarówno kod jak i schemat znalazłem w internecie , ale wydają się być poprawne. Jakieś pomysły co może być nie tak ?<br />Schemat: <a href="https://obrazkiforum.atnel.pl/10989/5349e0064cac9385d65da8f3af60cbde.jpg"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/10989/5349e0064cac9385d65da8f3af60cbde.jpg" alt="Obrazek" /></a><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=10989">artixxx</a> — 6 wrz 2015, o 12:34</p><hr />
]]></content>
</entry>
</feed>