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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-07-13T10:01:02+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=12297&amp;mode</id>
<entry>
<author><name><![CDATA[luki]]></name></author>
<updated>2015-07-13T10:01:02+01:00</updated>
<published>2015-07-13T10:01:02+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=12297&amp;p=134378#p134378</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=12297&amp;p=134378#p134378"/>
<title type="html"><![CDATA[Re: Problem z układem MAX7219]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=12297&amp;p=134378#p134378"><![CDATA[
Dokładnie masz wszystko opisane w pliku *.h biblioteki na samej górze masz definicje portów MOSI,SCK,CS(LATCH).<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=273">luki</a> — 13 lip 2015, o 10:01</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[MirkoT]]></name></author>
<updated>2015-07-13T09:53:49+01:00</updated>
<published>2015-07-13T09:53:49+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=12297&amp;p=134377#p134377</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=12297&amp;p=134377#p134377"/>
<title type="html"><![CDATA[Re: Problem z układem MAX7219]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=12297&amp;p=134377#p134377"><![CDATA[
<div class="quotetitle">Marcinf8702 napisał(a):</div><div class="quotecontent"><br />A Znajde jakiś schemat podłączeniowy do tej biblioteki ??<br /></div><br />Nie sprawdzałem, ale pewnie w pliczku *.h <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=189">MirkoT</a> — 13 lip 2015, o 09:53</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Marcinf8702]]></name></author>
<updated>2015-07-13T09:39:46+01:00</updated>
<published>2015-07-13T09:39:46+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=12297&amp;p=134370#p134370</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=12297&amp;p=134370#p134370"/>
<title type="html"><![CDATA[Re: Problem z układem MAX7219]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=12297&amp;p=134370#p134370"><![CDATA[
A Znajde jakiś schemat podłączeniowy do tej biblioteki ??<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1568">Marcinf8702</a> — 13 lip 2015, o 09:39</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[luki]]></name></author>
<updated>2015-07-12T16:50:45+01:00</updated>
<published>2015-07-12T16:50:45+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=12297&amp;p=134309#p134309</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=12297&amp;p=134309#p134309"/>
<title type="html"><![CDATA[Re: Problem z układem MAX7219]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=12297&amp;p=134309#p134309"><![CDATA[
Ja korzystam z biblioteki opisanej na forum <a href="http://forum.atnel.pl/post30264.html"  class="postlink">http://forum.atnel.pl/post30264.html</a><br />Dostosowałem ją jedynie do obsługi 4 układów. Ale na początek spr sobie działanie na jednym układzie<br />U mnie działa bezproblemowo sterowanie jasnością,uśpienie wszystko zgodnie z datasheetem.<br /><br />Pozdrawiam Luki<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=273">luki</a> — 12 lip 2015, o 16:50</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Marcinf8702]]></name></author>
<updated>2015-07-12T15:49:51+01:00</updated>
<published>2015-07-12T15:49:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=12297&amp;p=134303#p134303</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=12297&amp;p=134303#p134303"/>
<title type="html"><![CDATA[Problem z układem MAX7219]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=12297&amp;p=134303#p134303"><![CDATA[
Witam wszystkich <br />Chciałbym zasięgnąć rady w sprawie układu MAX7219. Zakupiłem ostatnio układzik z diodą LED do samodzielnego montażu. Po załżeniu i zasileniu układu nastapiła sytuacja jak na poniższym zdjęcu czyli zapalają się poszczególne diody. Ukałd sterowany jest za pomocą Atmegi 8 z wykorzystanie kodu który również podaje poniżej. Program nie jest mojego autorstwa jednak chciałem poprostu sprawdzić czy układ w jakiś sposób odpowiada. Po wgraniu kodu widać że na ułamek sekundy zapalają się wygaszone diody. Jednak nie jestem w stanie choćby nawet wygasić tych które są już zapalone. Bardzo proszę o podpowiedź co może być nie tak.<br />Z góry dziękuję i pozdrawiam <br /><br /><a href="http://forum.atnel.pl/_obrazki/o/1568/66eec7f540c7589ea525579dfa561f5d.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1568/66eec7f540c7589ea525579dfa561f5d.jpg" alt="Obrazek" /></a><br /><a href="http://forum.atnel.pl/_obrazki/o/1568/0585d32548eb370272b4463f941130d3.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1568/0585d32548eb370272b4463f941130d3.png" alt="Obrazek" /></a><a href="http://forum.atnel.pl/_obrazki/o/1568/b8619901652da2f2dcc575cd331b5372.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1568/b8619901652da2f2dcc575cd331b5372.jpg" alt="Obrazek" /></a><br />[syntax=c]//max7219 output example<br /><br />#include &lt;stdio.h&gt;<br />#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br />#include &quot;max7219/max7219.h&quot;<br /><br />int main(void) {<br />max7219_init();<br /><br />uint8_t ic = 0;<br /><br />//init ic<br />for(ic=0; ic&lt;MAX7219_ICNUMBER; ic++) {<br />max7219_shutdown(ic, 1); //power on<br />max7219_test(ic, 0); //test mode off<br />max7219_decode(ic, 0); //use led matrix<br />max7219_intensity(ic, 0); //intensity<br />max7219_scanlimit(ic, 15);<br />}<br /><br />uint8_t i = 0;<br />uint8_t j = 0;<br />//do test loop for every ic<br />for(;;) {<br />for(ic=0; ic&lt;MAX7219_ICNUMBER; ic++) {<br />for(i=0; i&lt;8; i++) {<br />for(j=0; j&lt;8; j++) {<br />max7219_digit(ic, i, (1&lt;&lt;j));<br />_delay_ms(50);<br />}<br />max7219_digit(ic, i, 0);<br />}<br />}<br />}<br />}[/syntax]<br /><br />[syntax=c]/*<br />max7219 lib 0x01<br /><br />copyright (c) Davide Gironi, 2013<br /><br />Released under GPLv3.<br />Please refer to LICENSE file for licensing information.<br />*/<br /><br /><br />#include &lt;stdio.h&gt;<br />#include &lt;avr/io.h&gt;<br /><br />#include &quot;max7219.h&quot;<br /><br /><br />/*<br /> * shift out a byte<br /> */<br />void max7219_shiftout(uint8_t bytedata) {<br />uint8_t j = 0;<br /><br />//the shift is made in reverse order for this ic<br />for(j=8; j&gt;0; j--){<br />uint8_t val = (bytedata &amp; (1&lt;&lt;(j-1)))&gt;&gt;(j-1);<br />MAX7219_CLKPORT &amp;= ~(1 &lt;&lt; MAX7219_CLKINPUT); //set the serial-clock pin low<br />if(val)<br />MAX7219_DINPORT |= (1 &lt;&lt; MAX7219_DININPUT);<br />else<br />MAX7219_DINPORT &amp;= ~(1 &lt;&lt; MAX7219_DININPUT);<br />MAX7219_CLKPORT |= (1 &lt;&lt; MAX7219_CLKINPUT); //set the serial-clock pin high<br />}<br />}<br /><br /><br />/*<br /> * shift out data to a selected number<br /> */<br />void max7219_send(uint8_t icnum, uint8_t reg, uint8_t data) {<br />uint8_t i = 0;<br /><br />if(icnum &lt; MAX7219_ICNUMBER) {<br />MAX7219_LOADPORT &amp;= ~(1&lt;&lt;MAX7219_LOADINPUT); //load down<br />//send no op to following ic<br />for(i=icnum; i&lt;(MAX7219_ICNUMBER-1); i++) {<br />max7219_shiftout(MAX7218_REGNOOP); //no op reg<br />max7219_shiftout(MAX7218_REGNOOP); //no op data<br />}<br />//send info to current ic<br />max7219_shiftout(reg); //send reg<br />max7219_shiftout(data); //send data<br />//send no op to previous ic<br />for(i=0; i&lt;icnum; i++) {<br />max7219_shiftout(MAX7218_REGNOOP); //no op reg<br />max7219_shiftout(MAX7218_REGNOOP); //no op data<br />}<br />MAX7219_LOADPORT |= (1&lt;&lt;MAX7219_LOADINPUT); //load up<br />}<br />}<br /><br /><br />/*<br /> * set shutdown for a selected ic<br /> */<br />void max7219_shutdown(uint8_t icnum, uint8_t value) {<br />if(value == 0 || value == 1)<br />max7219_send(icnum, MAX7218_REGSHUTDOWN, value);<br />}<br /><br /><br />/*<br /> * set brightness for a selected ic<br /> */<br />void max7219_intensity(uint8_t icnum, uint8_t value) {<br />if(value &lt; 16)<br />max7219_send(icnum, MAX7218_REGINTENSITY, value);<br />}<br /><br /><br />/*<br /> * set test mode for a selected ic<br /> */<br />void max7219_test(uint8_t icnum, uint8_t value) {<br />if(value == 0 || value == 1)<br />max7219_send(icnum, MAX7218_REGTEST, value);<br />}<br /><br /><br />/*<br /> * set active output for a selected ic<br /> */<br />void max7219_scanlimit(uint8_t icnum, uint8_t value) {<br />if(value &lt; 8)<br />max7219_send(icnum, MAX7218_REGSCANLIMIT, value);<br />}<br /><br /><br />/*<br /> * set decode mode for a selected ic<br /> */<br />void max7219_decode(uint8_t icnum, uint8_t value) {<br />max7219_send(icnum, MAX7218_REGDECODE, value);<br />}<br /><br />/*<br /> * set output 0 for a selected ic<br /> */<br />void max7219_digit0(uint8_t icnum, uint8_t value) {<br />max7219_send(icnum, MAX7218_REGDIGIT0, value);<br />}<br /><br /><br />/*<br /> * set output 1 for a selected ic<br /> */<br />void max7219_digit1(uint8_t icnum, uint8_t value) {<br />max7219_send(icnum, MAX7218_REGDIGIT1, value);<br />}<br /><br /><br />/*<br /> * set output 2 for a selected ic<br /> */<br />void max7219_digit2(uint8_t icnum, uint8_t value) {<br />max7219_send(icnum, MAX7218_REGDIGIT2, value);<br />}<br /><br /><br />/*<br /> * set output 3 for a selected ic<br /> */<br />void max7219_digit3(uint8_t icnum, uint8_t value) {<br />max7219_send(icnum, MAX7218_REGDIGIT3, value);<br />}<br /><br />/*<br /> * set output 4 for a selected ic<br /> */<br />void max7219_digit4(uint8_t icnum, uint8_t value) {<br />max7219_send(icnum, MAX7218_REGDIGIT4, value);<br />}<br /><br /><br />/*<br /> * set ouput 0 for a selected ic<br /> */<br />void max7219_digit5(uint8_t icnum, uint8_t value) {<br />max7219_send(icnum, MAX7218_REGDIGIT5, value);<br />}<br /><br />/*<br /> * set output 6 for a selected ic<br /> */<br />void max7219_digit6(uint8_t icnum, uint8_t value) {<br />max7219_send(icnum, MAX7218_REGDIGIT6, value);<br />}<br /><br /><br />/*<br /> * set output 7 for a selected ic<br /> */<br />void max7219_digit7(uint8_t icnum, uint8_t value) {<br />max7219_send(icnum, MAX7218_REGDIGIT7, value);<br />}<br /><br /><br />/*<br /> * set output digit for a selected ic<br /> */<br />void max7219_digit(uint8_t icnum, uint8_t digit, uint8_t value) {<br />switch(digit) {<br />case 0:<br />max7219_digit0(icnum, value);<br />break;<br />case 1:<br />max7219_digit1(icnum, value);<br />break;<br />case 2:<br />max7219_digit2(icnum, value);<br />break;<br />case 3:<br />max7219_digit3(icnum, value);<br />break;<br />case 4:<br />max7219_digit4(icnum, value);<br />break;<br />case 5:<br />max7219_digit5(icnum, value);<br />break;<br />case 6:<br />max7219_digit6(icnum, value);<br />break;<br />case 7:<br />max7219_digit7(icnum, value);<br />break;<br />}<br />}<br /><br /><br />/*<br /> * init the shift register<br /> */<br />void max7219_init() {<br />//output<br />MAX7219_DINDDR |= (1 &lt;&lt; MAX7219_DININPUT);<br />MAX7219_CLKDDR |= (1 &lt;&lt; MAX7219_CLKINPUT);<br />MAX7219_LOADDDR |= (1 &lt;&lt; MAX7219_LOADINPUT);<br />//low<br />MAX7219_DINPORT &amp;= ~(1 &lt;&lt; MAX7219_DININPUT);<br />MAX7219_CLKPORT &amp;= ~(1 &lt;&lt; MAX7219_CLKINPUT);<br />MAX7219_LOADPORT &amp;= ~(1 &lt;&lt; MAX7219_LOADINPUT);<br />}[/syntax]<br /><br />[syntax=c]/*<br />max7219 lib 0x01<br /><br />copyright (c) Davide Gironi, 2013<br /><br />Released under GPLv3.<br />Please refer to LICENSE file for licensing information.<br />*/<br /><br /><br />#ifndef MAX7219_H_<br />#define MAX7219_H_<br /><br />#include &lt;avr/io.h&gt;<br /><br /><br />//setup ports<br />#define MAX7219_DINDDR DDRD<br />#define MAX7219_DINPORT PORTD<br />#define MAX7219_DININPUT PD2<br />#define MAX7219_CLKDDR DDRD<br />#define MAX7219_CLKPORT PORTD<br />#define MAX7219_CLKINPUT PD3<br />#define MAX7219_LOADDDR DDRD<br />#define MAX7219_LOADPORT PORTD<br />#define MAX7219_LOADINPUT PD4<br /><br />//setup number of chip attached to the board<br />#define MAX7219_ICNUMBER 2<br /><br />//define registers<br />#define MAX7218_REGNOOP 0x00<br />#define MAX7218_REGDIGIT0 0x01<br />#define MAX7218_REGDIGIT1 0x02<br />#define MAX7218_REGDIGIT2 0x03<br />#define MAX7218_REGDIGIT3 0x04<br />#define MAX7218_REGDIGIT4 0x05<br />#define MAX7218_REGDIGIT5 0x06<br />#define MAX7218_REGDIGIT6 0x07<br />#define MAX7218_REGDIGIT7 0x08<br />#define MAX7218_REGDECODE 0x09<br />#define MAX7218_REGINTENSITY 0x0A<br />#define MAX7218_REGSCANLIMIT 0x0B<br />#define MAX7218_REGSHUTDOWN 0x0C<br />#define MAX7218_REGTEST 0x0F<br /><br /><br />//functions<br />extern void max7219_send(uint8_t icnum, uint8_t reg, uint8_t data);<br />extern void max7219_shutdown(uint8_t icnum, uint8_t value);<br />extern void max7219_intensity(uint8_t icnum, uint8_t value);<br />extern void max7219_test(uint8_t icnum, uint8_t value);<br />extern void max7219_scanlimit(uint8_t icnum, uint8_t value);<br />extern void max7219_decode(uint8_t icnum, uint8_t value);<br />extern void max7219_digit0(uint8_t icnum, uint8_t value);<br />extern void max7219_digit1(uint8_t icnum, uint8_t value);<br />extern void max7219_digit2(uint8_t icnum, uint8_t value);<br />extern void max7219_digit3(uint8_t icnum, uint8_t value);<br />extern void max7219_digit4(uint8_t icnum, uint8_t value);<br />extern void max7219_digit5(uint8_t icnum, uint8_t value);<br />extern void max7219_digit6(uint8_t icnum, uint8_t value);<br />extern void max7219_digit7(uint8_t icnum, uint8_t value);<br />extern void max7219_digit(uint8_t icnum, uint8_t digit, uint8_t value);<br />extern void max7219_init();<br /><br />#endif[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1568">Marcinf8702</a> — 12 lip 2015, o 15:49</p><hr />
]]></content>
</entry>
</feed>