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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2019-07-19T11:46:24+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=8&amp;t=22420&amp;mode</id>
<entry>
<author><name><![CDATA[ShanSong]]></name></author>
<updated>2019-07-19T11:46:24+01:00</updated>
<published>2019-07-19T11:46:24+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=22420&amp;p=220488#p220488</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=22420&amp;p=220488#p220488"/>
<title type="html"><![CDATA[Re: Losowe zmienne dla mikrokontrolera. Jakieś pomysły? :D]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=22420&amp;p=220488#p220488"><![CDATA[
<div class="quotetitle">Szofer napisał(a):</div><div class="quotecontent"><br />Rand po resecie uC startuje od tych samych liczb, startuj je z liczb z timera i rand będzie wtedy zawsze różny.<br /></div><br /><br />Masz na myśli wrzucenie Randa do licznika? Mogę spróbować <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /><br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 3 minutach ]</span></strong><br /><br /><div class="quotetitle">Marhef napisał(a):</div><div class="quotecontent"><br />Albo możesz startować z wartości zmierzonej przez ADC. Jeśli wejście wisi w powietrzu, złapie jakieś śmieci.<br /></div><br /><br />Musiał bym chyba napisać Jeżeli =0 lub != 0 bo potrzebuję właściwie tylko 2 rodzajów: prawda, fałsz. Jeszcze nie korzystałem z ADC, ale faktycznie tu się może przydać :p<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=20526">ShanSong</a> — 19 lip 2019, o 11:46</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Marhef]]></name></author>
<updated>2019-07-19T11:42:24+01:00</updated>
<published>2019-07-19T11:42:24+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=22420&amp;p=220486#p220486</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=22420&amp;p=220486#p220486"/>
<title type="html"><![CDATA[Re: Losowe zmienne dla mikrokontrolera. Jakieś pomysły? :D]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=22420&amp;p=220486#p220486"><![CDATA[
Albo możesz startować z wartości zmierzonej przez ADC. Jeśli wejście wisi w powietrzu, złapie jakieś śmieci.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=12752">Marhef</a> — 19 lip 2019, o 11:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Szofer]]></name></author>
<updated>2019-07-19T11:13:48+01:00</updated>
<published>2019-07-19T11:13:48+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=22420&amp;p=220483#p220483</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=22420&amp;p=220483#p220483"/>
<title type="html"><![CDATA[Re: Losowe zmienne dla mikrokontrolera. Jakieś pomysły? :D]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=22420&amp;p=220483#p220483"><![CDATA[
Połacz obydwa, koncepcja wybrana dobra,<br />Rand po resecie uC startuje od tych samych liczb, startuj je z liczb z timera i rand będzie wtedy zawsze różny.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7664">Szofer</a> — 19 lip 2019, o 11:13</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[ShanSong]]></name></author>
<updated>2019-07-19T10:24:30+01:00</updated>
<published>2019-07-19T10:24:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=22420&amp;p=220481#p220481</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=22420&amp;p=220481#p220481"/>
<title type="html"><![CDATA[Losowe zmienne dla mikrokontrolera. Jakieś pomysły? :D]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=22420&amp;p=220481#p220481"><![CDATA[
Witam, chciałbym aby mój mikrokontroler wyświetlał na LCD losowe ułożenie toru przeszkód (tworzę grę). Mam możliwość korzystania z liczb pseudolosowych i kombinuję jak się da   <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /> <br />Próbowałem z funkcją rand(), licznikami, które włączały się np. po wyborze postaci i szybko zmieniały zmienne, aby te w samej grze podmieniały takiego X w lcd_locate(x,10). Pierwszy sposób nie wypalił, a drugi jest bardzo awaryjny. Ma ktoś jakieś pomysły?  <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> <br /><br />Trochę kodu:<br />[syntax=c]////-----------------------------------<br />//// TIMER &quot;losujący&quot; ułożenie bloków<br />////-----------------------------------<br />void licznik_RND1(void)// 40 Hz<br />{<br />TCCR0 |= (1&lt;&lt;WGM01);//tryb CTC<br />TCCR0 |= (1&lt;&lt;CS02) | (1&lt;&lt;CS00);//preskaler = 1024<br />OCR0 = 195;//rejestr porównania<br />TIMSK |= (1&lt;&lt;OCIE0);// zezwolenie na przerwania<br />}<br />uint8_t L;<br />ISR(TIMER0_COMP_vect)<br />{<br />RND1 = 0;<br />RND1 = 1;<br /><br />L++;<br /><br />if(L&gt;100)<br />{<br />_delay_ms(1);<br />L=0;<br />}<br />}<br /><br />uint8_t WIERSZ;<br />uint8_t KOLUMNA;<br /><br />void licznik_RND2(void)// 40 Hz<br />{<br />TCCR2 |= (1&lt;&lt;WGM01);//tryb CTC<br />TCCR2 |= (1&lt;&lt;CS02) | (1&lt;&lt;CS00);//preskaler = 1024<br />OCR2 = 195;//rejestr porównania<br />TIMSK |= (1&lt;&lt;OCIE2);// zezwolenie na przerwania<br />}<br />ISR(TIMER2_COMP_vect)<br />{<br />RND2 = 0;<br />RND2 = 1;<br />}<br /><br /><br />void blocks_drawer(uint8_t x)<br />{<br />if(RND1 == 0)<br />{<br />WIERSZ = 2;<br />}<br /><br />if(RND1 == 1)<br />{<br />WIERSZ = 3;<br />}<br /><br />if(RND2 == 0)<br />{<br />KOLUMNA = 16;<br />}<br /><br />if(RND2 == 1)<br />{<br />KOLUMNA = 17;<br />}<br /><br />lcd_locate(WIERSZ,KOLUMNA+x);<br />lcd_str(&quot;\x81&quot;);<br /><br />}[/syntax]<br /><br />z main:<br />[syntax=c]{<br /><br />start_locate();//początek<br />//blocks_locate1();//pierwsza partia<br />_delay_ms(1000);<br />blocks_drawer();<br />lcd_shift_L();<br /><br /><br /><br />panel_draw(1);<br />save_locate(1);;<br />cube_move_spd1(1);<br />blocks_drawer(2);<br />lcd_shift_L();<br /><br />panel_draw(2);<br />save_locate(2);<br />cube_move_spd1(2);<br />lcd_shift_L();<br /><br />panel_draw(3);<br />save_locate(3);<br />cube_move_spd1(3);<br />blocks_drawer(4);<br />lcd_shift_L();<br />}[/syntax]<br /><br />Odrazu przepraszam za bałagan, bardzo często to zmieniałem.<br /><br />ELI5  <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=20526">ShanSong</a> — 19 lip 2019, o 10:24</p><hr />
]]></content>
</entry>
</feed>