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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2022-08-04T14:06:50+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=24289&amp;mode</id>
<entry>
<author><name><![CDATA[SylwekK]]></name></author>
<updated>2022-08-04T14:06:50+01:00</updated>
<published>2022-08-04T14:06:50+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235908#p235908</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235908#p235908"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235908#p235908"><![CDATA[
To<br />        PORTD |= (1&lt;&lt;ROWSTB);<br />        PORTD &amp;=~ (1&lt;&lt;ROWSTB);<br /><br />Umieść za tym<br /><br />        PORTC |= (1&lt;&lt;KOLUMNA);<br />        PORTC &amp;=~ (1&lt;&lt;KOLUMNA);<br /><br />Nie analizowałem całości, ale to chyba właśnie zatrzaski<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1922">SylwekK</a> — 4 sie 2022, o 14:06</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Johnnny94]]></name></author>
<updated>2022-08-04T12:19:59+01:00</updated>
<published>2022-08-04T12:19:59+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235907#p235907</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235907#p235907"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235907#p235907"><![CDATA[
Korzystam z tego co podawałem w kodzie powyżej. Kod pochodzi z dokumentacji procesora oraz bluebooka.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=20830">Johnnny94</a> — 4 sie 2022, o 12:19</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SylwekK]]></name></author>
<updated>2022-08-04T11:52:43+01:00</updated>
<published>2022-08-04T11:52:43+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235906#p235906</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235906#p235906"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235906#p235906"><![CDATA[
Zmodyfikuj nieco procedirę wysyłania bitów ma string - przenieś fragment odpowiedzialny za zatrzask. Dokładnie nie powiem, bo korzystam ze swoich rozwiązań, a nie wiem z czego ty korzystasz.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1922">SylwekK</a> — 4 sie 2022, o 11:52</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Johnnny94]]></name></author>
<updated>2022-08-04T10:58:35+01:00</updated>
<published>2022-08-04T10:58:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235905#p235905</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235905#p235905"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235905#p235905"><![CDATA[
Mogę prosić o podpowiedź jak w programie zrobić wysłanie pierwszego stringu, potem drugiego i je zatrzasnąć?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=20830">Johnnny94</a> — 4 sie 2022, o 10:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SylwekK]]></name></author>
<updated>2022-07-29T15:19:32+01:00</updated>
<published>2022-07-29T15:19:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235895#p235895</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235895#p235895"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235895#p235895"><![CDATA[
Może przesłać najpierw jeden string potem drugi i dopiero zatrzasnąć oba...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1922">SylwekK</a> — 29 lip 2022, o 15:19</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Johnnny94]]></name></author>
<updated>2022-07-29T11:49:41+01:00</updated>
<published>2022-07-29T11:49:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235892#p235892</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235892#p235892"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235892#p235892"><![CDATA[
Mam następny problem z wyświetlaniem na mojej matrycy. Przy takim programie jak jest poniżej powstaje przesunięcie czasowe pomiędzy SendSpiRzad i SendSpiKolumna, dlatego powstaje mi &quot;widmo&quot; podczas wyświetlania.<br /><br />Chcę dodatkowo regulować jasność wyświetlania dlatego wykorzystuje timer2 do sterowania PWM.<br /><br />[syntax=c]#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 />#define MOSI PB3<br />#define SCK PB5<br />#define SS PB2<br /><br />#define RZAD PD6<br />#define KOLUMNA PC5<br /><br />void InitSpi(void);<br />void SendSpiRzad(uint16_t bajt_rzad);<br />void SendSpiKolumna(uint64_t bajt_kolumna);<br /><br />volatile uint16_t cnt_rzad;<br />volatile uint64_t cnt_kolumna;<br /><br />volatile uint8_t pwm1;<br />volatile uint8_t jasnosc=250;<br /><br />int main(void){<br /><br />TCCR2A |= (1&lt;&lt;WGM21);//TRYB CTC<br />TCCR2B |= (1&lt;&lt;CS20);//PRESKALER 1<br />OCR2A = 250;<br />TIMSK2 |= (1&lt;&lt;OCIE2A);<br /><br />InitSpi();<br /><br />sei();<br /><br />while(1){<br /><br />}<br />}<br /><br />ISR(TIMER2_COMPA_vect)<br />{<br />static uint8_t snt;<br />snt++;<br />pwm1=jasnosc;<br />if(snt&gt;=pwm1)//1=10us --&gt; 10=100us --&gt;100=1ms<br />{<br />SendSpiRzad(0);<br />}<br />else<br />{<br />rzad++;<br />punkt();<br />if(rzad&gt;15)rzad=0;<br /><br />cnt_rzad&lt;&lt;=1;<br />if(cnt_rzad==0)cnt_rzad=0x1;<br />SendSpiKolumna(cnt_kolumna);<br />SendSpiRzad(cnt_rzad);<br />}<br />if(snt&gt;=250)snt=0;<br />}<br /><br />void SendSpiRzad( uint16_t bajt_rzad){<br />SPDR = bajt_rzad&gt;&gt;8;<br />while (!(SPSR &amp; (1&lt;&lt;SPIF)));<br />SPDR = bajt_rzad;<br />while (!(SPSR &amp; (1&lt;&lt;SPIF)));<br /><br />PORTD |= (1&lt;&lt;ROWSTB);<br />PORTD &amp;=~ (1&lt;&lt;ROWSTB);<br />}<br />void SendSpiKolumna( uint64_t bajt_kolumna){<br />SPDR = bajt_kolumna&gt;&gt;40;<br />while (!(SPSR &amp; (1&lt;&lt;SPIF)));<br />SPDR = bajt_kolumna&gt;&gt;32;<br />while (!(SPSR &amp; (1&lt;&lt;SPIF)));<br />SPDR = bajt_kolumna&gt;&gt;24;<br />while (!(SPSR &amp; (1&lt;&lt;SPIF)));<br />SPDR = bajt_kolumna&gt;&gt;16;<br />while (!(SPSR &amp; (1&lt;&lt;SPIF)));<br />SPDR = bajt_kolumna&gt;&gt;8;<br />while (!(SPSR &amp; (1&lt;&lt;SPIF)));<br />SPDR = bajt_kolumna;<br />while (!(SPSR &amp; (1&lt;&lt;SPIF)));<br /><br />PORTC |= (1&lt;&lt;KOLUMNA);<br />PORTC &amp;=~ (1&lt;&lt;KOLUMNA);<br />}[/syntax]<br /><br />Czy jest możliwość aby zrobić to w taki sposób, żeby wyświetlenie za pomocą 74HC595 nie połączonych ze sobą odbyło się w tym samym czasie? Czy muszę kombinować w inny sposób?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=20830">Johnnny94</a> — 29 lip 2022, o 11:49</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Johnnny94]]></name></author>
<updated>2022-07-22T16:31:25+01:00</updated>
<published>2022-07-22T16:31:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235880#p235880</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235880#p235880"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235880#p235880"><![CDATA[
Działa, programowe podciągnięcie do VCC pomogło. Dzięki za pomoc <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=20830">Johnnny94</a> — 22 lip 2022, o 16:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2022-07-22T15:57:57+01:00</updated>
<published>2022-07-22T15:57:57+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235879#p235879</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235879#p235879"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235879#p235879"><![CDATA[
<div class="quotetitle">Johnnny94 napisał(a):</div><div class="quotecontent"><br />Czy jest możliwe, że przy tym programie który mam nie włącza się SPI?<br /></div> Kilka postów wyżej kolega ord  wrzucił pewna sugestię, próbowałeś iść tą drogą. W przetoczonym fragmencie noty jest napisane że przy trybie master gdy pin SS jest w procku ustawiony jako wejście, to wejście to musi być w stanie wysokim, inaczej moduł SPI będzie w trybie nasłuchu (sygnał niski na tym wejściu jest dla modułu informacją iż inny master próbuje coś nadawać). Jeśli tego pinu wogule nie konfigurujesz to po starcie domyślnie jest on pinem wejściowym w dodatku bez podciągnięcia więc jest wysoce prawdopodobne iż może tam panować stan który jest interpretowany jako &quot;0&quot; logiczne. Spróbuj włączyć programowe podciąganie tego pinu do vcc albo podłącz zewnętrzny rezystor 10k do vcc...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 22 lip 2022, o 15:57</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2022-07-22T15:40:27+01:00</updated>
<published>2022-07-22T15:40:27+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235877#p235877</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235877#p235877"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235877#p235877"><![CDATA[
przy tym z pierwszego posta? Pwnie że nie zadziała jeśli nigdzie nie ustawiasz pinu SS jako wyjście ze stanem wysokim<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 22 lip 2022, o 15:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Johnnny94]]></name></author>
<updated>2022-07-22T15:29:09+01:00</updated>
<published>2022-07-22T15:29:09+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235876#p235876</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235876#p235876"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235876#p235876"><![CDATA[
Podłączyłem oscyloskop i na linii SCK mam ciągle ok 3,3V tak samo jak na MOSI. Przy działającym SPI nie powinno tak być.<br />Czy jest możliwe, że przy tym programie który mam nie włącza się SPI?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=20830">Johnnny94</a> — 22 lip 2022, o 15:29</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Johnnny94]]></name></author>
<updated>2022-07-22T12:40:18+01:00</updated>
<published>2022-07-22T12:40:18+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235874#p235874</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235874#p235874"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235874#p235874"><![CDATA[
To fakt 14 nóżka jest podłączona do MOSI w procesorze.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=20830">Johnnny94</a> — 22 lip 2022, o 12:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2022-07-22T12:20:56+01:00</updated>
<published>2022-07-22T12:20:56+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235873#p235873</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235873#p235873"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235873#p235873"><![CDATA[
A co z liniami SER(14 noga) rejestrów? Wiszą w powietrzu czy jak?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 22 lip 2022, o 12:20</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Johnnny94]]></name></author>
<updated>2022-07-22T09:26:42+01:00</updated>
<published>2022-07-22T09:26:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235872#p235872</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235872#p235872"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235872#p235872"><![CDATA[
Właśnie próbuję zrobić z dwoma liniami CS. Problem w tym, że wgrywam program jak powyżej pisałem i nic mi nie działa. Czy jest coś na co jeszcze muszę zwrócić uwagę?<br />74HC595 mam podłączony w następujący sposób:<br />QA-QH - wyjścia na ledy<br />SCL (10 nóżka) - 5V<br />SCK (11 nóżka) - SCK procesora (PB5)<br />RCK(12 nóżka) - PD6,PC5 (PD6 dla WIERSZ, PC5 dla KOLUMNA)<br />G (13 nóżka) - GND<br />8 nóżka - GND<br />16 nóżka - 5V<br />przy zasilaniu zasilanie 74HC595 (8,16 nóżka) dodatkowo kondensator 100n.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=20830">Johnnny94</a> — 22 lip 2022, o 09:26</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2022-07-20T13:24:21+01:00</updated>
<published>2022-07-20T13:24:21+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235871#p235871</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235871#p235871"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235871#p235871"><![CDATA[
no to zrób z wieloma liniami CS w czym problem - to się dokładnie tak samo steruje - kolejne linie CS<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 20 lip 2022, o 13:24</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Johnnny94]]></name></author>
<updated>2022-07-20T13:18:30+01:00</updated>
<published>2022-07-20T13:18:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235870#p235870</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235870#p235870"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235870#p235870"><![CDATA[
Dokładnie, uparł się, ma taką płytkę i chce to ogarnąć. Projekty z jedną linią SS już robiłem i mi działają więc dlatego chce coś takiego zrobić.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=20830">Johnnny94</a> — 20 lip 2022, o 13:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2022-07-20T13:10:59+01:00</updated>
<published>2022-07-20T13:10:59+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235869#p235869</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235869#p235869"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235869#p235869"><![CDATA[
<div class="quotetitle">SylwekK napisał(a):</div><div class="quotecontent"><br />Przecież to kompletnie nie ma znaczenia,<br /></div><br />ale się człowiek uparł i chce sobie robić pod górkę - no to co poczniesz panie <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> widać że żadnych argumentów nie słucha.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 20 lip 2022, o 13:10</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SylwekK]]></name></author>
<updated>2022-07-20T10:52:25+01:00</updated>
<published>2022-07-20T10:52:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235868#p235868</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235868#p235868"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235868#p235868"><![CDATA[
<div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />Docelowo będzie to matryca 16x64 dlatego takie kombinowanie.<br /></div><br />Przecież to kompletnie nie ma znaczenia, aby utrudniać sobie robotę i komplikować program. W mojej ostatniej zabawce jest 9 rejestrów 595 w jednym sznurku i odpowoadają za wyświetlacz 7seg, sterowanie led (zwykłe wyjścia) jak i czytanie przycisków (wejścia), a żeby było śmieszniej wszystko jest pomieszane, bo tak mi było wygodniej płytkę projektować. Kluczem do łatwego zarządzania jest zdefiniowanie sobie wirtualnych rejestrów dla poszczególnych bloków wej/wyj, a cała wysyłka paczki sterującej odbywa się cyklicznie  w pętli głównej przypisując lub uzupełniając (dla wej) wspomniane wirtualne rejestry.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1922">SylwekK</a> — 20 lip 2022, o 10:52</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Johnnny94]]></name></author>
<updated>2022-07-20T10:34:40+01:00</updated>
<published>2022-07-20T10:34:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235867#p235867</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235867#p235867"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235867#p235867"><![CDATA[
Docelowo będzie to matryca 16x64 dlatego takie kombinowanie.<br />Dodałem do kodu CPHA w rejestrze SPCR na 1, kod poniżej:<br />[syntax=c]void InitSpi(void)<br />{<br />DDRB|=(1&lt;&lt;MOSI)|(1&lt;&lt;SCK);<br />DDRC|=(1&lt;&lt;KOLUMNA);<br />DDRD|=(1&lt;&lt;WIERSZ);<br />SPCR|=(1&lt;&lt;SPE)|(1&lt;&lt;MSTR)|(1&lt;&lt;CPHA);<br />SPSR|=(1&lt;&lt;SPI2X);//PRESKALER 2<br />}[/syntax]<br /><br />niestety nic to nie zmienia. Połączenia na płytce są tak jak powinny. Prototyp płytki wykonany na laminacie w firmie, która się tym zajmuje.<br />Do tej pory korzystałem z pinu SS i nie było problemów. Czy gdzieś  jeszcze muszę zmienić adres pinu SS jak w moim przypadku &quot;KOLUMNA&quot; &quot;WIERSZ&quot;?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=20830">Johnnny94</a> — 20 lip 2022, o 10:34</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2022-07-19T22:17:25+01:00</updated>
<published>2022-07-19T22:17:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235863#p235863</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235863#p235863"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235863#p235863"><![CDATA[
Sam kod wydaje się być ok (pomijając literówkę) ale w inicie SPI ustawiłbym jeszcze bit CPHA w rejestrze SPCR na &quot;1&quot;<br />Rejestr 74HC595 reaguje na opadające zbocze zegara, a przy domyślnych ustawieniach tego bitu jakie miałeś dla SPI powodują że w procku na zboczu opadającym ustawiane są dane do wysyłki, a sama wysyłka powinna być na zboczu narastającym czyli z punktu widzenia 74HC595 mogą być stany nieustalone więc może to jest problemem. Jeśli to nie pomoże, sprawdziłbym dokładnie połączenia elektryczne...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 19 lip 2022, o 22:17</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SylwekK]]></name></author>
<updated>2022-07-18T23:04:53+01:00</updated>
<published>2022-07-18T23:04:53+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235862#p235862</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235862#p235862"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235862#p235862"><![CDATA[
A mnie bardziej zastanawia jaki cel przyświeca takiemu sterowaniu? Dlaczego nie na wspólnych wszystkich liniach tylko rozdzielasz SS?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1922">SylwekK</a> — 18 lip 2022, o 23:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Johnnny94]]></name></author>
<updated>2022-07-18T22:28:54+01:00</updated>
<published>2022-07-18T22:28:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235861#p235861</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235861#p235861"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235861#p235861"><![CDATA[
To fakt, tam jest literówka.<br />Procesor to ATmega168. Schematu nie mam natomiast mogę powiedzieć jak to jest podłączone. <br />Do QA-QH mam podłączone tranzystory którymi mam sterować.<br />10 nóżka 74HC595 podłączona do 5V.<br />SCK z procesora do SCK 74HC595 (nóżka 11).<br />RCK (12 nóżka) 74HC595 podłączona do PC5 mikroprocesora, natomiast drugiego układu 74HC595 do PD6 mikroprocesora.<br />13 nóżka 74HC595 podłączona do GND.<br />Nóżki 8 i16 to zasilanie i zastosowany tam kondensator 100n.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=20830">Johnnny94</a> — 18 lip 2022, o 22:28</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2022-07-18T21:01:25+01:00</updated>
<published>2022-07-18T21:01:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235860#p235860</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235860#p235860"/>
<title type="html"><![CDATA[Re: Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235860#p235860"><![CDATA[
<div class="quotetitle">Johnnny94 napisał(a):</div><div class="quotecontent"><br />Czy jest możliwe zrobić to tak jak sobie wymyśliłem czy za bardzo kombinuję i jest to nie do przeskoczenia?<br /></div>Tak, można to tak rozwiązać. Natomiast ciężko powiedzieć co robisz źle. Nawet nie podałeś jaki masz uC, nie wspominając już o jakimś schemacie połączeń, być może źle obsługujesz rejestry (nie wiadomo co i gdzie masz do rejestrów podpięte). Jedyny być może błąd jaki widzę to w kodzie w funkcjach wysyłających dane po SPI na koniec banglujesz jednym pinem, tylko że z makrodefinicji wynika że jeden jest na PD6, a drugi na PC5 natomiast w obu przypadkach operujesz na porcie D!? Natomiast bez schematu nie wiadomo czy to błąd, czy literówka w kodzie...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 18 lip 2022, o 21:01</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Johnnny94]]></name></author>
<updated>2022-07-18T17:12:47+01:00</updated>
<published>2022-07-18T17:12:47+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235859#p235859</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235859#p235859"/>
<title type="html"><![CDATA[Tworzenie matrycy na 74HC595]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24289&amp;p=235859#p235859"><![CDATA[
Witam,<br />chciałem stworzyć sobie matrycę na układach 74HC595. <br />Wiersze oraz kolumny mają mieć osobne, niezależne układy 74HC595.<br />Czy jest możliwość aby za pomocą jednego SPI ale dwóch różnych SS tym sterować?<br />MOSI i SCK pozostaje dla obu takie samo, natomiast inne jest SS. <br />Program który chciałem stworzyć poniżej:<br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;avr/wdt.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;stdlib.h&gt;<br />#include &lt;string.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br />#define MOSI PB3<br />#define SCK PB5<br /><br />#define WIERSZ PD6<br />#define KOLUMNA PC5<br /><br />void InitSpi(void);<br /><br /><br />void SendSpiWiersz(uint8_t bajt_wiersz);<br />void SendSpiKolumna(uint8_t bajt_kolumna);<br />volatile uint8_t cnt_wiersz;<br />volatile uint8_t cnt_kolumna;<br /><br /><br />int main(void)<br />{<br /><br />InitSpi();<br /><br />while(1)<br />{<br />     cnt_wiersz=0xff;<br />             cnt_kolumna=0xff;<br />             SendSpiWiersz(cnt_wiersz);<br />             SendSpiKolumna(cnt_kolumna);<br />}<br />}<br /><br />void InitSpi(void)<br />{<br />DDRB|=(1&lt;&lt;MOSI)|(1&lt;&lt;SCK);<br />        DDRC|=(1&lt;&lt;KOLUMNA);<br />DDRD|=(1&lt;&lt;WIERSZ);<br />SPCR|=(1&lt;&lt;SPE)|(1&lt;&lt;MSTR);<br />SPSR|=(1&lt;&lt;SPI2X);//PRESKALER 2<br />}<br /><br />void SendSpiWiersz( uint8_t bajt_wiersz)<br />{<br />SPDR = bajt_wiersz;<br />while (!(SPSR &amp; (1&lt;&lt;SPIF)));<br /><br />PORTD |= (1&lt;&lt;WIERSZ);<br />PORTD &amp;=~ (1&lt;&lt;WIERSZ);<br />}<br />void SendSpiKolumna( uint8_t bajt_kolumna)<br />{<br />SPDR = bajt_kolumna;<br />while (!(SPSR &amp; (1&lt;&lt;SPIF)));<br /><br />PORTD |= (1&lt;&lt;KOLUMNA);<br />PORTD &amp;=~ (1&lt;&lt;KOLUMNA);<br />}[/syntax]<br /><br />Niestety jak wgrywam taki program, to na wyjściach z 74HC595 mam stan 0. Nie mam kontroli nad zmianami stanów.<br />Czy jest możliwe zrobić to tak jak sobie wymyśliłem czy za bardzo kombinuję i jest to nie do przeskoczenia?<br />Z góry dziękuję za wszelką pomoc.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=20830">Johnnny94</a> — 18 lip 2022, o 17:12</p><hr />
]]></content>
</entry>
</feed>