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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2016-01-20T23:44:25+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=5345&amp;mode</id>
<entry>
<author><name><![CDATA[kenubi]]></name></author>
<updated>2016-01-20T23:44:25+01:00</updated>
<published>2016-01-20T23:44:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=151261#p151261</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=151261#p151261"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=151261#p151261"><![CDATA[
Cześć, <br />odkopuję co prawda historię, ale interesuje mnie pomiar ADC (rozrzuty pomiaru) -stąd przejrzałem wątek, a przypadkiem dojrzałem w nocie Attiny13a: &quot;The ADC does not consume power when ADEN is cleared, so it is recommended to switch off the ADC before entering power saving sleep modes.&quot;<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=12667">kenubi</a> — 20 sty 2016, o 23:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Wilu88]]></name></author>
<updated>2014-01-02T20:11:12+01:00</updated>
<published>2014-01-02T20:11:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63464#p63464</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63464#p63464"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63464#p63464"><![CDATA[
Problem z zasilaniem spowodowany bateriami. Podłączyłem baterię CR17335SE 3V 850mAh i zasilanie ok 3V na układzie. Zasięg też już prezentuje się fajnie. Pozostaje kwestia pomiaru. Ziemia mocno wysuszona w doniczce po 3 dniach nie podlewania a wskazania ADC to 163 na 8 bitowym trybie.. Czyli jak rozumiem teraz muszę schodzić z rezystorem niżej niż 100K<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=743">Wilu88</a> — 2 sty 2014, o 20:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Zaba]]></name></author>
<updated>2014-01-01T18:47:04+01:00</updated>
<published>2014-01-01T18:47:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63234#p63234</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63234#p63234"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63234#p63234"><![CDATA[
Wiem że to nie totolotek ale obstawiam bateryjkę <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /><br />no ale mogę się mylić.<br /><br />Spróbuj dać nowe baterie i wtedy będziesz miał pewność<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1044">Zaba</a> — 1 sty 2014, o 18:47</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Wilu88]]></name></author>
<updated>2014-01-01T17:33:30+01:00</updated>
<published>2014-01-01T17:33:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63227#p63227</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63227#p63227"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63227#p63227"><![CDATA[
Ok zapomniałem że usypiam procka i tylko na ułamek sekundy się wybudza a na moim mierniku przy ustawieniu 2000uA mam tylko 3 cyfrowy wynik dlatego miałem ciągle 000 w momencie gdy błyska dioda mam 002. I na baterii 3V i na zasilaniu5V z USB. Tylko pytanie czemu jak zasilam z USB to na układzie mam ładne 5V a przy zasilaniu z baterii 3V na układzie mam jakieś 1.8V ? Czy można winić za to starą baterie że napięcie ma dobre bez żadnego obciążenia?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=743">Wilu88</a> — 1 sty 2014, o 17:33</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Zaba]]></name></author>
<updated>2014-01-01T17:22:20+01:00</updated>
<published>2014-01-01T17:22:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63224#p63224</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63224#p63224"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63224#p63224"><![CDATA[
W mierniku masz na pewno dobrze przewody wpięte <br />COM i mA ?<br />Bo jeśli tak to nie rozumiem przecież układ powinien pobierać prąd<br />oczywiście jeśli chodzi (działa) <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=1044">Zaba</a> — 1 sty 2014, o 17:22</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Wilu88]]></name></author>
<updated>2014-01-01T16:20:41+01:00</updated>
<published>2014-01-01T16:20:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63213#p63213</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63213#p63213"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63213#p63213"><![CDATA[
Co do zmierzenia poboru prądu to albo jestem tępy albo nie potrafię tego zrobić. Przerywam kabel z VCC z programatora i do jednej części przerwanego połączenia podpinam czerwony kabel z miernika do drugiej czarny masa połączona bezpośrednio z programatora ustawiam na mierniku pomiar 200mA a wynik ciągle 0.00.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=743">Wilu88</a> — 1 sty 2014, o 16:20</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Zaba]]></name></author>
<updated>2013-12-31T17:10:52+01:00</updated>
<published>2013-12-31T17:10:52+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63107#p63107</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63107#p63107"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63107#p63107"><![CDATA[
Zmierz pobór prądu na baterii i zasilaczu <br />bo może faktycznie bateria nie wyrabia <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=1044">Zaba</a> — 31 gru 2013, o 17:10</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Wilu88]]></name></author>
<updated>2013-12-31T17:02:51+01:00</updated>
<published>2013-12-31T17:02:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63104#p63104</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63104#p63104"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63104#p63104"><![CDATA[
Tzn teraz tak dla testów i sprawdzenia największego możliwego zasięgu aktualnie rezystory wyglądają tak: na bazie mam 220R a na colectorze jest 0R. Wcześniej miałem na bazie rzeczywiście 10K ale po poście kolegi PKoz dałem 220R. Nie wiem czy to ma znaczenie ale dioda 850nm. Bardziej mnie martwi jednak fakt że tak &quot;gdzieś&quot; ucieka napięcie bo nie potrafię tego określić inaczej. Chyba że jakieś kijowe baterie. Że poza układem mam te 2.75V a w układzie napięcie na pinach VCC i GND już 1.80V<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=743">Wilu88</a> — 31 gru 2013, o 17:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2013-12-31T16:59:03+01:00</updated>
<published>2013-12-31T16:59:03+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63103#p63103</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63103#p63103"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63103#p63103"><![CDATA[
<div class="quotetitle">Wilu88 napisał(a):</div><div class="quotecontent"><br />Wlutowałem rezystor 220R i tantal 22uF i zasięg zdecydowanie sie zwiększył<br /></div><br /><br />rezystor dio diody IR daj rzędu 56R albo i jeszcze mniejszy - to wtedy będziesz miał zasięg jak w normalnych pilotach <br /><br />aha no i rezystor w bazie tego tranzystora rzeczywiście masz 10 K ??? jeśli tak to też daj tu 2,2K<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 31 gru 2013, o 16:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Wilu88]]></name></author>
<updated>2013-12-31T16:44:42+01:00</updated>
<published>2013-12-31T16:44:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63102#p63102</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63102#p63102"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63102#p63102"><![CDATA[
Wlutowałem rezystor 220R i tantal 22uF i zasięg zdecydowanie sie zwiększył. Ale nie jest to to samo co w pilotach tzn wystarczy że dioda nadawcza jest pod większym kątem i nici z transmisji. Postanowiłem sprawdzić zasilanie i  tutaj ciekawostka <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /> Bateria wyjęta z układu daje napięcie 2,75V natomiast wsadzona do układu 1,80V.<br /><br />Dodam że po podłączeniu 5V z USB na układzie także mam 5V.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=743">Wilu88</a> — 31 gru 2013, o 16:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Wilu88]]></name></author>
<updated>2013-12-31T08:10:44+01:00</updated>
<published>2013-12-31T08:10:44+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63047#p63047</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63047#p63047"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=63047#p63047"><![CDATA[
Dzięki za tak wyczerpująca odpowiedź i pomoc <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> Rzeczywiście dioda ma bardzo słaby zasięg także jak wrócę z roboty przylutuje jakieś 330R i zobaczymy <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />Co do napięcia odniesienia to jest dobrze ustawione na VCC<br /><a href="http://forum.atnel.pl/_obrazki/o/743/75c50139ec14381060ac56537a2c258c.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/743/75c50139ec14381060ac56537a2c258c.jpg" alt="Obrazek" /></a><br /><br />Co do C3 22uF będzie OK?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=743">Wilu88</a> — 31 gru 2013, o 08:10</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Wilu88]]></name></author>
<updated>2013-12-30T20:08:26+01:00</updated>
<published>2013-12-30T20:08:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62985#p62985</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62985#p62985"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62985#p62985"><![CDATA[
No niby tak ale skoro IR działa prawidłowo to wynik z ADC przesyłany na IR ATB też będzie prawidłowy. Zwłaszcza że wynik z ADC jest bardzo stały oscyluje teraz 224-225. Osobiście wygląda mi to na źle dobrany rezystor podciągający GND i wejście ADC.<br /><br />Jutro jak coś spróbuję napisać RS232 programowego i zobaczymy co wyśle.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=743">Wilu88</a> — 30 gru 2013, o 20:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2013-12-30T20:00:44+01:00</updated>
<published>2013-12-30T20:00:44+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62980#p62980</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62980#p62980"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62980#p62980"><![CDATA[
programowy rs232<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 30 gru 2013, o 20:00</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Wilu88]]></name></author>
<updated>2013-12-30T19:59:40+01:00</updated>
<published>2013-12-30T19:59:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62978#p62978</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62978#p62978"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62978#p62978"><![CDATA[
Z tym ze bezpośrednio z attiny13 na terminal nie wyślę. Musze wysłać po IR na ATB i wtedy na terminal. Chyba ze jest jakiś sposób podpięcia RS232 pod attiny13?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=743">Wilu88</a> — 30 gru 2013, o 19:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2013-12-30T19:57:29+01:00</updated>
<published>2013-12-30T19:57:29+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62976#p62976</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62976#p62976"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62976#p62976"><![CDATA[
no to skoro jedna polowke wykluczyles to teraz wynik z adc daj na jakis terminal np<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 30 gru 2013, o 19:57</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Wilu88]]></name></author>
<updated>2013-12-30T19:48:22+01:00</updated>
<published>2013-12-30T19:48:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62975#p62975</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62975#p62975"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62975#p62975"><![CDATA[
Mirku to już wcześniej sprawdziłem inkrementując zmienna wynik i  wysyłając ją po IR. I ładnie się wysyłało. Także wydaje mi sie że tutaj problem dotyczy ADC i pomiaru<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=743">Wilu88</a> — 30 gru 2013, o 19:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2013-12-30T19:31:15+01:00</updated>
<published>2013-12-30T19:31:15+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62970#p62970</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62970#p62970"/>
<title type="html"><![CDATA[Re: Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62970#p62970"><![CDATA[
ale zobacz po co ty opisujesz tu jakieś informacje o glebie i nie wiadomo jakich wynikach tam ? ....<br /><br />co to ma za znaczenie w rozwiązaniu problemu ?<br /><br />jeśli masz przesyłane źle wyniki - to weź się oderwij od założeń projektu, gleby, ph itp ...<br /><br />i wykonaj proste testy z przesyłaniem na sztywno jakichś LICZB .... po prostu LICZB a nie wyników pomiarów<br /><br />wtedy przetestujesz czy problem masz w przesyłaniu IR czy gdzie indziej ...<br /><br />panowie panowie - dzielcie ZAWSZE problem na DWA .... i badajcie każdą połówkę - zamiast napisać 300 kilogramów kodu a potem zastanawiać się co jest źle bo na wyświetlaczu widzę zły wynik gleby <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 30 gru 2013, o 19:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Wilu88]]></name></author>
<updated>2013-12-30T18:00:04+01:00</updated>
<published>2013-12-30T18:00:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62950#p62950</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62950#p62950"/>
<title type="html"><![CDATA[Attiny13 pomiar ADC 8 bitowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5345&amp;p=62950#p62950"><![CDATA[
Witam<br /><br />Wykonałem już pierwszą prototypową płytkę mojego czujnika wilgotności gleby w doniczce. Jednak mocno zastanawiają mnie wyniki pomiarów wysyłane przez diode IR do ATB. Otóż przy pomiarze o rozdzielczości 8 bitów wynik ADC to 226 (gleba nie podlewana 24h) wydaje mi się to bardzo dużo. Rezystancja gleby mierzona miernikiem to ok 94KOhm.<br /><br />Tak wygląda schemat układu z małymi zmianami zamiast BC847 użyty został BC817. Wcześniej w układzie podciąganiem do GND przy ADC_WE był rezystor 1MOhm ale wtedy w glebie wynik ADC był 255 co wydało mi się kompletnie nie mozliwe. Czyli wygląda że źle mam dobrany rezystor. Po wyjęciu czujnika ADC wskazuje 0 w wodzie 255.<br /><a href="http://forum.atnel.pl/_obrazki/o/743/1d20e365f22f3ee9fc03e09cd49bae77.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/743/1d20e365f22f3ee9fc03e09cd49bae77.png" alt="Obrazek" /></a><br /><br />A oto kod programu odpowiedzialny za odczyt ADC 8 bitowy:<br />[syntax=c]/*<br /> * main.c<br /> *<br /> *  Created on: 04-11-2013<br /> *      Author: Tomasz Wilk<br /> */<br /><br /><br />#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;avr/wdt.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;avr/sleep.h&gt;<br />#include &lt;inttypes.h&gt;<br /><br /><br />#define LED_PIN2 (1&lt;&lt;PB0)// definicja pinu do którego podłączona jest dioda<br />#define LED_PIN2OFF PORTB |= (LED_PIN2)// makrodefinicja – zmiana stanu diody<br />#define LED_PIN2ON PORTB &amp;= ~(LED_PIN2) // makrodefinicja – zmiana stanu diody<br />#define WAKE_UP_MIN     1<br />#define WAKE_UP_PERIOD(min) (min*60/8)<br /><br />#define _ADDRESS_RC5 5<br /><br />uint8_t pomiar( uint8_t kanal );<br /><br />volatile uint8_t licznik=0;<br />volatile uint8_t wake_up;<br />uint8_t address;<br />uint8_t command;<br /><br />void send_rc5(uint8_t adr, uint8_t cmd, uint8_t tog);<br /><br /><br />int main(void)<br />{<br />// ****** inicjalizacja *********<br />DDRB |= LED_PIN2;// kierunek pinu PB4 – wyjściowy<br />PORTB &amp;= ~(LED_PIN2);<br /><br />DDRB |= (1&lt;&lt;PB2);<br />PORTB &amp;= ~(1&lt;&lt;PB2);<br /><br />WDTCR |= (1&lt;&lt;WDCE) | (1&lt;&lt;WDE); //Załaczenie mozliwosci zmiany preskalera<br />WDTCR = (1&lt;&lt;WDP3) | (1&lt;&lt;WDP0); // USTAWIENIE czasu Watchodga na 8 sek<br />    WDTCR |= (1&lt;&lt;WDTIE); //Watchdog reaguje przerwaniem<br /><br />    ADCSRA |= (1&lt;&lt;ADEN); //ADEN: ADC Enable (uruchomienie przetwornika)<br />   ADCSRA |= (1&lt;&lt;ADPS2) | (1&lt;&lt;ADPS1); //ADPS2: ustawienie preskalera, preskaler= 64<br /><br />    ADMUX  &amp;= ~(1&lt;&lt;REFS0); //Internal VCC Voltage Reference<br />    ADMUX |= (1&lt;&lt;ADLAR); //Ustawienie przesuniecia wyniku dla 8 bitów<br /><br /><br />   // **************************************************************************************<br />   // TIMER0<br />   // - używany do generowania fali nośnej dla IR<br />   // załadowanie OCR0A wartością do generowania nośnej ok 36kHz = 15<br />   OCR0A =  16;<br />   // ustawienie Timer0 w tryb = 2 - CTC - CompareA<br />   TCCR0A |= (1&lt;&lt;WGM01);// tryb CTC<br />   TCCR0B |= (1&lt;&lt;CS00);// preskaler = 1<br />   //****************************************************************************************<br /><br /><br />sei();<br /> set_sleep_mode(SLEEP_MODE_PWR_DOWN); //select mode<br />// ****** pętla główna programu  *********<br /><br /><br /><br /><br />uint8_t wynik=0;<br />while(1)<br />{<br />if(wake_up)<br />                {<br /><br />static uint8_t toggle_bit;<br /><br />PORTB |= (1&lt;&lt;PB2);<br />    toggle_bit ^= (1&lt;&lt;0);<br />wynik = pomiar(2); //Ustawienie pomiaru na PB4 MUX1:0 0x10<br /><br />address = _ADDRESS_RC5;<br />send_rc5(address, wynik, toggle_bit);<br /><br />//if(wynik &gt; 100 &amp;&amp; wynik &lt; 120){<br />//LED_PIN2ON;<br />//_delay_ms(500);<br />//LED_PIN2OFF;<br />//}<br />//_delay_ms(250);<br /><br />                      set_sleep_mode(SLEEP_MODE_PWR_DOWN); //select mode<br />                        wake_up = 0;<br />                        PORTB &amp;= ~(1&lt;&lt;PB2);<br />                }<br />               sleep_mode(); // go to power down mode<br /><br />}<br />}<br /><br />ISR(WDT_vect) {<br />licznik++;<br /><br />if (licznik &gt;= WAKE_UP_PERIOD(WAKE_UP_MIN)){<br />wake_up = 1;<br />licznik = 0;<br />}<br />wdt_reset();<br />}<br /><br /><br />//------------------------------------------------- RC5 - START<br />// dokładna pętla opóźniająca = wielokrotności 1us<br />// w oparciu o Timer1, taktowanie 8MHz, preskaler = 8<br /><br />// przesłanie bitu o wartości 1<br />void send_rc5_one() {<br />_delay_us(889);<br />TCCR0A |= (1&lt;&lt;COM0A0);<br />_delay_us(889);<br />TCCR0A &amp;= ~(1&lt;&lt;COM0A0);<br />}<br />// przesłanie bitu o wartości 0<br />void send_rc5_zero() {<br />TCCR0A |= (1&lt;&lt;COM0A0);<br />_delay_us(889);<br />TCCR0A &amp;= ~(1&lt;&lt;COM0A0);<br />_delay_us(889);<br />}<br /><br />// przesłanie kompletnej ramki RC5<br />void send_rc5(uint8_t adr, uint8_t cmd, uint8_t tog) {<br />uint16_t data = 0;<br />uint8_t i=15;<br /><br />// Musimy uformować ramkę RC5<br />// w tym celu przesuwamy bity do wysłania w lewą stronę<br />data |= ( (1&lt;&lt;15)|(1&lt;&lt;14)|(tog&lt;&lt;13)|(adr&lt;&lt;10)|(cmd&lt;&lt;2) );<br />/* data = 0bssTaaaaaccccccxx<br /> *     ||||adr||cmd |<br /> *   |||<br /> *   ||+-- bit TOGGLE<br /> *||<br /> *++--- 2 bity Startu<br />*/<br /><br />// wysyłamy kolejno 14 bitów<br />// 2-bity startu, 1-bit Toggle, 5-bitów adresu, 6-bitów komendy<br />do {<br />if ( !(data &amp; ( 1 &lt;&lt; i )) ) send_rc5_zero();<br />else send_rc5_one();<br />} while(--i&gt;1);<br />}<br />//------------------------------------------------- RC5 - END<br /><br /><br /><br /><br /><br />// pomiar napięcia<br />uint8_t pomiar( uint8_t kanal ) {<br /><br />ADMUX = (ADMUX &amp; 0b11111100) | kanal;<br /><br />ADCSRA |= (1&lt;&lt;ADSC);  // start konwersji<br /><br />while( ADCSRA &amp; (1&lt;&lt;ADSC) );<br /><br />return ADCH; //Pobranie 8 bitów<br />}[/syntax]<br /><br />Troszkę przerobiłem wysyłanie ramek RC5 ze względu że command musiałem mieć 8 bitowy natomaist adres wystarczy mi 3 bitowy. Wydaje mi sie że to raczej wina samego układu niż programowa, ale może się mylę.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=743">Wilu88</a> — 30 gru 2013, o 18:00</p><hr />
]]></content>
</entry>
</feed>