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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2013-03-06T22:29:46+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=2490&amp;mode</id>
<entry>
<author><name><![CDATA[michal1210]]></name></author>
<updated>2013-03-06T22:29:46+01:00</updated>
<published>2013-03-06T22:29:46+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2490&amp;p=29979#p29979</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2490&amp;p=29979#p29979"/>
<title type="html"><![CDATA[Re: Multipleksowanie LED - 3 projekt z niebieskiej książki]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2490&amp;p=29979#p29979"><![CDATA[
No tak Modulo ;D<br />Faktycznie łatwiej i przejrzyściej to wygląda <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />może jeszcze jakiś ciekawy pomysł ?<br />hehe ja to ładnie pojechałem na około no ale działa <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> kwestia pewnie wprawy i zapamiętania wszystkich operatorów i właściwości języka C żeby nie błądzić i nie robić tak na około ;D<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=998">michal1210</a> — 6 mar 2013, o 22:29</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2013-03-06T21:27:14+01:00</updated>
<published>2013-03-06T21:27:14+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2490&amp;p=29970#p29970</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2490&amp;p=29970#p29970"/>
<title type="html"><![CDATA[Re: Multipleksowanie LED - 3 projekt z niebieskiej książki]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2490&amp;p=29970#p29970"><![CDATA[
Można to zrobić tak:<br />[syntax=c]temp_licznik = licznik; // np. temp_licznik = 1234<br />cy4 = temp_licznik % 10; // cy4 = 4<br />temp_licznik = temp_licznik / 10; //temp_licznik = 123<br />cy3 = temp_licznik % 10; //cy3 = 3<br />temp_licznik = temp_licznik / 10; //temp_licznik = 12<br />cy2 = temp_licznik % 10; // cy2 = 2<br />temp_licznik = temp_licznik / 10; //temp_licznik = 1<br />cy1 = temp_licznik % 10; //cy1 = 1[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 6 mar 2013, o 21:27</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[michal1210]]></name></author>
<updated>2013-03-06T21:08:04+01:00</updated>
<published>2013-03-06T21:08:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2490&amp;p=29967#p29967</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2490&amp;p=29967#p29967"/>
<title type="html"><![CDATA[Re: Multipleksowanie LED - 3 projekt z niebieskiej książki]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2490&amp;p=29967#p29967"><![CDATA[
Dzięki za podpowiedzi i sugestie <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />co do komentarzy w kodzie to oczywiście już je sobie zamieściłem i sorry że tutaj wrzuciłem bez <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />a może ktoś robił kiedyś podobny program (licznik) który nawijał do przodu ? prosiłbym aby podzielił się kodem w jaki sposób podszedł do tematu. A w szczególności interesuje mnie w jaki sposób wyciągał z liczb kilku cyfrowych liczbę jedności dziesiątek setek itp.  np. z liczby 1234  wyświetlić liczbę 4. Ja zrobiłem to poprzez małe równanie matematyczne ale może jest jakiś inny prostszy sposób ?<br /><br />Pozdrawiam<br />Michał<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=998">michal1210</a> — 6 mar 2013, o 21:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[The River]]></name></author>
<updated>2013-03-04T20:15:30+01:00</updated>
<published>2013-03-04T20:15:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2490&amp;p=29825#p29825</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2490&amp;p=29825#p29825"/>
<title type="html"><![CDATA[Re: Multipleksowanie LED - 3 projekt z niebieskiej książki]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2490&amp;p=29825#p29825"><![CDATA[
Przede wszystkim pisz program i komentarze tak żeby to było jasne dla ciebie i żebyś wracając po tygodniu/miesiącu/roku do twojego programu był w stanie sobie szybko przypomnieć co wtedy pisząc miałeś na myśli. <br /><br />A druga sprawa, przynajmniej dla mnie, program ma działać i wykonywać to co chcieliśmy, a w jaki sposób jest napisany to już jest nie istotne o ile jest on czytelny dla ciebie. No chyba że pracujesz w grupie programistów i z programu lub jego część którą napisałeś ma się jeszcze ktoś inny wyznać, no to wtedy musisz pisać w określony sposób. Ale to tylko moje zdanie na ten temat.<br /><br />A co do kodu który zamieściłeś to nie mam jakiś zastrzeżeń, aczkolwiek ja zazwyczaj po if'ie daje instrukcje, nawet jeśli jest jedna w nawias klamrowy, no chyba że jest naprawdę krótka to nie. Po prostu dla mnie wizualnie to lepiej wygląda pomimo że wydłuża kod.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=508">The River</a> — 4 mar 2013, o 20:15</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[michal1210]]></name></author>
<updated>2013-03-04T16:10:30+01:00</updated>
<published>2013-03-04T16:10:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2490&amp;p=29798#p29798</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2490&amp;p=29798#p29798"/>
<title type="html"><![CDATA[Multipleksowanie LED - 3 projekt z niebieskiej książki]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2490&amp;p=29798#p29798"><![CDATA[
Witam gorąco wszystkich forumowiczów!<br />Na sam początek nie odmówię sobie tej przyjemności i przy okazji że jest to mój pierwszy post na tym forum chciałbym pogratulować i złożyć wyrazy szacunku dla Pana Mirosława za to co stworzył zrobił i w jaki sposób to całą wiedzę przekazuje. Ogromny szacunek i pełen podziw dla Pana dziękuje bo dzięki Panu to sama przyjemność programować i zaczyna to coraz bardziej wciągać  <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /> <br /><br />No ale do rzeczy.<br />Jest to mój pierwszy &quot;poważny&quot; program(nie biorąc pod uwagę programów zapalających diodę) który napisałem sam bez pomocy internetu. <br />Opierając się jedynie na niebieskiej książce i na bazie trzeciego projektu dotyczącego multipleksowaniu LED.<br /><br />Otóż przerobiłem tylko pętlę &quot;while(1)&quot; <br />w oryginale z płyty dołączonej do książki program ten odliczał 6000 - 0 i odnowa.<br />Ja tą część kodu zamknąłem w komentarzu a pod spodem napisał fragment kodu który liczy od 0 - 9999 i od nowa została jeszcze zmieniona względem oryginału linia 38 z <span style="color: #0000FF">unit8_t</span> na <span style="color: #0000FF">unit16_t </span>oraz dodana jedna zmienna b - <span style="color: #0000FF">unit8_t b</span><br /><br />reszta kodu jest nie zmieniona i pozostała jak w oryginale. <br /><br />Prośba do was abyście ocenili moje podejście do tematu czy to co napisałem ma sens jest napisane zgodnie ze sztuką i czy ja przypadkiem nie potrzebnie tego nie skomplikowałem a można to było napisać dużo prościej/łatwiej  <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> <br /><br />Oto cały kod pliku main.c :<br />[syntax=c]/*<br /> * main.c<br /> *<br /> *  Created on: 2010-03-30<br /> *       Autor: Mirosław Kardaś<br /> */<br />#include &lt;avr/io.h&gt;// dołączenie głównego systemowego  pliku nagłówkowego<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br /><br /><br />#include &quot;d_led.h&quot;// dołączenie naszego pliku nagłówkowego (obsługa LED)<br /><br />int main(void)<br />{<br />// ****** inicjalizacja *********<br />d_led_init();   // inicjalizacja wyświetlacza multipleksowanego<br /><br />// testowa inicjalizacja zmiennych oraz liczb mających się wyświetlać na wyrw. LED<br />cy1=NIC;<br />cy2=4;<br />cy3=1;<br />cy4=NIC;<br /><br />sei();// włączenie globalnego zezwolenia na przerwania<br /><br /><br /><br />//DDRA |= (1&lt;&lt;PA5);<br />//while(1)<br />//{<br />//PORTA ^= (1&lt;&lt;PA5);<br />//_delay_ms(1000);<br />//}<br /><br />uint16_t licznik=9990;<br />uint16_t d1,d2,d3,d4;<br />uint8_t b;<br /><br />//**********************  pętla główna<br />while(1)<br />{<br />/*licznik--;<br /><br />d1=licznik/1000;<br />if(d1) cy1=d1; else cy1=NIC;<br />d2=(licznik-(d1*1000))/100;<br />if(d2) cy2=d2; else cy2=(licznik&gt;999)?0:NIC;<br />d3=(licznik-(d1*1000)-(d2*100))/10;<br />if(d3) cy3=d3; else cy3=(licznik&gt;99)?0:NIC;<br />d4=(licznik-(d1*1000)-(d2*100)-(d3*10));<br />cy4=d4;<br />_delay_ms(100);<br />//if(licznik&gt;9999) licznik=0;<br />if(!licznik) licznik=6000;<br />*/<br /><br />licznik++;<br />d1=licznik;<br />if(d1&lt;10) cy4=d1;<br />else if(d1&gt;=10 &amp;&amp; d1&lt;=10000) b=(d1/10)*10, cy4=(d1-b);<br /><br />d2=licznik/10;<br />if((!d2)||(d2&gt;=1000)) cy3=NIC;<br />else if(d2&lt;10) cy3=d2;<br />else if(d2&gt;=10 &amp;&amp; d2&lt;=1000) b=(d2/10)*10, cy3=(d2-b);<br /><br />d3=licznik/100;<br />if((!d3)||(d3&gt;=100)) cy2=NIC;<br />else if(d3&lt;10) cy2=d3;<br />else if(d3&gt;=10 &amp;&amp; d3&lt;=100)b=(d3/10)*10, cy2=(d3-b);<br /><br />d4=licznik/1000;<br />if(!d4) cy1=NIC;<br />else if(d4&lt;=10) cy1=d4;<br /><br />_delay_ms(500);<br /><br />if(licznik&gt;9999) licznik=0;<br />}<br />}<br />[/syntax]<br /><br />Pozdrawiam i czekam na wasze uwagi  <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> <br />a zapomniałem dodać najważniejszego program działa i liczy sobie ładnie od 0 - 9999 i odnowa  <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=998">michal1210</a> — 4 mar 2013, o 16:10</p><hr />
]]></content>
</entry>
</feed>