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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2013-02-11T22:30:19+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=2316&amp;mode</id>
<entry>
<author><name><![CDATA[kyp]]></name></author>
<updated>2013-02-11T22:30:19+01:00</updated>
<published>2013-02-11T22:30:19+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2316&amp;p=27565#p27565</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2316&amp;p=27565#p27565"/>
<title type="html"><![CDATA[Re: Mostek L293D]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2316&amp;p=27565#p27565"><![CDATA[
Jaki masz silnik? I czy zasilasz go z osobnego zasilacza? <br />Ja robiłem takie błędy ( jeśli chodzi o podłączanie) np: <br />1. Zasilałem przerobione serow z USB, jednak nie kręcił się on, bo miał zbyt małe napięcie, przez co ciężko mu było wytworzyć moment pozwalając pokonać opory mechaniczne przekładni. <br />Rozwiązanie to podpiąć zewnętrzne zasilanie. L293D może przyjąć na klatę około 36V, jednak przeważnie starcza 6-12. Ponadto wyższe napięcie zasilania silnika zwiększa zakres regulacji PWM. W tym wypadku popełniłem błąd nr 2: Nie połączyłem masy zasilacza i układu <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /><br />A tak pozatym spróbuj przenieść wszystkie te funkcje do pętli nieskończonej podepnij diodę i zobacz cóż się będzie dziać. Jeśli dobrze widzę: Twój program wykonuje wszystkie funkcje po czym przechodzi do pętli nieskończonej. To by tłumaczyło dlaczego dioda Ci się dioda zaświeca potem gaśnie i lipa.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=164">kyp</a> — 11 lut 2013, o 22:30</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2013-02-11T18:36:25+01:00</updated>
<published>2013-02-11T18:36:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2316&amp;p=27515#p27515</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2316&amp;p=27515#p27515"/>
<title type="html"><![CDATA[Re: Mostek L293D]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2316&amp;p=27515#p27515"><![CDATA[
Pierwszy MEGA BABOL w twoim kodzie:<br /><br />#define F_CPU 8000000<br /><br />ale nie łudź się, że usunięcie tego rozwiąże twoje wszystkie problemy, poza tym pokazując taki kod warto pokazać schemat jak sobie to wszystko połączyłeś bo i tu mogłeś zrobić babole skoro nie działa coś - rozumiesz - ? nie zawsze wina może być tylko w programie <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /> to nie komputer PC tylko elektronika i schemat czy PCB to podstawa.<br /><br />W czym piszesz ten kod ? w jakim środowisku ?<br /><br />Poza tym MotorOFF nie robi się stricte przez wyłączanie PWM'a bo co np gdy PWM'a byś nie używał ? a można nie używać - to co ? nie zatrzymałbyś silnika ?<br /><br />Przy tej okazji mogę śmiało polecić ci tę książkę:<br /><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 />w której to ale także wiele innych rzeczy jest fajnie opisanych.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 11 lut 2013, o 18:36</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[merazmus]]></name></author>
<updated>2013-02-11T17:17:26+01:00</updated>
<published>2013-02-11T17:17:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2316&amp;p=27509#p27509</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2316&amp;p=27509#p27509"/>
<title type="html"><![CDATA[Mostek L293D]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2316&amp;p=27509#p27509"><![CDATA[
Witam,<br />Chciałem napisać sobie bardzo prostą bibliotekę sterującą jednym silnikiem DC za pomocą L293D. Teoretycznie program powinien zakręcić silnikiem w obie strony i go wyłączyć. Niestety silnik nie reagował, więc podłączyłem zamiast niego diodę, żeby zobaczyć czy PWM działa. Po starcie programu dioda raz mruga i bardzo szybko gaśnie. Nic więcej się nie dzieje. Kod wygląda następująco:<br /><br />L293D.h<br />[syntax=c]<br /><br />#ifndef L293D_H<br />#define L293D_H<br /><br />#include &lt;avr/io.h&gt;<br /><br />#define MOTOR_1A_DIR DDRD<br />#define MOTOR_1A_PORT PORTD<br />#define MOTOR_1A_PIN (1&lt;&lt;PD6)<br /><br />#define MOTOR_2A_DIR DDRD<br />#define MOTOR_2A_PORT PORTD<br />#define MOTOR_2A_PIN (1&lt;&lt;PD4)<br /><br />#define OC2_DIR DDRB<br />#define OC2_PIN (1&lt;&lt;PB3)<br /><br />void MOTOR_init(void);<br />void MOTOR_left(void);<br />void MOTOR_right(void);<br />void MOTOR_stop(void);<br />void MOTOR_off(void);<br /><br />#endif /* L293D_H */<br /><br />[/syntax]<br /><br /><br />L293D.c<br />[syntax=c]<br /><br />#include &quot;L293D.h&quot;<br /><br />void MOTOR_init(void){<br />//Kierunek pinów 1A i 2A - wyjściowy<br />MOTOR_1A_DIR |= MOTOR_1A_PIN;<br />MOTOR_2A_DIR |= MOTOR_2A_PIN;<br /><br />//Stan pinów 1A i 2A - niski<br />MOTOR_1A_PORT &amp;= ~MOTOR_1A_PIN;<br />MOTOR_2A_PORT &amp;= ~MOTOR_2A_PIN;<br /><br />//Kierunek pinu OC2 - wyjściowy<br />OC2_DIR |= OC2_PIN;<br />//Tryb Fast PWM<br />TCCR2 |= (1&lt;&lt;WGM20) | (1&lt;&lt;WGM21);<br />//Clear OC2 on Compare Match, set OC2 at BOTTOM<br />TCCR2 |= (1&lt;&lt;COM21);<br />//Ustawienie preskalera na 1<br />TCCR2 |= (1&lt;&lt;CS20);<br />//Wypełnienie PWM<br />OCR2 = 0;<br />}<br /><br />void MOTOR_left(void){<br />MOTOR_1A_PORT &amp;= ~MOTOR_1A_PIN;<br />MOTOR_2A_PORT |= MOTOR_2A_PIN;<br />OCR2 = 255;<br />}<br /><br />void MOTOR_right(void){<br />MOTOR_1A_PORT |= MOTOR_1A_PIN;<br />MOTOR_2A_PORT &amp;= ~MOTOR_2A_PIN;<br />OCR2 = 255;<br />}<br /><br />void MOTOR_stop(void){<br />MOTOR_1A_PORT &amp;= ~MOTOR_1A_PIN;<br />MOTOR_2A_PORT &amp;= ~MOTOR_2A_PIN;<br />OCR2 = 255;<br />}<br /><br />void MOTOR_off(void){<br />OCR2 = 0;<br />}<br />[/syntax]<br /><br /><br />main.c<br />[syntax=c]<br /><br />#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &quot;L293D.h&quot;<br />#define F_CPU 8000000<br /><br />int main(void)<br />{<br />MOTOR_init();<br />_delay_ms(1000);<br />MOTOR_left();<br />_delay_ms(2000);<br />MOTOR_right();<br />_delay_ms(2000);<br />MOTOR_stop();<br /><br />    while(1)<br />    {<br />        <br />    }<br />}<br /><br />[/syntax]<br /><br /><span style="color: #FF0000">Kod w C wklejamy przy pomocy  [syntax=c] - Zielony J.  </span><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=924">merazmus</a> — 11 lut 2013, o 17:17</p><hr />
]]></content>
</entry>
</feed>