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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-12-16T07:28:44+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=9778&amp;mode</id>
<entry>
<author><name><![CDATA[avrfun]]></name></author>
<updated>2015-12-16T07:28:44+01:00</updated>
<published>2015-12-16T07:28:44+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=148195#p148195</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=148195#p148195"/>
<title type="html"><![CDATA[Re: Sterowanie scalakiem MAX6921 (iv-11)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=148195#p148195"><![CDATA[
Witam!<br />Postanowiłem wykorzystać lampy IV-11 w projekcie nowego zegara. Mam napisany program zegara z obsługą wyświetlaczy 7-seg LED (4x) po SPI (Atmega32) z wykorzystaniem dwóch rejestrów przesuwnych 74H595 (anody - wyświetlacz, katody - cyfra) i organizacją wyświetlania cy1-c4. Czy można wykorzystać ten program do sterowania układem MAX6921 podłączając do niego siatki (anody, wyświetlacze) i (katody, segmenty) wyświetlaczy IV-11 analogicznie jak do rejestrów 74H595? Proszę o porady.<br />Pozdrawiam<br />avrfun<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=9310">avrfun</a> — 16 gru 2015, o 07:28</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[deerjelen]]></name></author>
<updated>2014-12-22T20:26:05+01:00</updated>
<published>2014-12-22T20:26:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=110023#p110023</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=110023#p110023"/>
<title type="html"><![CDATA[Re: Sterowanie scalakiem MAX6921 (iv-11)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=110023#p110023"><![CDATA[
Patrzyłem na kod i naprawdę nie miałem się do czego przyczepić, a niewyrabianie się w czasie to jedyne co mi przychodziło do głowy, czemu układ działa źle ;p.<br />Na przyszłość: dobra metoda testowania, to rozkładanie dużych układów na czynniki pierwsze xd. <br />Jeżeli się nudzisz i będziesz chciał &quot;usprawniać&quot; kod, to pomyśl nad operacjami bitowymi (chyba, że zamierzasz robić to na bitach, a tutaj tylko na szybkiego wstawiłeś 20-elementową tablicę).<br />Też się cieszę, że działa <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> <br />Wesołych Świąt!<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1870">deerjelen</a> — 22 gru 2014, o 20:26</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Mateo193]]></name></author>
<updated>2014-12-22T18:58:51+01:00</updated>
<published>2014-12-22T18:58:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=110012#p110012</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=110012#p110012"/>
<title type="html"><![CDATA[Re: Sterowanie scalakiem MAX6921 (iv-11)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=110012#p110012"><![CDATA[
Panowie (i panie) nie wierzę <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /> okazało się że były zwarte dwie linie MOSI i CLK. ale dopiero na diodach doszedłem do tego. Bo najpierw dwie diody świeciły jasno a potem razem mocniej, więc coś nie tak. Potem sprawdzam i zwarcie... Teraz jestem aby jestem zły na siebie że po raz kolejny zwarcie dwóch linii popsuło mój plan.<br /><br />Dzięki deerjelen za pomoc, chęci i poświęcony czas na moją hmm nieuwagę <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><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><br /><br />Nie potrzebne są żadne opóźnienia.:p<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1349">Mateo193</a> — 22 gru 2014, o 18:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Mateo193]]></name></author>
<updated>2014-12-22T16:59:11+01:00</updated>
<published>2014-12-22T16:59:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109979#p109979</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109979#p109979"/>
<title type="html"><![CDATA[Re: Sterowanie scalakiem MAX6921 (iv-11)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109979#p109979"><![CDATA[
Okej w końcu i tak to jest prototyp więc podłącze do każdej nóżki po diodzie i zobaczymy.<br />Opis lamp<br />DP (kropka)<br />S(siatka-anoda 30V+)zasilnie zewnętrzne mało iść przez przetwornicę ale jest błąd i na razie oddzielnie leci(masy ją połączone)<br />K(katoda-żarnik 1,5V)<br />K1(wyjście-żarnik)<br />żarniki są szeregowo więc ładnie 9v. A tak w/w pdf<br /><!-- m --><a class="postlink" href="http://www.tube-tester.com/sites/nixie/dat_arch/IV-11_2.pdf" >http://www.tube-tester.com/sites/nixie/ ... V-11_2.pdf</a><!-- m --><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1349">Mateo193</a> — 22 gru 2014, o 16:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[deerjelen]]></name></author>
<updated>2014-12-22T16:52:04+01:00</updated>
<published>2014-12-22T16:52:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109976#p109976</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109976#p109976"/>
<title type="html"><![CDATA[Re: Sterowanie scalakiem MAX6921 (iv-11)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109976#p109976"><![CDATA[
Najłatwiej by było, gdybyś mógł monitorować stan na wszystkich wyjściach scalka. Czyli np, podpinasz do niego napięcie +5v, a na wszystkie wyjścia (lub przynajmniej na kilka) - rezystor - dioda - masa. Wtedy dokładnie byśmy wiedzieli co się tam dzieje. Coś jest nie tak z ilością wysyłanych bitów, bo w teorii powinny być dwa &quot;obrazy&quot; (bufor i bufor1), a nie, żeby się przesuwało cokolwiek dając co najmniej 4 obrazy (świeci tylko 1; dwa pierwsze; 3 pierwsze i 4 - tak jak to widzimy na 1 filmiku).<br />Pewno notę widziałeś, ale umieszczam &quot;w razie w&quot;. Strona 8. <br /><!-- m --><a class="postlink" href="http://datasheets.maximintegrated.com/en/ds/MAX6921-MAX6931.pdf" >http://datasheets.maximintegrated.com/e ... AX6931.pdf</a><!-- m --><br />Mógłbyś jeszcze dać jakąś notę do lampy? Lub opisać te wejścia/wyjścia: DP; S; K; K1;<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1870">deerjelen</a> — 22 gru 2014, o 16:52</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Mateo193]]></name></author>
<updated>2014-12-22T16:29:42+01:00</updated>
<published>2014-12-22T16:29:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109970#p109970</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109970#p109970"/>
<title type="html"><![CDATA[Re: Sterowanie scalakiem MAX6921 (iv-11)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109970#p109970"><![CDATA[
Niestety nic się nie zmieniło. Dodam tylko że podczas zapalania się kolejnych lamp, od resetu procesora dioda mignie 4 razy, po czym zapalają się kolejno lampy. Spróbuje coś w internetach poszukać. Może jakieś informacje z MIS(i)O'a wyciągnę;D (tzn. Arduino):)<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1349">Mateo193</a> — 22 gru 2014, o 16:29</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[deerjelen]]></name></author>
<updated>2014-12-22T16:09:42+01:00</updated>
<published>2014-12-22T16:09:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109967#p109967</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109967#p109967"/>
<title type="html"><![CDATA[Re: Sterowanie scalakiem MAX6921 (iv-11)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109967#p109967"><![CDATA[
Hej<br />Popraw funkcję send_buf na:<br />[syntax=c]void SPI_send_buf (uint8_t *buf){<br />        buf += 20;<br />        for( uint8_t i=0; i&lt;20; i++){<br />                uint8_t b = *--buf;           <br />                SPI_send( b );<br />        }<br /> <br />        LATCH_ON;<br />        _delay_us(10);<br />        LATCH_OFF;<br />        _delay_us(10);<br />}[/syntax]<br />W nocie jest napisane, że wgrywamy od najstarszego bitu (MSB). Mógłbyś też zmodyfikować tablice (przepisać je od tyłu), ale przypuszczam, że będziesz popełniał później więcej błędów przy pisaniu tablic dla poszczególnych cyfr. Jak zmodyfikujesz daj znać jak układ się zachowuje (jeżeli jakieś znaczące zmiany to nagranie mile widziane <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=1870">deerjelen</a> — 22 gru 2014, o 16:09</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Mateo193]]></name></author>
<updated>2014-12-22T14:12:01+01:00</updated>
<published>2014-12-22T14:12:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109959#p109959</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109959#p109959"/>
<title type="html"><![CDATA[Re: Sterowanie scalakiem MAX6921 (iv-11)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109959#p109959"><![CDATA[
A więc tak oto kod:<br />[syntax=cpp]/*<br /> * main.c<br /> *<br /> *  Created on: 22-11-2014<br /> *      Author: Mateusz Kaczmarek<br /> */<br /><br /><br />#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br /><br />// definicje dla preprocesora<br />#define LED_PIN (1&lt;&lt;PD7)// definicja pinu do którego podłączona jest dioda<br />#define LED_ON PORTD |= LED_PIN// makrodefinicja – załączenie diody<br />#define LED_OFF PORTD &amp;= ~LED_PIN// makrodefinicja – wyłączenie diody<br />#define LED_TOG PORTD ^= LED_PIN// makrodefinicja – zmiana stanu diody<br /><br />/* hardware SPI */<br />#define MOSI PD1<br />#define SCK  PD2<br />#define CS   PD3<br /><br />#define SCK_0 PORTD &amp;=~(1&lt;&lt;SCK)<br />#define SCK_1 PORTD |= (1&lt;&lt;SCK)<br /><br />#define MOSI_0 PORTD &amp;= ~(1&lt;&lt;MOSI)<br />#define MOSI_1 PORTD |= (1&lt;&lt;MOSI)<br /><br />#define LATCH_ON PORTD |= (1&lt;&lt;CS)<br />#define LATCH_OFF PORTD &amp;=~(1&lt;&lt;CS)<br />/*Pierwszy<br />uint8_t bufor&#91;20&#93;={1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0};<br />uint8_t bufor1&#91;20&#93;={0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1};<br />*/<br /><br />//Drugi<br />uint8_t bufor&#91;20&#93;={1,0,1,0,1,0,1,0,1,0,1,0,1,1,0,0,0,0,0,0};<br />uint8_t bufor1&#91;20&#93;={0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,0,0,0,0,0};<br /><br />void SPI_send(uint8_t bajt);<br />void SPI_send_buf (uint8_t *buf);<br /><br />int main (void){<br /><br />DDRD |= ((1&lt;&lt;MOSI) | (1&lt;&lt;CS) | (1&lt;&lt;SCK));<br /><br />SPI_send_buf (bufor);<br /><br />        while(1){<br /><br />        SPI_send_buf (bufor);<br />        _delay_ms(500);<br />        SPI_send_buf (bufor1);<br />        _delay_ms(500);<br /><br />        LED_TOG;<br />        _delay_ms(500);<br />        }<br />}<br /><br /><br />void SPI_send(uint8_t bajt){<br /><br />if ( bajt ) MOSI_1; else MOSI_0;<br />SCK_1;<br />_delay_us(10);<br />SCK_0;<br />_delay_us(10);<br />}<br /><br />void SPI_send_buf (uint8_t *buf){<br /><br />for( uint8_t i=0; i&lt;20; i++){<br />uint8_t b = *buf++;<br />SPI_send( b );<br />}<br /><br />LATCH_ON;<br />_delay_us(10);<br />LATCH_OFF;<br />_delay_us(10);<br />}[/syntax]<br />Dla pierwszego filmu dałem kombinacje pierwszą a do drugiego drugą<br />-Zamiast nopów dałem większe opóźnienia dla pewności (10us)<br />-Tak dioda mruga prawidłowo 1Hz <br />-Na pinach PB są to przyciski <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />A oto dwa filmy. Widać w oddali mrugającą diodę (LED_TOG)<br />-W drugim od razu zapaliły się wszystkie<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><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=1349">Mateo193</a> — 22 gru 2014, o 14:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[deerjelen]]></name></author>
<updated>2014-12-22T13:04:36+01:00</updated>
<published>2014-12-22T13:04:36+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109955#p109955</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109955#p109955"/>
<title type="html"><![CDATA[Re: Sterowanie scalakiem MAX6921 (iv-11)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109955#p109955"><![CDATA[
Nie dziwne, że kod Gumenieg nic nie zmienił, bo jego kod robi dokładnie to samo co Twój, tylko innymi słowami. Próbowałeś wstawić tam asm(&quot;nop&quot;);, gdzie Ci mówiłem? Wstaw kilka między załączeniem a wyłączeniem zegara, jak i przy zatrzasku i nie usuwaj dopóki nie znajdziemy głównego błędu ;p. Dioda led podłączona pod PD7 mruga z częstotliwością 1Hz? Co to jest na Pinach PB[2:0], oznaczone jako K_[3:1]?<br />Spróbuj coś takiego w pętli głównej.<br />[syntax=c]// zdefiniuj sobie globalnie uint8_t bufor1&#91;20&#93;={0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1};<br />while(1){<br />  SPI_send_buf (bufor);<br />  _delay_ms(1000);<br />  SPI_send_buf (bufor1);<br />  _delay_ms(1000);<br />}[/syntax]<br />I później opisz zachowanie układu.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1870">deerjelen</a> — 22 gru 2014, o 13:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Mateo193]]></name></author>
<updated>2014-12-22T09:37:35+01:00</updated>
<published>2014-12-22T09:37:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109934#p109934</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109934#p109934"/>
<title type="html"><![CDATA[Re: Sterowanie scalakiem MAX6921 (iv-11)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109934#p109934"><![CDATA[
@gumeni nic to nie zmieniło, nadal różne segmenty się zapalają.<br />@deerjelen u nas akurat jest tak: <br /><br />[syntax=cpp]asm(&quot;nop&quot;);[/syntax]<br />-taktowanie jest 11.0592MHz<br />a tutaj cześć schematu odpowiedzialna za lampy<br /><a href="http://forum.atnel.pl/_obrazki/o/1349/f825731fffd1b947c45e9f4447cf1557.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1349/f825731fffd1b947c45e9f4447cf1557.png" alt="Obrazek" /></a><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1349">Mateo193</a> — 22 gru 2014, o 09:37</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[deerjelen]]></name></author>
<updated>2014-12-21T20:15:17+01:00</updated>
<published>2014-12-21T20:15:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109895#p109895</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109895#p109895"/>
<title type="html"><![CDATA[Re: Sterowanie scalakiem MAX6921 (iv-11)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109895#p109895"><![CDATA[
Niby dlaczego w linii 45 powinno być &quot;SPI_send_buf(*bufor);&quot;? Kolega w funkcji SPI_send_buf odbiera wskaźnik, gdzie 'bufor' rzeczywiście jest wskaźnikiem, a '*bufor' to już jest obiekt i wysyłanie go do tak skonstruowanej funkcji w ogóle nie ma sensu. Zastanawia mnie dlaczego wyskakuje Ci &quot;passing argument 1 of 'SPI_send_buf' makes pointer from integer without a cast&quot;. Dziwne. <br />Losowość danych ( i to, że losowanie następuje tylko przy wgrywaniu danych) może coś sugerować, ale niestety nie zamieściłeś schematu i ciężko jest rozważać inne możliwe błędy.<br /><br />W nocie katalogowej piszą coś minimalnych czasach trwania pulsu na SCK. Nie wiem, jaki oscylator ma podłączony kolega pod procesor, więc tylko hipotetycznie doradzę, by spróbować:<br />[syntax=c]SCK_1;<br />__nop();   // tak wygląda pusta instrukcja na ARM. Jeżeli nie wiesz jak wygląda na na AVR, wpisz np _delay_ns(90);<br />SCK_0;[/syntax]<br />Zrób to samo między LATCH'ami.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1870">deerjelen</a> — 21 gru 2014, o 20:15</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[gumeni]]></name></author>
<updated>2014-12-21T10:58:31+01:00</updated>
<published>2014-12-21T10:58:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109787#p109787</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109787#p109787"/>
<title type="html"><![CDATA[Re: Sterowanie scalakiem MAX6921 (iv-11)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109787#p109787"><![CDATA[
[syntax=c]/*<br />     * main.c<br />     *<br />     *  Created on: 22-11-2014<br />     *      Author: Mateusz Kaczmarek<br />     */<br /><br /><br />    #include &lt;avr/io.h&gt;<br />    #include &lt;avr/interrupt.h&gt;<br />    #include &lt;avr/pgmspace.h&gt;<br />    #include &lt;util/delay.h&gt;<br /><br /><br />    // definicje dla preprocesora<br />    #define LED_PIN (1&lt;&lt;PD7)                        // definicja pinu do którego podłączona jest dioda<br />    #define LED_ON PORTD |= LED_PIN // makrodefinicja – załączenie diody<br />    #define LED_OFF PORTD &amp;= ~LED_PIN       // makrodefinicja – wyłączenie diody<br />    #define LED_TOG PORTD ^= LED_PIN        // makrodefinicja – zmiana stanu diody<br /><br />    /* hardware SPI */<br />    #define MOSI PD1<br />    #define SCK  PD2<br />    #define CS   PD3<br /><br />    #define SCK_0 PORTD &amp;=~(1&lt;&lt;SCK)<br />    #define SCK_1 PORTD |= (1&lt;&lt;SCK)<br /><br />    #define MOSI_0 PORTD &amp;= ~(1&lt;&lt;MOSI)<br />    #define MOSI_1 PORTD |= (1&lt;&lt;MOSI)<br /><br />    #define LATCH_ON PORTD |= (1&lt;&lt;CS)<br />    #define LATCH_OFF PORTD &amp;=~(1&lt;&lt;CS)<br /><br />    uint8_t bufor&#91;20&#93;={1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0};<br /><br />    void SPI_send(uint8_t bajt);<br />    void SPI_send_buf (void);<br /><br />    int main (void)<br />    {<br /><br />                    DDRD |= ((1&lt;&lt;MOSI) | (1&lt;&lt;CS) | (1&lt;&lt;SCK));<br /><br />                    SPI_send_buf ();<br />            while(1)<br />            {<br />                    LED_TOG;<br />                    _delay_ms(500);<br />            }<br />    }<br /><br /><br />    void SPI_send(uint8_t bajt)<br />            {<br />                    if ( bajt) MOSI_1; else MOSI_0;<br /><br />                    SCK_1;<br />                    SCK_0;<br /><br />    }<br /><br />    void SPI_send_buf (void){<br /><br />            for( uint8_t i=0; i&lt;20; i++){<br />                    SPI_send( bufor&#91;i&#93; );<br />            }<br />            LATCH_ON;<br />            LATCH_OFF;<br />    }[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3088">gumeni</a> — 21 gru 2014, o 10:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Mateo193]]></name></author>
<updated>2014-12-20T20:00:04+01:00</updated>
<published>2014-12-20T20:00:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109707#p109707</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109707#p109707"/>
<title type="html"><![CDATA[Re: Sterowanie scalakiem MAX6921 (iv-11)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109707#p109707"><![CDATA[
Hmm z początku warning wyskakiwał<br /><br />passing argument 1 of 'SPI_send_buf' makes pointer from integer without a cast [enabled by default]<br /><br />ale po cleanowaniu wszystko okej<br /><br />Jednak nadal losowe segmenty się zapalają.<br /><br />@ a przy deklaracji zmiennej w pojawia się informacja<br /><br />expected 'uint8_t *' but argument is of type 'uint8_t'<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1349">Mateo193</a> — 20 gru 2014, o 20:00</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[gumeni]]></name></author>
<updated>2014-12-20T19:38:47+01:00</updated>
<published>2014-12-20T19:38:47+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109700#p109700</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109700#p109700"/>
<title type="html"><![CDATA[Re: Sterowanie scalakiem MAX6921 (iv-11)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109700#p109700"><![CDATA[
W lini 45 chyba powinno być SPI_send_buf(*bufor);<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3088">gumeni</a> — 20 gru 2014, o 19:38</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Mateo193]]></name></author>
<updated>2014-12-20T17:19:22+01:00</updated>
<published>2014-12-20T17:19:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109689#p109689</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109689#p109689"/>
<title type="html"><![CDATA[Sterowanie scalakiem MAX6921 (iv-11)]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=9778&amp;p=109689#p109689"><![CDATA[
Witam, postanowiłem wreszcie wziąć się za projekt zegarka na lampach i mam problem:D<br />Przykładowo gdy chce wysłać taki ciąg z bufora <br /><br />[syntax=c]uint8_t bufor&#91;20&#93;={1,1,1,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0};[/syntax]<br />zapalają się przypadkowe elementy (za każdym wgraniem wsady inna kombinacja)<br />A oto schemat połączeń<br />Od OUT0 do OUT 7 -- mam połączone wszystkie segmenty (wraz z kropką)<br />Od OUT8 do OUT13 -- mam połączone siatki tych lamp<br /><br />Jaki mógłby być powód że tak się zachowują lampy?<br />Sądzę że jakiś błąd popełniłem przy wysłaniu tych bajtów do scalaka. Jakby ktoś mógłby wskazać błąd byłbym wdzięczny.<br />Oto mój kod:<br />[syntax=cpp]/*<br /> * main.c<br /> *<br /> *  Created on: 22-11-2014<br /> *      Author: Mateusz Kaczmarek<br /> */<br /><br /><br />#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br /><br />// definicje dla preprocesora<br />#define LED_PIN (1&lt;&lt;PD7)// definicja pinu do którego podłączona jest dioda<br />#define LED_ON PORTD |= LED_PIN// makrodefinicja – załączenie diody<br />#define LED_OFF PORTD &amp;= ~LED_PIN// makrodefinicja – wyłączenie diody<br />#define LED_TOG PORTD ^= LED_PIN// makrodefinicja – zmiana stanu diody<br /><br />/* hardware SPI */<br />#define MOSI PD1<br />#define SCK  PD2<br />#define CS   PD3<br /><br />#define SCK_0 PORTD &amp;=~(1&lt;&lt;SCK)<br />#define SCK_1 PORTD |= (1&lt;&lt;SCK)<br /><br />#define MOSI_0 PORTD &amp;= ~(1&lt;&lt;MOSI)<br />#define MOSI_1 PORTD |= (1&lt;&lt;MOSI)<br /><br />#define LATCH_ON PORTD |= (1&lt;&lt;CS)<br />#define LATCH_OFF PORTD &amp;=~(1&lt;&lt;CS)<br /><br />uint8_t bufor&#91;20&#93;={1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0};<br /><br />void SPI_send(uint8_t bajt);<br />void SPI_send_buf (uint8_t *buf);<br /><br />int main (void)<br />{<br /><br />DDRD |= ((1&lt;&lt;MOSI) | (1&lt;&lt;CS) | (1&lt;&lt;SCK));<br /><br />SPI_send_buf (bufor);<br />        while(1)<br />        {<br />        LED_TOG;<br />        _delay_ms(500);<br />        }<br />}<br /><br /><br />void SPI_send(uint8_t bajt)<br />{<br />if ( bajt) MOSI_1; else MOSI_0;<br /><br />SCK_1;<br />SCK_0;<br /><br />}<br /><br />void SPI_send_buf (uint8_t *buf){<br /><br />for( uint8_t i=0; i&lt;20; i++){<br />uint8_t b = *buf++;<br />SPI_send( b );<br />}<br />LATCH_ON;<br />LATCH_OFF;<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1349">Mateo193</a> — 20 gru 2014, o 17:19</p><hr />
]]></content>
</entry>
</feed>