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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2016-03-21T21:11:07+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=7744&amp;mode</id>
<entry>
<author><name><![CDATA[mucios15]]></name></author>
<updated>2016-03-21T21:11:07+01:00</updated>
<published>2016-03-21T21:11:07+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=156727#p156727</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=156727#p156727"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=156727#p156727"><![CDATA[
Okejo, dzięki już 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=11599">mucios15</a> — 21 mar 2016, o 21:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kicajek]]></name></author>
<updated>2016-03-21T20:39:47+01:00</updated>
<published>2016-03-21T20:39:47+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=156723#p156723</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=156723#p156723"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=156723#p156723"><![CDATA[
Witam<br />A może tak ( tylko ja mam osobno #define znaku minus )<br />[syntax=c]void display_temp (void)<br />{<br /><br /><br />if (ERROR)<br />{<br />cy1 =lit_E;<br />cy2 =lit_r;<br />cy3 =lit_r;<br />}<br /><br />else // !error<br />{<br /><br />if(subzero) SUBZERO_ON; // tutaj możesz wpisać cy1, a następne przesunąć na cy2, 3, 4<br />else SUBZERO_OFF;<br /><br /> if (cel&lt;10 ){<br />         cy1=NIC;<br /> cy2 =cel;<br />         cy3 =cel_fract_bits;<br />}<br /><br />else if (cel&gt;=10){<br /><br />cy1 =cel/10;<br />cy2 =cel%10;<br />cy3 =cel_fract_bits;<br />   }<br />}<br />} // END display_temp()[/syntax]<br /><br />Pozdr.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=826">kicajek</a> — 21 mar 2016, o 20:39</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mucios15]]></name></author>
<updated>2016-03-21T18:17:29+01:00</updated>
<published>2016-03-21T18:17:29+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=156694#p156694</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=156694#p156694"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=156694#p156694"><![CDATA[
Witam , przepraszam że po taki czasie ponawiam temat, ale nie mogę sobie poradzić z takim problemem. Otóż chcę uzyskać kropkę przy wyświetlaniu temperatury po 3 cyfrze. Korzystałem z obu wyżej wymienionych metod i obie mają taki sam skutek - taki że kropka się pojawia ale dodatkowo na 3 cyfrze pojawiają się głupity ( np. zamiast 4 wyświetla H). Prosił bym o pomoc. <br /><br />[syntax=actionscript]#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &quot;d_led.h&quot;<br /><br />volatile uint8_t cy3;<br />volatile uint8_t cy4;<br />volatile uint8_t cy1;<br />volatile uint8_t cy2;<br /><br /><br />const uint8_t cyfry&#91;15&#93; PROGMEM =<br />{<br />               ~ (SEG_A|SEG_B|SEG_C|SEG_D|SEG_E|SEG_F),                          // 0<br />                ~(SEG_B|SEG_C),                                                                  // 1<br />                ~(SEG_A|SEG_B|SEG_D|SEG_E|SEG_G),                                        // 2<br />                ~(SEG_A|SEG_B|SEG_C|SEG_D|SEG_G),                                        // 3<br />                ~(SEG_B|SEG_C|SEG_F|SEG_G),                                              // 4<br />               ~ (SEG_A|SEG_C|SEG_D|SEG_F|SEG_G),                                        // 5<br />                ~(SEG_A|SEG_C|SEG_D|SEG_E|SEG_F|SEG_G),                          // 6<br />                ~(SEG_A|SEG_B|SEG_C|SEG_F),                                              // 7<br />               ~ (SEG_A|SEG_B|SEG_C|SEG_D|SEG_E|SEG_F|SEG_G),            // 8<br />                ~(SEG_A|SEG_B|SEG_C|SEG_D|SEG_F|SEG_G),    // 9<br />~(SEG_G), // minus<br />~(SEG_H), // kropka<br />};<br /><br />void d_led_init(void)<br />{<br />LED_DATA_DIR = 0xFF;<br />LED_DATA = 0xFF;<br /><br />ANODY_DIR |= CA1 | CA2 | CA3 | CA4;<br />ANODY_PORT |= CA1 | CA2 | CA3 | CA4;<br /><br />//ustawienie Timera0<br /><br />TCCR2 |= (1&lt;&lt;WGM21);<br />TCCR2 |= (1&lt;&lt;CS22)|(1&lt;&lt;CS21)|(1&lt;&lt;CS20);<br />OCR2 = 39;<br />TIMSK |= (1&lt;&lt;OCIE2);<br />}<br />// procedura obsługi przerwania<br /><br />ISR(TIMER2_COMP_vect)<br />{<br /><br /><br />static uint8_t licznik = 1;             // zmienna do przelaczania kolejno katod wyswietlacza<br /><br />       ANODY_PORT= ~licznik;<br /><br />       if(licznik==1) LED_DATA=pgm_read_byte(&amp;cyfry&#91;cy1&#93;);<br />              else if(licznik==2) LED_DATA=pgm_read_byte(&amp;cyfry&#91;cy2&#93;);<br />              else if(licznik==4) LED_DATA=pgm_read_byte(&amp;cyfry&#91;cy3&#93;);<br />              else if(licznik==8) LED_DATA=pgm_read_byte(&amp;cyfry&#91;cy4&#93;);<br />       if(licznik==4) PORTB &amp;=11; // kropka na 3 cywsze<br /><br />       licznik&lt;&lt;= 1;<br />       if(licznik&gt;8) licznik=1;<br /><br /><br />}[/syntax]<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 14 minutach ]</span></strong><br /><br />A dobrze już wiem, zamiast 11 powinienem wpisywać ~SEG_H. <br /><br />W takim razie może zapytam o drugi problem. Otóż chciałbym wyświetlać temperaturę ujęmną RÓWNIEŻ. Czyli zostawiłem sobie dodatkowo jeden wyświetlacz na znak minus. <br />No i postanowiłem że w tym programie co zamieściłem ponieżej zrobię sobie warunek na if(subzero). <br /><br />[syntax=actionscript]#include &lt;avr/io.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;avr/eeprom.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;stdint.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &quot;1Wire/ds18x20.h&quot;<br />#include &quot;d_led.h&quot;              // dołączenie naszego pliku nagłówkowego (obsługa LED)<br />uint8_t czujniki_cnt;           /* ilość czujników na magistrali */<br />uint8_t subzero, cel, cel_fract_bits;           //wyniki pomiaru<br />int main(void)<br />{<br />        sei();<br />        d_led_init();                   // inicjalizacja wyświetlacza multipleksowanego<br />        cy1 = 0;<br />        cy2=0;<br />        cy3=0;<br />        cy4=0;<br /><br />        _delay_ms(500);<br />                //**********************  pętla główna<br />                while(1)<br />                {<br />                         czujniki_cnt = search_sensors();<br />             _delay_ms(50);<br />             DS18X20_start_meas( DS18X20_POWER_EXTERN, NULL );<br />                         _delay_ms(750);<br />                          if( DS18X20_OK == DS18X20_read_meas(gSensorIDs&#91;0&#93;, &amp;subzero, &amp;cel, &amp;cel_fract_bits) )<br />                               {<br />                                cy2 = cel/10;<br />                                cy3 = cel%10, 10;<br />                                cy4 = cel_fract_bits*1;<br />                                if(subzero)<br />                                {<br />                                cy1=10;<br />                                }<br />                                else cy1=NIC;<br />                               }<br /><br /><br />                                else<br />                                {<br />                                  cy1 = 11;<br />                                  cy2 = 11;<br />                                  cy3 = 11;<br />                                  cy4 = 11;<br /><br />                                  _delay_ms(500);<br />                                  cy1 = 8;<br />                                  cy2 = 8;<br />                                  cy3 = 8;<br />                                  cy4 = 8;<br /><br />                                  _delay_ms(500);<br />                          }<br />                }<br />}[/syntax]<br /><br />Jednak znak minus wyświetla sie ciagle mimo tego , że w pokoju mam + temperaturę <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /> ... w sumie jak by mogło być innaczej ;p<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=11599">mucios15</a> — 21 mar 2016, o 18:17</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[RadekB86]]></name></author>
<updated>2015-05-24T19:24:41+01:00</updated>
<published>2015-05-24T19:24:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=130032#p130032</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=130032#p130032"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=130032#p130032"><![CDATA[
Ja jeszcze dodam swój sposób na kropkę instrukcje wklejamy w obsługę przerwań oczywiście z biblioteki Mirka i wybieramy odpowiednią kropkę która nas interesuje według komentarzy<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">//if(anoda==1) PORTB &amp;=~SEG_DP; // kropka na 4 cywsze<br />//if(anoda==2) PORTB &amp;=~SEG_DP;  //kropka na 1 cywsze<br />//if(anoda==4) PORTB &amp;=~SEG_DP; // kropka na 2 cywsze<br />if(anoda==8) PORTB &amp;=~SEG_DP; // kropka na 3 cywsze</div><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1837">RadekB86</a> — 24 maja 2015, o 19:24</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jacekk232]]></name></author>
<updated>2014-07-14T21:07:58+01:00</updated>
<published>2014-07-14T21:07:58+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87600#p87600</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87600#p87600"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87600#p87600"><![CDATA[
Jeśli używasz Mirkowej biblioteki do wyświetlacza led to w pliku d_led.h stwórz deklaracje czterech zmiennych<br />[syntax=c]extern volatile uint8_t kropka1, kropka2, kropka3, kropka4;[/syntax]<br /><br />w pliku d_led.c definicje<br />[syntax=c]volatile uint8_t kropka1, kropka2, kropka3, kropka4;[/syntax]<br /><br />i zmodyfikuj przerwanie multipleksowania led<br />[syntax=c]// ================= PROCEDURA OBSŁUGI PRZERWANIA – COMPARE MATCH<br />ISR(TIMER0_COMP_vect)<br />{<br />static uint8_t licznik=1;// zmienna do przełączania kolejno anod wyrwietlacza<br /><br />ANODY_PORT = (ANODY_PORT | 0x0F);// wygaszenie wszystkich wyświetlaczy<br /><br /><br />if(licznik==1)<br />{<br />if(kropka1 == 1) LED_DATA = pgm_read_byte( &amp;cyfry&#91;cy1&#93; ) &amp; ~SEG_DP;// gdy zapalony wyśw.1 podaj stan zmiennej c1 i włącz kropkę<br />else LED_DATA = pgm_read_byte( &amp;cyfry&#91;cy1&#93; );// gdy zapalony wyśw.1 podaj stan zmiennej c1<br />}<br />else if(licznik==2)<br />{<br />if(kropka2 == 1) LED_DATA = pgm_read_byte( &amp;cyfry&#91;cy2&#93; ) &amp; ~SEG_DP;<br />else LED_DATA = pgm_read_byte( &amp;cyfry&#91;cy2&#93; );// gdy zapalony wyśw.2 podaj stan zmiennej c2<br />}<br />else if(licznik==4)<br />{<br />if(kropka3 == 1) LED_DATA = pgm_read_byte( &amp;cyfry&#91;cy3&#93; ) &amp; ~SEG_DP;<br />else LED_DATA = pgm_read_byte( &amp;cyfry&#91;cy3&#93; );// gdy zapalony wyśw.3 podaj stan zmiennej c3<br />}<br />else if(licznik==8)<br />{<br />if(kropka4 == 1) LED_DATA = pgm_read_byte( &amp;cyfry&#91;cy4&#93; ) &amp; ~SEG_DP;<br />else LED_DATA = pgm_read_byte( &amp;cyfry&#91;cy4&#93; );// gdy zapalony wyśw.4 podaj stan zmiennej c4<br />}<br /><br />ANODY_PORT = (ANODY_PORT &amp; 0xF0) | (~licznik &amp; 0x0F);// cykliczne przełączanie kolejnej anody w każdym przerwaniu<br /><br />// operacje cyklicznego przesuwania bitu zapalającego anody w zmiennej licznik<br />licznik &lt;&lt;= 1;// przesunięcie zawartości bitów licznika o 1 w lewo<br />if(licznik&gt;8) licznik = 1;// jeśli licznik większy niż 8 to ustaw na 1<br />}[/syntax]<br /><br />I teraz jeśli ustawisz zmienną np. kropka2 to na drugim wyświetlaczu zaświeci się kropka. Jeśli wyzerujesz tą zmienną to odpowiadająca jej kropka zgaśnie.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=204">jacekk232</a> — 14 lip 2014, o 21:07</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2014-07-14T20:16:45+01:00</updated>
<published>2014-07-14T20:16:45+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87599#p87599</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87599#p87599"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87599#p87599"><![CDATA[
W całkiem normalny przecież w ATB na LED`owym wyświetlaczu są kropki i to nie jest 7 segment a 8 segment tak naprawdę ale kropek nigdy się nie liczy<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 14 lip 2014, o 20:16</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[D_C]]></name></author>
<updated>2014-07-14T20:05:45+01:00</updated>
<published>2014-07-14T20:05:45+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87598#p87598</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87598#p87598"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87598#p87598"><![CDATA[
<div class="quotetitle">giciors napisał(a):</div><div class="quotecontent"><br />Polecam Mirka poradnik o ADC..... naprawdę fajowny.<br /></div><br />bd musial do niego wrócić <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br />A w jaki sposób zapala się kropke na wyświetlaczu ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1165">D_C</a> — 14 lip 2014, o 20:05</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[giciors]]></name></author>
<updated>2014-07-14T19:58:43+01:00</updated>
<published>2014-07-14T19:58:43+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87597#p87597</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87597#p87597"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87597#p87597"><![CDATA[
Witam<br />Pomysł obsługi wyświetlacza z Mirka książki jest na tyle uniwersalny i prosty że da się go totalnie przerobić na wszystko. Musisz się zastanowić jak rozwiązać problem kropki dziesiętnej na tym wyświetlaczy (7 segmentów ) Ja zrobiłem sobie tak na szybko woltomierz -prototyp na bardzo fajnym wyświetlaczy 7 segmentowym qdsp6064 (mikrusku ale mało prądu ciągnie ) i tutaj pojawia się wyświetlanie liczb zmiennoprzecinkowych w tym miejscu należ określić jaki zakres z jaką dokładnością chcemy wyświetlać. Ja zdecydowałem się na wyświetlanie tylko dziesiętne części Volta. Sprawa jest w zasadzie prosta w przypadku odczytu wartości z ADC zamień to na Volty. Potem użyj funkcji div_t divmod= div(wynik,100); (Mirek bardzo fajnie pokazał to w jednym z odcinków o ADC chyba 6a ), później z części całkowitej wylicz poszczególne cyfry (dzieląc i odejmując jak w przykładzie powyżej)i to samo zrób z częścią dziesiętną i postaw kropkę ( najlepiej do procedury przerwania dodaj zmienną która dodaje do każdej pozycji kropką nie będziesz musiał zmieniać definicji fontów). Polecam Mirka poradnik o ADC..... naprawdę fajowny.<br />Pozdrawiam<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1818">giciors</a> — 14 lip 2014, o 19:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Nefarious19]]></name></author>
<updated>2014-07-12T21:42:18+01:00</updated>
<published>2014-07-12T21:42:18+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87409#p87409</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87409#p87409"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87409#p87409"><![CDATA[
<div class="quotetitle">sq8dsr napisał(a):</div><div class="quotecontent"><br />Nie wiem czy lepszy, ale przy większej ilości pozycji dziesiętnych chyba wygodniejszy.<br /></div><br /><br />Tak, masz racje, z pewnością Twó sposób jest dużo bardziej uniwersalny i go sobie gdzieś tam w &quot;Eclipsową szufladę&quot; wsadze:)<br /><br /><div class="quotetitle">D_C napisał(a):</div><div class="quotecontent"><br />dzięki koledzy, wszystko sie przyda<br /></div><br /><br />Daj znać czy działa lepiej a nie nam tu tak na sucho dziękujesz <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=2500">Nefarious19</a> — 12 lip 2014, o 21:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[D_C]]></name></author>
<updated>2014-07-12T20:48:23+01:00</updated>
<published>2014-07-12T20:48:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87402#p87402</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87402#p87402"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87402#p87402"><![CDATA[
dzięki koledzy, wszystko sie przyda <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=1165">D_C</a> — 12 lip 2014, o 20:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[sq8dsr]]></name></author>
<updated>2014-07-12T20:48:01+01:00</updated>
<published>2014-07-12T20:48:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87401#p87401</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87401#p87401"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87401#p87401"><![CDATA[
Nie wiem czy lepszy, ale przy większej ilości pozycji dziesiętnych chyba wygodniejszy.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1589">sq8dsr</a> — 12 lip 2014, o 20:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Nefarious19]]></name></author>
<updated>2014-07-12T20:38:11+01:00</updated>
<published>2014-07-12T20:38:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87399#p87399</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87399#p87399"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87399#p87399"><![CDATA[
Ilu programistów tyle sposobów (chodź ja za programistę sie nie uważam <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /> ) ale pewnie Twoj sposob lepszy <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=2500">Nefarious19</a> — 12 lip 2014, o 20:38</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[sq8dsr]]></name></author>
<updated>2014-07-12T20:28:26+01:00</updated>
<published>2014-07-12T20:28:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87397#p87397</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87397#p87397"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87397#p87397"><![CDATA[
Albo takie coś, bez tych dzieleń:<br /><br />Mirek mnie tym kiedyś poczęstował.<br /><br />tablica liczba[] to jest tablica zawierające cyfry poszczególnych pozycji wyśw.<br />Tutaj akurat jest dla 8 pozycji. <br />[syntax=c]void convert_new(uint32_t value){<br />uint8_t i; //zmienna do pętli FOR<br /><br />for(i=0; i&lt;8; i++){<br />liczba&#91;i&#93;=0;  // zerujemy tablicę z liczbą<br />}<br /><br />ltoa(value, liczba, 10); //konwersja liczby na ASCII<br /><br />for (i=0; i&lt;8; i++){<br />if(liczba&#91;i&#93;==0) cy&#91;i&#93;=16; else //jako &quot;zero&quot; wstawiam 16 bo we wzorcach dla 7 seg<br />                                                         // mam pusty znak pod 16 pozycją.<br />cy&#91;i&#93; = liczba&#91;i&#93; - '0'; //magiczna konwersja :P<br />}<br />}[/syntax]<br /><br />tabela wzorców znakow:<br />[syntax=c]const uint8_t znak&#91;&#93; PROGMEM = {<br />0xC0,// 0<br />0xF9,// 1<br />0xA4,// 2<br />0xB0,// 3<br />0x99,// 4<br />0x92,// 5<br />0x82,// 6<br />0xD8,// 7<br />0x80,// 8<br />0x90,// 9<br />0x88,// 10  A<br />0x83,// 11  b<br />0xC6,// 12  C<br />0xA1,// 13  d<br />0x86,// 14  E<br />0x8E,// 15  F<br />0xFF, // PUSTE<br />0xC2,// user def<br />0x89,// user def<br />0x8C,// user def<br />0xB6,// user def<br />0xC9,// user def<br />0xAD,// user def<br />0x9B,// user def<br />0xA3,// user def<br />0x9C,// user def<br />0xC1,// user def<br />0xC8,// user def<br />0xAB,// user def<br />0x8F,// user def<br />0xB9,// user def<br />0x7F,// user def<br />};[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1589">sq8dsr</a> — 12 lip 2014, o 20:28</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Nefarious19]]></name></author>
<updated>2014-07-12T19:22:31+01:00</updated>
<published>2014-07-12T19:22:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87377#p87377</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87377#p87377"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87377#p87377"><![CDATA[
W pętli while do jakiejś zmiennej zapisuj wynik pomiaru a później ta zmienna wstawiaj do funkcji ktora rozbije wynik pomiaru na 4 cyfry czyli do tej ktora Ci podalem. O ile dobrze pamiętam to w tej bibliotece z BB masz 4 zmienne cyfra do ktorych jak np wpiszesz 1 to wyświetla 1 itd wiec jak napiszesz ta funkcje to wyniki tych działań przypisuj do tych zmiennych na których biblioteka pozwala Ci operować, i tyle. W skrócie: <br /><br />1) pomiar i przypisanie wyniku do zmiennej <br />2) wywołanie funkcji wyświetl pomiar z parametrem którym jest zmienna pomiarowa.<br /><br />To wszystko ma byc w while czyli w sumie dwie linie kodu <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=2500">Nefarious19</a> — 12 lip 2014, o 19:22</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[D_C]]></name></author>
<updated>2014-07-12T19:01:53+01:00</updated>
<published>2014-07-12T19:01:53+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87374#p87374</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87374#p87374"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87374#p87374"><![CDATA[
do petli while co muszę wstawić, żeby to wszystko ruszyło ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1165">D_C</a> — 12 lip 2014, o 19:01</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[D_C]]></name></author>
<updated>2014-07-12T15:22:54+01:00</updated>
<published>2014-07-12T15:22:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87355#p87355</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87355#p87355"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87355#p87355"><![CDATA[
a w ten sposób,w wolnej chwili pomyslę nad tym, dzięki wielkie kolego <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=1165">D_C</a> — 12 lip 2014, o 15:22</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Nefarious19]]></name></author>
<updated>2014-07-12T15:18:33+01:00</updated>
<published>2014-07-12T15:18:33+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87353#p87353</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87353#p87353"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87353#p87353"><![CDATA[
<div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />rozumiem, że za parametr liczba, mam podstawić pomiar, tak ?<br /></div><br /><br />Dokładnie tak, przeanalizuj sobie jak ta funkcyjka prosta działa. Oto całą funkcja:<br /><br />[syntax=c]//funkcje wywołujesz z paramterem pomiar:<br /><br /><br />void wyswietl_pomiar (uint16_t liczba)<br />{<br />cyfra1 = liczba - ((liczba/10)*10);<br /><br />cyfra2 = (liczba/10) - ((liczba/100)*10);<br /><br />cyfra3 = (liczba/100) - ((liczba/1000)*10);<br /><br />cyfra4 = (liczba/1000);<br /><br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2500">Nefarious19</a> — 12 lip 2014, o 15:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[D_C]]></name></author>
<updated>2014-07-12T14:16:57+01:00</updated>
<published>2014-07-12T14:16:57+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87346#p87346</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87346#p87346"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87346#p87346"><![CDATA[
[syntax=c]uint16_t pomiar(uint8_t kanal);[/syntax]<br />za pomocą tej funkcji odczytuje wartość ADC (tak jak w BB), na LCD wszystko pieknie dziala,<br />[syntax=c]cyfra1 = liczba - ((liczba/10)*10)[/syntax]<br />rozumiem, że za parametr liczba, mam podstawić pomiar, tak ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1165">D_C</a> — 12 lip 2014, o 14:16</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Nefarious19]]></name></author>
<updated>2014-07-12T13:45:39+01:00</updated>
<published>2014-07-12T13:45:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87343#p87343</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87343#p87343"/>
<title type="html"><![CDATA[Re: wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87343#p87343"><![CDATA[
Ja napisałem sobie taka biblioteke swoja i w niej mam funkcje w ktorej mam takie dzialanie matematuczne:<br /><br />cyfra1 = liczba - ((liczba/10)*10) <br /><br />To dzialanie zwraca mi wartosc jednosci,<br /><br />To dzialanie:<br /><br />cyfra2 = liczba/10 - ((liczba/100)*10)<br /><br />A to dzialanie zwraca mi dziesiatki. <br /><br />Z kolejnymi liczbami czyli setkami i tysiacami robie analogicznie tak ze do każdej z 4 cyfr przypadkowywuje odpowiednią.dla niej wartosc. Działania te sa w funkcji typu void do ktorej przekazuje argument uint16_t liczba. Na tym argumencie wykonywane są działania i wdzystko pięknie dziala obojętnie jaka liczbę z zakresu od 0 do 9999 wpisze <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=2500">Nefarious19</a> — 12 lip 2014, o 13:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[D_C]]></name></author>
<updated>2014-07-12T12:16:22+01:00</updated>
<published>2014-07-12T12:16:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87327#p87327</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87327#p87327"/>
<title type="html"><![CDATA[wyświetlacz LED]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7744&amp;p=87327#p87327"><![CDATA[
Witam<br /><br />Jestem z trakcie budowy małego woltomierza cyfrowego, chciałbym aby wynik pomiarów, był wyświetlany na wyswietlaczu LED (zestaw ATB), i tu mam do Was pytanie, w jaki sposób przerobić bibliotekę z BB ,tak aby ta pokazywała mi na wyświetlaczu (poki co) sama wartość ADC ???  <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=1165">D_C</a> — 12 lip 2014, o 12:16</p><hr />
]]></content>
</entry>
</feed>