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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-08-31T21:18:51+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=23&amp;t=7728&amp;mode</id>
<entry>
<author><name><![CDATA[LA72]]></name></author>
<updated>2014-08-31T21:18:51+01:00</updated>
<published>2014-08-31T21:18:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=93773#p93773</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=93773#p93773"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=93773#p93773"><![CDATA[
Teraz, jak dla mnie, projekt bomba.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3028">LA72</a> — 31 sie 2014, o 21:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[artur85]]></name></author>
<updated>2014-08-31T21:15:09+01:00</updated>
<published>2014-08-31T21:15:09+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=93771#p93771</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=93771#p93771"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=93771#p93771"><![CDATA[
Jest update!<br /><br />1. Dodano zasilanie bateryjne (dawca - Samsung B2100 <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" />).<br />2. Do pracy został zaprzęgnięty EEPROM. Wyniki są wrzucane na bieżąco do pamięci. Po skończonej grze wyłączam układ, podpinam moją kocią przejściówkę RS232&lt;-&gt;USB, odpalam putty i przy włączaniu układu trzymam guzik &quot;0&quot;. Cały przebieg gry wędruje ładnie na terminal. Jest też dodany licznik rozegranych gier.<br />3. Pogrzebałem trochę w kodzie. Dodałem przydatną opcję. Jeśli kliknę 2x guzik CLR, to na wyświetlaczu przy klawiaturze wyświetlą mi się po kolei wszystkie aktualne wyniki oraz zapali się diodka informująca kto ma kartować. Dzięki temu nie muszę się wychylać i patrzeć na przedni panel.<br /><br /><a href="http://forum.atnel.pl/_obrazki/o/1212/6ae6800e0983fb53711f7583aae997a0.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/6ae6800e0983fb53711f7583aae997a0.jpg" alt="Obrazek" /></a> <a href="http://forum.atnel.pl/_obrazki/o/1212/1e0685aae9de704ed15a39088e9247cf.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/1e0685aae9de704ed15a39088e9247cf.jpg" alt="Obrazek" /></a> <a href="http://forum.atnel.pl/_obrazki/o/1212/d02d24ce46812261382e1f10e7a19d7f.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/d02d24ce46812261382e1f10e7a19d7f.jpg" alt="Obrazek" /></a> <a href="http://forum.atnel.pl/_obrazki/o/1212/acf4be8cc0fe82b8dadf694ec3c49d2c.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/acf4be8cc0fe82b8dadf694ec3c49d2c.png" alt="Obrazek" /></a><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1212">artur85</a> — 31 sie 2014, o 21:15</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[LA72]]></name></author>
<updated>2014-08-26T10:11:11+01:00</updated>
<published>2014-08-26T10:11:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=92921#p92921</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=92921#p92921"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=92921#p92921"><![CDATA[
Odnośnie statystyk, to mógłbyś dorobić UART i przesyłać dane do terminala na komputer.<br />Odpowiednio sformatowany tekst można by wtedy wydrukować dla potomnych.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3028">LA72</a> — 26 sie 2014, o 10:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[artur85]]></name></author>
<updated>2014-08-26T10:09:45+01:00</updated>
<published>2014-08-26T10:09:45+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=92920#p92920</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=92920#p92920"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=92920#p92920"><![CDATA[
W sumie to słuszna uwaga <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> Chociaż jak na razie nikt jeszcze przy grze bezpieczników nie wykręcał. Pomyślę nad zasilaniem bateryjnym albo zapisem do EEPROMa, no albo i jedno i drugie. Można by prowadzić jakieś statystyki, licznik przeprowadzonych gier... Jak znajdę trochę czasu to posiedzę nad kodem<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1212">artur85</a> — 26 sie 2014, o 10:09</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Rafał555]]></name></author>
<updated>2014-07-12T07:51:53+01:00</updated>
<published>2014-07-12T07:51:53+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87295#p87295</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87295#p87295"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87295#p87295"><![CDATA[
A ja w szczególności gratuluję zaprojektowania płytki pod wyświetlacze. Niedawno męczyłem się nad podobną z trzema<br />rejestrami to kilka dni zajęło zanim zszedłem do tylko trzech mostków przewodami.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2697">Rafał555</a> — 12 lip 2014, o 07:51</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-07-11T10:58:23+01:00</updated>
<published>2014-07-11T10:58:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87248#p87248</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87248#p87248"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87248#p87248"><![CDATA[
<div class="quotetitle">majster napisał(a):</div><div class="quotecontent"><br />dzieki tobie to juz koniec kantowania<br /></div><br /><br />I o to chodzi - kto ma komputer do TYSIĄCA ten ma władzę<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 11 lip 2014, o 10:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2014-07-11T07:36:39+01:00</updated>
<published>2014-07-11T07:36:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87233#p87233</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87233#p87233"/>
<title type="html"><![CDATA[Re: Odp: Coś dla sympatyków gry "Tysiąc"]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87233#p87233"><![CDATA[
Bajerka. W 1000 zawsze zapisuje moja zona i mnie kantuje dzieki tobie to juz koniec kantowania <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />Daje 1000 za pomysl <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 11 lip 2014, o 07:36</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kejter]]></name></author>
<updated>2014-07-11T05:25:26+01:00</updated>
<published>2014-07-11T05:25:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87232#p87232</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87232#p87232"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87232#p87232"><![CDATA[
Klasa. Uważam że to przez takie właśnie projekty człowiek chce się uczyć nowych rzeczy!<br /><br />Pozdrowienia dla autora!<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4110">Kejter</a> — 11 lip 2014, o 05:25</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Jado]]></name></author>
<updated>2014-07-10T23:16:26+01:00</updated>
<published>2014-07-10T23:16:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87225#p87225</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87225#p87225"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87225#p87225"><![CDATA[
Fajny pomysł <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":-)" title="Szczęśliwy" />  Gratulacje <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":-)" title="Szczęśliwy" /><br /><br />Musicie namiętnie grywać w tysiąca, bo przecież trzeba było zaprojektować i wykonać płytkę, polutować, napisać program na procka, itd, itp.... - a dla jednej gry od czasu do czasu, to by się nie opłacało robić takiego projektu <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";-)" title="Puszcza oko" /> <br /><br />Te animacje wyświetlaczowe przypominają mi podliczanie wyników na automatach-bilardach  - człowiek się zawsze cieszył jak mu wynik &quot;nabijało&quot; za zdobyte &quot;odbicia&quot; od różnych cennych przeszkód i guzików.  <br />Może kolega się pokusi - w dalszej kolejności prac- o skonstruowanie jakiegoś takiego małego bilardziku z łapkami, elektromagnesami itd...<img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";-)" title="Puszcza oko" />  <br /><br />BTW: To może mógłby być dobry pomysł na konkurs - gry elektroniczne? <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";-)" title="Puszcza oko" /><br /><br /><div class="quotetitle">mokrowski napisał(a):</div><div class="quotecontent"><br />Ooo Wiem.. co mogę pochwalić czego inni nie <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";-)" title="Puszcza oko" />  Bardzo fajne chiptunes <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":-)" title="Szczęśliwy" /> Łezka mi się w oku zakręciła i przypomniałem sobie czasy demosceny <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":-)" title="Szczęśliwy" /><br /></div><br />Nie wiedziałem, że Ty też z demosceny?  <br />Kto jeszcze? <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";-)" title="Puszcza oko" />  Przyznać się <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":-)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=852">Jado</a> — 10 lip 2014, o 23:16</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-07-10T22:44:32+01:00</updated>
<published>2014-07-10T22:44:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87224#p87224</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87224#p87224"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87224#p87224"><![CDATA[
<div class="quotetitle">artur85 napisał(a):</div><div class="quotecontent"><br />w końcu przestaną mi wytykać, że źle liczę.<br /></div><br /><br />Wiesz zawsze jako autor programu możesz wpleść tam jakiś &quot;hack&quot; który zawsze cichcem doda tobie parę punktów <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 10 lip 2014, o 22:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[artur85]]></name></author>
<updated>2014-07-10T22:34:23+01:00</updated>
<published>2014-07-10T22:34:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87223#p87223</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87223#p87223"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87223#p87223"><![CDATA[
Normalnie nie spodziewałem się aż takiej reakcji! Najpierw wchodzę na forum i patrzę a tu takie komentarze. Dzięki Mirku za nadanie nazwy mojej maszynce. Komputer pokładowy brzmi o niebo lepiej od licznika <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /> Bo pomysł był, wykonanie było a z odpowiednim nazwaniem mojego tworu to już problem. I dzięki za promocję projektu na fejsie! <br />Praktyczne zastosowanie miało swoją premierę wczoraj, układzik naliczył 3 tysiące. Przy okazji dokonałem paru poprawek w kodzie. Gracze zadowoleni, w końcu przestaną mi wytykać, że źle liczę.  <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> <br />Co do zasad gry, to ja gram tak: serca - 100, karo - 80, wino - 60, trefl - 40. I tylko jedna bomba na gracza (podobno kiedyś były na 3 bomby, może ktoś gdzieś tak gra jeszcze).<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1212">artur85</a> — 10 lip 2014, o 22:34</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Paul Dirac]]></name></author>
<updated>2014-07-10T20:37:36+01:00</updated>
<published>2014-07-10T20:37:36+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87209#p87209</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87209#p87209"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87209#p87209"><![CDATA[
wariat z ciebie - w pozytywnym tego słowa znaczeniu.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1035">Paul Dirac</a> — 10 lip 2014, o 20:37</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2014-07-10T19:45:58+01:00</updated>
<published>2014-07-10T19:45:58+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87201#p87201</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87201#p87201"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87201#p87201"><![CDATA[
Projekt, super <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" />, surowy w formie, ale pomysł i zastosowanie rewelacja <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" />.<p>Statystyki: Napisane przez Gość — 10 lip 2014, o 19:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-07-10T18:50:05+01:00</updated>
<published>2014-07-10T18:50:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87191#p87191</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87191#p87191"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87191#p87191"><![CDATA[
<div class="quotetitle">Heady1991 napisał(a):</div><div class="quotecontent"><br />meldunek serc to 120 o ile dobrze pamietam<br /></div><br /><br />Panowie - tu chodzi o pomysł, projekt , wykonanie , kod - a nie o ty ile ma tam jakiś meldunek <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 10 lip 2014, o 18:50</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Heady1991]]></name></author>
<updated>2014-07-10T18:48:08+01:00</updated>
<published>2014-07-10T18:48:08+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87189#p87189</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87189#p87189"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87189#p87189"><![CDATA[
meldunek serc to 120 o ile dobrze pamietam<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4618">Heady1991</a> — 10 lip 2014, o 18:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Papix95]]></name></author>
<updated>2014-07-10T18:45:38+01:00</updated>
<published>2014-07-10T18:45:38+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87188#p87188</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87188#p87188"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87188#p87188"><![CDATA[
O proszę, problem rozwiązany <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /> Ostatnimi czasy grając w tysiąca z siostrą i babcią, to na mnie spada obowiązek zapisywania wyników, a tu taki genialny pomysł na ułatwienie sobie życia. Elegancko wykonany projekt, a pomysł rewelacyjny! Sam muszę spróbować <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=551">Papix95</a> — 10 lip 2014, o 18:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matiwegr]]></name></author>
<updated>2014-07-10T18:05:31+01:00</updated>
<published>2014-07-10T18:05:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87180#p87180</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87180#p87180"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87180#p87180"><![CDATA[
Wow super projekt i wykonanie!<br /><br />Gratulacje!<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3833">matiwegr</a> — 10 lip 2014, o 18:05</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2014-07-10T16:55:15+01:00</updated>
<published>2014-07-10T16:55:15+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87179#p87179</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87179#p87179"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87179#p87179"><![CDATA[
OOOOOOO !!!!  superowy projekcik ....  aż serducho rośnie że powstają takie fajne rzeczy i są na &quot;naszym forum&quot; <br />tak tylko brać przykład ... z kolegi <br /><br />Świetne po prostu świetne <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 10 lip 2014, o 16:55</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-07-10T16:03:59+01:00</updated>
<published>2014-07-10T16:03:59+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87172#p87172</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87172#p87172"/>
<title type="html"><![CDATA[Re: Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87172#p87172"><![CDATA[
Pierwszy! <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />LOL , WOW, ŁAŁ .... bez cukrzenia - ale fajny i pomysłowy projekt - ja wprawdzie już dawno nie grałem w tysiąca ale moi domownicy czasem walczą ... normalnie aż mnie korci po takim artykule i filmiku żeby samemu zrobić takie coś <br /><br />wiesz co ? - pomijam już wykonanie bo fajne <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> kod bo działa <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> <br /><br />pomysł - pomysły się liczą ... a do tego taka dawka inspiracji że człowiek się czuje jakby połknął co najmniej 1,5 kg adrenaliny pomieszanej z fenyloetyloaminą ! (<!-- m --><a class="postlink" href="http://pl.wikipedia.org/wiki/2-Fenyloetyloamina" >http://pl.wikipedia.org/wiki/2-Fenyloetyloamina</a><!-- m -->) <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /><br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: kilkunastu sekundach ]</span></strong><br /><br />Boże jak ja lubię oglądać w necie takie pomysłowe projekty i napawać się myślami - że ja też coś takiego zrobię <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 10 lip 2014, o 16:03</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[artur85]]></name></author>
<updated>2014-07-10T14:52:03+01:00</updated>
<published>2014-07-10T14:52:03+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87168#p87168</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87168#p87168"/>
<title type="html"><![CDATA[Coś dla sympatyków gry &quot;Tysiąc&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7728&amp;p=87168#p87168"><![CDATA[
<img src="http://forum.atnel.pl/_obrazki/o/54/451014fdb6f2b433b98285ea76e55d8d.jpg" alt="Obrazek" /><br />„Tysiąc” to gra lubiana zarówno przeze mnie jak i przez resztę domowników. Co jakiś czas zbieramy się i urządzamy sobie domowe turnieje. Tak się przyjęło, że to właśnie mi przypada zapisywanie wyników. Czasem zdarzy mi się coś tam źle obliczyć. Tak więc postanowiłem wykonać maszynkę liczącą za mnie i wyświetlającą wyniki. <br /><br /><a href="http://forum.atnel.pl/_obrazki/o/1212/f9aab92d0c6b4523ae0a1568eca606a5.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/f9aab92d0c6b4523ae0a1568eca606a5.jpg" alt="Obrazek" /></a> <a href="http://forum.atnel.pl/_obrazki/o/1212/804b60821a8ed8262568158f64ba7542.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/804b60821a8ed8262568158f64ba7542.jpg" alt="Obrazek" /></a><br /><br />Układ posiada 5 multipleksowanych poczwórnych wyświetlaczy 7segmentowych. Wyświetlanie liczb odbywa się w dwóch trybach:<br />- 8 cyklowy. Przez 4 pierwsze cykle zasilane są koleje anody, 4 kolejne cykle - wszystkie zgaszone. Pobór prądu do ok. 330mA. Domyślnie włączony.<br />- 4 cyklowy. Wraz ze zmianą cyklu, zasilana jest kolejna anoda. Zmierzony pobór prądu to maksymalnie ok. 660mA. Aby wybrać ten tryb przy włączaniu układu trzeba przytrzymać dowolny klawisz.<br />W każdym cyklu wysyłanych jest 5 liczb za pomocą rejestrów 74hc595 z wykorzystaniem sprzętowej transmisji SPI. <br /><br />Układ posiada również multipleksowaną klawiaturkę. Dzięki poradnikom o przetwornikach ADC udało mi się napisać do niej fajną nieblokującą obsługę. Może przy tym projekcie nie jest jakoś specjalnie potrzebna, ale napisanie takiego przyjemnego kawałka kodu daje trochę radochy <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /><br /><br />Licznik składa się z dwóch modułów:<br /><br />1. Panel z klawiaturą<br /><br /><a href="http://forum.atnel.pl/_obrazki/o/1212/a884d081fcf4343288dd32d4b18a1718.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/a884d081fcf4343288dd32d4b18a1718.png" alt="Obrazek" /></a> <a href="http://forum.atnel.pl/_obrazki/o/1212/66533d525279da16a4cff20e0baee44a.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/66533d525279da16a4cff20e0baee44a.png" alt="Obrazek" /></a> <a href="http://forum.atnel.pl/_obrazki/o/1212/814ef6e24500d57bfd3a0035eb3cd081.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/814ef6e24500d57bfd3a0035eb3cd081.png" alt="Obrazek" /></a><br /><br /><a href="http://forum.atnel.pl/_obrazki/o/1212/be89d860bf441c112ed557b305d1de01.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/be89d860bf441c112ed557b305d1de01.jpg" alt="Obrazek" /></a> <a href="http://forum.atnel.pl/_obrazki/o/1212/d110e5461c4b1527514fdf940328eaed.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/d110e5461c4b1527514fdf940328eaed.jpg" alt="Obrazek" /></a><br /><br />2. Panel z wyświetlaczami<br /><br /><a href="http://forum.atnel.pl/_obrazki/o/1212/05c19ef59016a6c7ede69ab36a2c3f47.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/05c19ef59016a6c7ede69ab36a2c3f47.png" alt="Obrazek" /></a> <a href="http://forum.atnel.pl/_obrazki/o/1212/5009ed5bb59a13473c48854a2387ab54.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/5009ed5bb59a13473c48854a2387ab54.png" alt="Obrazek" /></a> <a href="http://forum.atnel.pl/_obrazki/o/1212/cc3c99723f383eb2fc35d91a1b45bf35.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/cc3c99723f383eb2fc35d91a1b45bf35.png" alt="Obrazek" /></a><br /><br /><a href="http://forum.atnel.pl/_obrazki/o/1212/e9ba421c18308eca9303a6bbb7480073.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/e9ba421c18308eca9303a6bbb7480073.jpg" alt="Obrazek" /></a> <a href="http://forum.atnel.pl/_obrazki/o/1212/02bf3f89f23ea0cce5a4b46a52205da3.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1212/02bf3f89f23ea0cce5a4b46a52205da3.jpg" alt="Obrazek" /></a><br /><br />Wykorzystany procek to atmega8, taktowanie 8MHz, wewnętrzny zegar. <br /><br />main.c<br />[syntax=c]/*<br /> * main.c<br /> *<br /> *  Created on: 17-06-2014<br /> *      Author: Artur<br /> */<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 />#include &quot;my_spi.h&quot;<br />#include &quot;klawiatura.h&quot;<br /><br />//deklaracje funkcji<br /><br />void czyja_kolej(uint8_t *diody,uint8_t nr);<br /><br /><br />//definicje zmiennych globalnych<br /><br />int16_t roznica&#91;5&#93;;<br />uint8_t klawiatura_temp;<br />uint8_t klawiatura;<br /><br /><br />int main(void){<br /><br />//inicjalizacja spi i klawiatury<br />klawiatura_init();<br />timer_spi_init();<br /><br />//definicje zmiennych lokalnych<br />uint8_t temp=0;<br />uint8_t kto_kartuje=1;<br /><br />sei();<br />temp=button();<br /><br />//jeśli przy włączaniu gry którkolwiek z klawiszy będzie wciśnięty,<br />//to wyświetlane liczby będą się świecić jaśniej<br />if (temp){<br />jasnosc=8;<br />}else<br />jasnosc=128;<br /><br />//przy starcie gry wyśietl same &quot;-&quot; na panelu przednim<br />liczby&#91;0&#93;=15000;<br />liczby&#91;1&#93;=15000;<br />liczby&#91;2&#93;=15000;<br />liczby&#91;3&#93;=15000;<br />liczby&#91;4&#93;=34;<br />aktywne_pola=0b00011111;<br /><br />//wybór liczby graczy<br />while ((3!=klawiatura)&amp;&amp;(4!=klawiatura))<br />{<br />temp=button();<br />if (temp){<br />if (klawiatura_temp&lt;10)<br />klawiatura_temp++;<br />if (9==klawiatura_temp)<br />klawiatura=temp;<br />}<br />else<br />klawiatura_temp=0;<br />}<br /><br />//zerowanie paneli - start gry<br />liczby&#91;4&#93;=0;<br />liczby&#91;3&#93;=0;<br />liczby&#91;2&#93;=0;<br />liczby&#91;1&#93;=0;<br />liczby&#91;0&#93;=0;<br />diody|=GRACZ1MENU;<br />diody|=GRACZ2MENU;<br />diody|=GRACZ3MENU;<br />if (3 == klawiatura)<br />{<br />aktywne_pola=0b00000111;<br />kto_kartuje=2;<br />}<br />else{<br />aktywne_pola=0b00001111;<br />diody|=GRACZ4MENU;<br /><br />}<br />czyja_kolej(&amp;diody,kto_kartuje); // wyświetlenie osoby kartującej<br />temp=0;<br />klawiatura=0;<br /><br />while (1){<br /><br />if(!timer1)<br />{<br />timer1=4;//ustawienie zegara na ok 103Hz (411/4)<br /><br />// animacja z dodawaniem/odejmowaniem wyniku<br />for (uint8_t i=0;i&lt;5;i++){<br />if(roznica&#91;i&#93;){<br />if(roznica&#91;i&#93;&gt;0){<br />roznica&#91;i&#93;--;<br />liczby&#91;i&#93;++;<br />}<br />else<br />{<br />roznica&#91;i&#93;++;<br />liczby&#91;i&#93;--;<br />}<br />}<br />}<br /><br />//obsługa klawisza<br /><br />// programowa eliminacja drgań styków<br />temp=button();<br />if (temp){<br />if (klawiatura_temp&lt;10)<br />klawiatura_temp++;<br />if (9==klawiatura_temp)<br />klawiatura=temp;<br />}<br />else<br />klawiatura_temp=0;<br />}<br />if (klawiatura){<br /><br />// nacisnieto klawisze 0 - 9<br />if (klawiatura&lt;=10){<br />aktywne_pola|=(1&lt;&lt;4);<br />if (liczby&#91;4&#93;&lt;1000)<br />{<br />liczby&#91;4&#93;=liczby&#91;4&#93;*10+klawiatura%10;<br />}<br />}<br />else<br />{<br /><br />// nacisnieto klawisze GRACZ1-GRACZ4<br />if (klawiatura&lt;=14)<br />{<br />//sprawdza czy jest 3 czy 4 graczy, jak 3 to klawisz z graczem 4 nieaktywny<br />if ((11==klawiatura &amp;&amp; ((~aktywne_pola)&amp;(1&lt;&lt;3)))){<br /><br />}<br />else<br />{<br />if (((diody&amp;(16&lt;&lt;(14-klawiatura)))&amp;&amp;liczby&#91;4&#93;!=10000)||((liczby&#91;4&#93;==10000)&amp;&amp;((~bomba)&amp;(1&lt;&lt;(14-klawiatura))))){<br />diody&amp;=~(16&lt;&lt;(14-klawiatura));<br /><br />// gdy liczby&#91;4&#93; = 10000 to oznacza, że zrobiono bombe<br />if (10000 == liczby&#91;4&#93;){<br />liczby&#91;4&#93;=0;<br />bomba|=(1&lt;&lt;(14-klawiatura));<br />diody&amp;=~0xF0;<br />aktywne_pola&amp;=~(1&lt;&lt;4);<br />}<br />else{<br /><br />// zaokrąglanie do 10<br />if (liczby&#91;4&#93;%10&lt;=5)<br />liczby&#91;4&#93;-=liczby&#91;4&#93;%10;<br />else<br />liczby&#91;4&#93;=liczby&#91;4&#93;-liczby&#91;4&#93;%10+10;<br /><br />// jeśli wynik jest z przedziału &lt;901;999&gt; to dodawaj do 900<br />if ((liczby&#91;14-klawiatura&#93;+liczby&#91;4&#93;&gt;900) &amp;&amp;(liczby&#91;14-klawiatura&#93;+liczby&#91;4&#93;&lt;1000)){<br />liczby&#91;4&#93;=900-liczby&#91;14-klawiatura&#93;;<br />}<br />aktywne_pola&amp;=~(1&lt;&lt;4);<br />roznica&#91;14-klawiatura&#93;+=liczby&#91;4&#93;;<br />liczby&#91;4&#93;=0;<br />}<br /><br />//koniec kolejki, zapal diody przy klawiaturze, wyświetl następnego gracza rozdjącego karty<br />if (!((diody)&amp;0xF0)){<br />diody|=GRACZ1MENU;<br />diody|=GRACZ2MENU;<br />diody|=GRACZ3MENU;<br />kto_kartuje++;<br />if ((aktywne_pola)&amp;(1&lt;&lt;3)){<br />diody|=GRACZ4MENU;<br />if (kto_kartuje&gt;4)<br />kto_kartuje=1;<br />}<br />else<br />{<br />if (kto_kartuje&gt;4)<br />kto_kartuje=2;<br />}<br />czyja_kolej(&amp;diody,kto_kartuje); // ustawienie kropki (zapalenie diody)<br />}<br />}<br />}<br />}<br />}<br />switch (klawiatura){<br />case 15: // znak minus<br />if (liczby&#91;4&#93;&lt;10000)<br />liczby&#91;4&#93;=0-liczby&#91;4&#93;;<br />break;<br />case 16: //bomba<br />aktywne_pola|=(1&lt;&lt;4);<br />liczby&#91;4&#93;=10000;<br />break;<br />case 17: //cofnij - zeruj wprowadzaną liczbę<br />liczby&#91;4&#93;=0;<br />aktywne_pola&amp;=~(1&lt;&lt;4);<br />break;<br />}<br />klawiatura=0;<br />}<br />}<br />}<br />void czyja_kolej(uint8_t *diody,uint8_t nr){<br />if(nr&lt;5 &amp;&amp; nr&gt;0)<br />*diody= ( (*diody) &amp; 0xF0 ) | (1&lt;&lt;(4-nr) &amp; 0x0F);<br />}[/syntax]<br /><br />my_spi.c<br />[syntax=c]/*<br /> * my_spi.c<br /> *<br /> *  Created on: 29-06-2014<br /> *      Author: Artur<br /> */<br /><br />#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &quot;my_spi.h&quot;<br /><br />uint8_t cyfry&#91;&#93; ={<br />~((SEG_A|SEG_B|SEG_C|SEG_D|SEG_E|SEG_F)),// cyfra 0 0x3F C0<br />~((SEG_B|SEG_C)),// cyfra 1 0x06 F9<br />~((SEG_A|SEG_B|SEG_D|SEG_E|SEG_G)),// cyfra 2 0x5B A4<br />~((SEG_A|SEG_B|SEG_C|SEG_D|SEG_G)),// cyfra 3 0x4F B0<br />~((SEG_B|SEG_C|SEG_F|SEG_G)),// cyfra 4 0x66 99<br />~((SEG_A|SEG_C|SEG_D|SEG_F|SEG_G)),// cyfra 5 0x6D 92<br />~((SEG_A|SEG_C|SEG_D|SEG_E|SEG_F|SEG_G)),// cyfra 6 0x7D 82<br />~((SEG_A|SEG_B|SEG_C)),// cyfra 7 0x07 F8<br />~((SEG_A|SEG_B|SEG_C|SEG_D|SEG_E|SEG_F|SEG_G)),// cyfra 8 0x7F 80<br />~((SEG_A|SEG_B|SEG_C|SEG_D|SEG_F|SEG_G)),// cyfra 9 0x6F 90<br />~((SEG_G)),// znak -<br />~0x00,// puste pole<br />~((SEG_A|SEG_B|SEG_F|SEG_G)),// symbol bomby<br />~(SEG_A),// segm A<br />~(SEG_B),// segm B<br />~(SEG_C),// segm C<br />~(SEG_D),// segm D<br />~(SEG_E),// segm E<br />~(SEG_F)// segm F<br /><br /><br />};<br />volatile int16_t liczby&#91;5&#93;;<br />int8_t liczba&#91;5&#93;&#91;4&#93;;<br />uint8_t aktywne_pola;<br />uint8_t bomba;<br />uint8_t diody;<br />volatile uint8_t timer1;<br />uint8_t jasnosc;<br />void konwersja(int8_t liczba_out&#91;&#93;,int16_t liczba_in){<br />int16_t liczba_in_temp=liczba_in;<br />int8_t liczba_out_temp&#91;4&#93;={0,0,0,0};<br /><br />//konwertowana liczba jest dodatnia<br />if (liczba_in&gt;=0){<br /><br />//liczba jest mniejsza od 10000 czyli mieści się na wyświetlaczu 4x7segm<br />if (liczba_in&lt;10000){<br />liczba_out_temp&#91;0&#93;=liczba_in/1000;<br />liczba_in=liczba_in%1000;<br />liczba_out_temp&#91;1&#93;=liczba_in/100;<br />liczba_in=liczba_in%100;<br />liczba_out_temp&#91;2&#93;=liczba_in/10;<br />liczba_out_temp&#91;3&#93;=liczba_in%10;<br /><br />//usuwanie niepotrzebnych zer np &quot;0010&quot; -&gt; &quot;  10&quot;<br />if (liczba_in_temp&lt;10)<br />{<br />liczba_out_temp&#91;0&#93;=11;<br />liczba_out_temp&#91;1&#93;=11;<br />liczba_out_temp&#91;2&#93;=11;<br />}<br />else<br />if (liczba_in_temp&lt;100){<br />liczba_out_temp&#91;0&#93;=11;<br />liczba_out_temp&#91;1&#93;=11;<br />}<br />else<br />if (liczba_in_temp&lt;1000)<br />liczba_out_temp&#91;0&#93;=11;<br />}<br />else //liczba za duża i nie da się wyświetlić w całości - wyświetl &quot;----&quot;<br />{<br />liczba_out_temp&#91;0&#93;=10;<br />liczba_out_temp&#91;1&#93;=10;<br />liczba_out_temp&#91;2&#93;=10;<br />liczba_out_temp&#91;3&#93;=10;<br />}<br />}<br />else<br />//liczba jest ujemna<br />{<br />//liczba jest większa od -1000 czyli mieści się na wyświetlaczu 4x7segm<br />if ((-liczba_in)&lt;1000){<br />liczba_out_temp&#91;0&#93;=(-liczba_in)/1000;<br />liczba_in=liczba_in%1000;<br />liczba_out_temp&#91;1&#93;=(-liczba_in)/100;<br />liczba_in=liczba_in%100;<br />liczba_out_temp&#91;2&#93;=(-liczba_in)/10;<br />liczba_out_temp&#91;3&#93;=(-liczba_in)%10;<br />//usuwanie niepotrzebnych zer np &quot;0-10&quot; -&gt; &quot; -10&quot;<br />if ((-liczba_in_temp)&lt;10)<br />{<br />liczba_out_temp&#91;2&#93;=10;<br />liczba_out_temp&#91;1&#93;=11;<br />liczba_out_temp&#91;0&#93;=11;<br />}<br />else<br />{<br />if ((-liczba_in_temp)&lt;100)<br />{<br />liczba_out_temp&#91;1&#93;=10;<br />liczba_out_temp&#91;0&#93;=11;<br />}<br />else<br />liczba_out_temp&#91;0&#93;=10;<br />}<br />}<br />else//liczba za mała i nie da się wyświetlić w całości - wyświetl &quot;----&quot;<br />{<br />liczba_out_temp&#91;0&#93;=10;<br />liczba_out_temp&#91;1&#93;=10;<br />liczba_out_temp&#91;2&#93;=10;<br />liczba_out_temp&#91;3&#93;=10;<br />}<br />}<br />liczba_out&#91;0&#93;=liczba_out_temp&#91;0&#93;;<br />liczba_out&#91;1&#93;=liczba_out_temp&#91;1&#93;;<br />liczba_out&#91;2&#93;=liczba_out_temp&#91;2&#93;;<br />liczba_out&#91;3&#93;=liczba_out_temp&#91;3&#93;;<br />}<br />void timer_spi_init(void){<br />//tryb CTC<br />TCCR2|=(1&lt;&lt;WGM21);<br />TCCR2&amp;=~(1&lt;&lt;WGM20);<br />//  preskaler 1024<br />TCCR2|=(1&lt;&lt;CS22)|(1&lt;&lt;CS21)|(1&lt;&lt;CS20);<br />OCR2=19; // czestotliosc wywolania przerwania ok 411Hz<br />//zezwolenie na porwonanie Compare Match<br />TIMSK|=(1&lt;&lt;OCIE2);<br /><br />// konfiguracja anod wyświetlaczy<br />DDRC|=(1&lt;&lt;PC0|1&lt;&lt;PC1|1&lt;&lt;PC2|1&lt;&lt;PC3);<br />PORTC|=(1&lt;&lt;PC0|1&lt;&lt;PC1|1&lt;&lt;PC2|1&lt;&lt;PC3);<br /><br />// konfiguracja portów SPI, inicjalizacja SPI<br />DDRB|=(1&lt;&lt;PB3)|(1&lt;&lt;PB5)|(1&lt;&lt;PB2);<br />SPCR|= (1&lt;&lt;SPE)|(1&lt;&lt;MSTR);<br />SPSR|=(1&lt;&lt;SPI2X);<br />}<br /><br />ISR(TIMER2_COMP_vect){<br />static uint8_t aktualna_pozycja=1;<br />uint8_t i;<br />uint8_t temp=0;<br />for (i=0;i&lt;4;i++){<br />konwersja(liczba&#91;i&#93;,liczby&#91;i&#93;);<br />}<br /><br />//wyświetlenie symbolu bomby<br />if (10000 == liczby&#91;4&#93;){<br />liczba&#91;4&#93;&#91;0&#93;=11;<br />liczba&#91;4&#93;&#91;1&#93;=11;<br />liczba&#91;4&#93;&#91;2&#93;=11;<br />liczba&#91;4&#93;&#91;3&#93;=12;<br />}<br />else<br />konwersja(liczba&#91;4&#93;,liczby&#91;4&#93;);<br />for (uint8_t i=0;i&lt;5;i++){<br />if (aktywne_pola&amp;(1&lt;&lt;i)){<br />switch (aktualna_pozycja){<br />case 1:<br />temp=cyfry&#91;liczba&#91;i&#93;&#91;0&#93;&#93;;<br /><br />//sprawdzenie czy gracz ma bombę i czy kartuje<br />if (((i&lt;4)&amp;&amp;(bomba&amp;(1&lt;&lt;i)))||((4==i)&amp;&amp;(diody&amp;GRACZ4MENU)))<br />{<br />temp&amp;=~(1&lt;&lt;7);<br />}<br />break;<br />case 2:<br />temp=cyfry&#91;liczba&#91;i&#93;&#91;1&#93;&#93;;<br />//sprawdzenie czy gracz kartuje<br />if ((4==i)&amp;&amp;(diody&amp;GRACZ3MENU))<br />{<br />temp&amp;=~(1&lt;&lt;7);<br />}<br />break;<br />case 4:<br />temp=cyfry&#91;liczba&#91;i&#93;&#91;2&#93;&#93;;<br />//sprawdzenie czy gracz kartuje<br />if ((4==i)&amp;&amp;(diody&amp;GRACZ2MENU))<br />{<br />temp&amp;=~(1&lt;&lt;7);<br />}<br />break;<br />case 8:<br />temp=cyfry&#91;liczba&#91;i&#93;&#91;3&#93;&#93;;<br />//sprawdzenie czy gracz kartuje oraz zapalenie diod przy klawiaturze<br />if (((i&lt;4)&amp;&amp;(diody&amp;(1&lt;&lt;i)))||((4==i)&amp;&amp;(diody&amp;GRACZ1MENU)))<br />{<br />temp&amp;=~(1&lt;&lt;7);<br />}<br />break;<br />}<br />}<br />else//sprawdzenie czy gracz kartuje, ma bombę oraz zapalenie diod przy klawiaturze<br />temp=0xFF;<br />switch (aktualna_pozycja){<br />case 1:<br />if ((4==i)&amp;&amp;(diody&amp;GRACZ4MENU))<br />{<br />temp&amp;=~(1&lt;&lt;7);<br />}<br />break;<br />case 2:<br />if ((4==i)&amp;&amp;(diody&amp;GRACZ3MENU))<br />{<br />temp&amp;=~(1&lt;&lt;7);<br />}<br />break;<br />case 4:<br />if ((4==i)&amp;&amp;(diody&amp;GRACZ2MENU))<br />{<br />temp&amp;=~(1&lt;&lt;7);<br />}<br />break;<br />case 8:<br />if ((4==i)&amp;&amp;(diody&amp;GRACZ1MENU))<br />{<br />temp&amp;=~(1&lt;&lt;7);<br />}<br />break;<br />}<br />SPDR=temp;<br />while(!(SPSR&amp;(1&lt;&lt;SPIF)));<br />}<br />PORTB|=(1&lt;&lt;PB2);<br />_delay_us(1);<br />PORTB&amp;=~(1&lt;&lt;PB2);<br />PORTC = ( ~aktualna_pozycja &amp; 0b00001111 ) | ( PORTC &amp; 0b11110000 ) ;<br />//jeśli jasnosc wynosi 8to każda anoda zapala się z częstotliością 411Hz/4 = 102Hz<br />//jeśli jasnosc wynosi 128to każda anoda zapala się z częstotliwością 411Hz/8= 51Hz<br />if (aktualna_pozycja&lt;jasnosc)<br />aktualna_pozycja&lt;&lt;=1;<br />else<br />aktualna_pozycja=1;<br />//timer programowy<br />uint8_t n=timer1;<br />if(n) timer1=--n;<br /><br /><br /><br /><br />}[/syntax]<br /><br />my_spi.h<br />[syntax=c]/*<br /> * my_spi.h<br /> *<br /> *  Created on: 29-06-2014<br /> *      Author: Artur<br /> */<br /><br />#ifndef MY_SPI_H_<br />#define MY_SPI_H_<br /><br /><br />#define GRACZ1MENU (1&lt;&lt;4)<br />#define GRACZ2MENU (1&lt;&lt;5)<br />#define GRACZ3MENU (1&lt;&lt;6)<br />#define GRACZ4MENU (1&lt;&lt;7)<br />#define BOMBA1 (1&lt;&lt;0)<br />#define BOMBA2 (1&lt;&lt;1)<br />#define BOMBA3 (1&lt;&lt;2)<br />#define BOMBA4 (1&lt;&lt;3)<br />#define GRACZ1 (1&lt;&lt;0)<br />#define GRACZ2 (1&lt;&lt;1)<br />#define GRACZ3 (1&lt;&lt;2)<br />#define GRACZ4 (1&lt;&lt;3)<br />#define SEG_A (1&lt;&lt;0)<br />#define SEG_B (1&lt;&lt;1)<br />#define SEG_C (1&lt;&lt;2)<br />#define SEG_D (1&lt;&lt;3)<br />#define SEG_E (1&lt;&lt;4)<br />#define SEG_F (1&lt;&lt;5)<br />#define SEG_G (1&lt;&lt;6)<br />#define SEG_DOT (1&lt;&lt;7)<br /><br />//deklaracje zmiennych<br />extern volatile int16_t liczby&#91;5&#93;;<br />extern int8_t liczba&#91;5&#93;&#91;4&#93;;<br />extern uint8_t jasnosc;<br />extern uint8_t aktywne_pola;<br />extern uint8_t bomba;<br />extern uint8_t diody;<br />extern volatile uint8_t timer1;<br /><br />//deklaracje funkcji<br />void timer_spi_init(void);<br /><br />#endif /* MY_SPI_H_ */[/syntax]<br /><br />klawiatura.c<br />[syntax=c]/*<br /> * klawiatura.c<br /> *<br /> *  Created on: 01-07-2014<br /> *      Author: Artur<br /> */<br />#include &lt;avr/io.h&gt;<br />#include &quot;klawiatura.h&quot;<br />#include &lt;util/delay.h&gt;<br /><br /><br />void klawiatura_init(void){<br /><br /><br />//konfiguracja portow<br /><br />//piny PD0, PD1, PD2, PD3 - wyjście<br />DDRD |= (1&lt;&lt;PD0)|(1&lt;&lt;PD1)|(1&lt;&lt;PD2)|(1&lt;&lt;PD3);<br /><br />//piny wyjściowe portu ustawione jako stan wysoki,<br />PORTD |= (1&lt;&lt;PD0)|(1&lt;&lt;PD1)|(1&lt;&lt;PD2)|(1&lt;&lt;PD3);<br /><br />//piny PD4, PD5, PD6, PD7 - wejście<br />DDRD &amp;= ~((1&lt;&lt;PD4)|(1&lt;&lt;PD5)|(1&lt;&lt;PD6)|(1&lt;&lt;PD7));<br /><br />//piny wejściowe portu podciągnięte programowo do VCC<br />PORTD |= (1&lt;&lt;PD4)|(1&lt;&lt;PD5)|(1&lt;&lt;PD6)|(1&lt;&lt;PD7);<br /><br />DDRC &amp;= ~(1&lt;&lt;PC5);<br /><br />PORTC |= (1&lt;&lt;PC5);<br />}<br />uint8_t button(void)<br />{<br />uint8_t klawisz = 0;<br /><br />//sprawdzenie czy naciśnięto klawisz w pierwszym wierszu<br />PORTD = (((~(1&lt;&lt;PD0))&amp;0x0F)|(PORTD&amp;0xF0));<br />_delay_us(10);<br />if (!(PIND &amp; (1&lt;&lt;PD4)))<br />klawisz=1;//button: 1<br />if (!(PIND &amp; (1&lt;&lt;PD5)))<br />klawisz=4;//button: 4<br />if (!(PIND &amp; (1&lt;&lt;PD6)))<br />klawisz=7;//button: 7<br />if (!(PINC &amp; (1&lt;&lt;PC5)))<br />klawisz= 15;//button: minus<br />if (!(PIND &amp; (1&lt;&lt;PD7)))<br />klawisz= 16;//button: bomba<br /><br />//sprawdzenie czy naciśnięto klawisz w drugim wierszu<br />PORTD = (((~(1&lt;&lt;PD1))&amp;0x0F)|(PORTD&amp;0xF0));<br />_delay_us(10);<br />if (!(PIND &amp; (1&lt;&lt;PD4)))<br />klawisz=2;//button: 2<br />if (!(PIND &amp; (1&lt;&lt;PD5)))<br />klawisz=5;//button: 5<br />if (!(PIND &amp; (1&lt;&lt;PD6)))<br />klawisz=8;//button: 8<br />if (!(PINC &amp; (1&lt;&lt;PC5)))<br />klawisz= 10;//button: 0<br /><br />//sprawdzenie czy naciśnięto klawisz w pierwszym wierszu<br />PORTD = (((~(1&lt;&lt;PD2))&amp;0x0F)|(PORTD&amp;0xF0));<br />_delay_us(10);<br />if (!(PIND &amp; (1&lt;&lt;PD4)))<br />klawisz=3;//button: 3<br />if (!(PIND &amp; (1&lt;&lt;PD5)))<br />klawisz=6;//button: 6<br />if (!(PIND &amp; (1&lt;&lt;PD6)))<br />klawisz=9;//button: 9<br />if (!(PINC &amp; (1&lt;&lt;PC5)))<br />klawisz= 17;//button: cofnij<br /><br />//sprawdzenie czy nacisnieto klawisz w drugim wierszu<br />PORTD = (((~(1&lt;&lt;PD3))&amp;0x0F)|(PORTD&amp;0xF0));<br />_delay_us(10);<br />if (!(PIND &amp; (1&lt;&lt;PD4)))<br />klawisz=11;//button: GRACZ1<br />if (!(PIND &amp; (1&lt;&lt;PD5)))<br />klawisz=12;//button: GRACZ2<br />if (!(PIND &amp; (1&lt;&lt;PD6)))<br />klawisz=13;//button: GRACZ3<br />if (!(PINC &amp; (1&lt;&lt;PC5)))<br />klawisz= 14;//button: GRACZ4<br /><br />return klawisz;<br />}[/syntax]<br /><br />klawiatura.h<br />[syntax=c]/*<br /> * klawiatura.h<br /> *<br /> *  Created on: 01-07-2014<br /> *      Author: Artur<br /> */<br /><br />#ifndef KLAWIATURA_H_<br />#define KLAWIATURA_H_<br /><br />void klawiatura_init(void);<br />uint8_t button(void);<br /><br />#endif /* KLAWIATURA_H_ */[/syntax]<br /><br />Jeszcze trochę się gubię z tworzeniem projektów w różnych plikach dlatego jeśli są gdzieś błędy to będę wdzięczny za ich wskazanie <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" />  <br /><br /><div style="width: 583px; height: 471px; margin: 0 auto; padding-left: 26px; padding-top: 48px; background: url('https://www.atnel.pl/download/atnel_tv.png') no-repeat;"> <strong>iframe</strong> </div><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1212">artur85</a> — 10 lip 2014, o 14:52</p><hr />
]]></content>
</entry>
</feed>