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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-04-19T13:49:01+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=11413&amp;mode</id>
<entry>
<author><name><![CDATA[mczarny]]></name></author>
<updated>2015-04-19T13:49:01+01:00</updated>
<published>2015-04-19T13:49:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=11413&amp;p=126901#p126901</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=11413&amp;p=126901#p126901"/>
<title type="html"><![CDATA[Re: Multipleksowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=11413&amp;p=126901#p126901"><![CDATA[
rozpisałem to sobie - powiem szczerze, że ja jestem za cienki jeszcze na takie myślenie<br />Spodziewałem się, że użyjesz wskaźników do adresów tablicy<br /><br />W sumie to chciałem to zrobić tak:<br /><br />[syntax=c]static uint8_t licznik=1;<br />        ROWPORT1234 =~licznik;<br />        ROWPORT5678 =~licznik;<br />         licznik&lt;&lt;=1;<br />      if(licznik&gt;64)<br />        {<br />             licznik = 1;<br />        }[/syntax]<br /><br />miałbym poprzestawiane wiersze, ale wtedy poprzestawiał bym wartości w fontach (nikt by za tym nie trafił <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /> )<br />tylko niestety zapalał mi się jednocześnie wiersz 2 i 5 a tego przeskoczyć już nie da rady<br /><br />Dobra biorę się za fonty i funkcję wysyłającą pojedynczy wiersz<br />pozdrawiam<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4651">mczarny</a> — 19 kwi 2015, o 13:49</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mczarny]]></name></author>
<updated>2015-04-19T08:21:15+01:00</updated>
<published>2015-04-19T08:21:15+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=11413&amp;p=126885#p126885</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=11413&amp;p=126885#p126885"/>
<title type="html"><![CDATA[Re: Multipleksowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=11413&amp;p=126885#p126885"><![CDATA[
<strong>mokrowski</strong><br />jesteś GOŚĆ<br /><br />zmieniłem tylko wartości znaków w tablicy bo zamiast zapalać pojedynczy wiersz to go gasiło<br />[syntax=c]const static uint8_t multiplex_tablica1234&#91;&#93; PROGMEM = {~ROW1,~ROW2,~ROW3,~ROW4,~0,~0,~0,~0 };[/syntax]<br /><br />pewnie znów zrobiłem to nie w tym miejscu co trzeba, ale wydawało mi się to logiczne i zadziałało<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4651">mczarny</a> — 19 kwi 2015, o 08:21</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mczarny]]></name></author>
<updated>2015-04-18T13:20:39+01:00</updated>
<published>2015-04-18T13:20:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=11413&amp;p=126837#p126837</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=11413&amp;p=126837#p126837"/>
<title type="html"><![CDATA[Re: Multipleksowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=11413&amp;p=126837#p126837"><![CDATA[
<strong>mokrowski</strong><br />dzięki za zainteresowanie (jako jedyny zresztą <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /> )<br />podpowiesz coś więcej z tymi tablicami?<br />pozdrawiam<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4651">mczarny</a> — 18 kwi 2015, o 13:20</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mczarny]]></name></author>
<updated>2015-04-17T22:31:51+01:00</updated>
<published>2015-04-17T22:31:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=11413&amp;p=126808#p126808</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=11413&amp;p=126808#p126808"/>
<title type="html"><![CDATA[Multipleksowanie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=11413&amp;p=126808#p126808"><![CDATA[
witam Koleżanki i Kolegów<br /><br />popełniłem taki kod i <strong>proszę o ocenę</strong><br />na razie jest to wstępny etap zabawy z matrycami LED 8x8 i w tej chwili multipleksuję tylko wiersze bez wysyłania danych do rejestrów, które będą sterować kolumnami<br /><br />z pewnych względów nie mogłam użyć jednego portu np. od PC0 do PC7 więc nie wykorzystałem kodu przerwania z BB do multipleksowania wyświetlaczy<br /><br />[syntax=c]#ifndef MATRYCA_1_H_<br />#define MATRYCA_1_H_<br /><br />#define ROWPORT1234 PORTC<br />#define ROWPORT5678 PORTD<br />#define ROW1234 DDRC<br />#define ROW5678 DDRD<br /><br /><br /><br /><br /><br /><br /><br />#define ROW1 (1&lt;&lt;PC1)<br />#define ROW2 (1&lt;&lt;PC3)<br />#define ROW3 (1&lt;&lt;PC0)<br />#define ROW4 (1&lt;&lt;PC2)<br />#define ROW5 (1&lt;&lt;PD3)<br />#define ROW6 (1&lt;&lt;PD6)<br />#define ROW7 (1&lt;&lt;PD4)<br />#define ROW8 (1&lt;&lt;PD5)<br /><br />#define DATAPORT PORTB<br />#define DATA  DDRB<br />#define DANE  (1&lt;&lt;PB5)<br />#define CLK   (1&lt;&lt;PB7)<br />#define LATCH (1&lt;&lt;PB4)<br /><br /><br /><br /><br /><br /><br />void PORT_INIT(void);<br />void TIMER_INIT(void);<br />void SPI_INIT(void);<br /><br /><br />#endif /* MATRYCA_1_H_ */[/syntax]<br /><br /><br /><br />[syntax=c]/*<br /> * MATRYCA_1.c<br /> *<br /> *  Created on: 12-04-2015<br /> *      Author: Marek<br /> */<br />#include &lt;avr/io.h&gt;<br />#include &quot;MATRYCA_1.h&quot;<br /><br />void PORT_INIT(void)<br />{<br />ROW1234 |=ROW1|ROW2|ROW3|ROW4;<br />ROW5678 |=ROW5|ROW6|ROW7|ROW8;<br />ROWPORT1234 |=ROW1|ROW2|ROW3|ROW4;<br />ROWPORT5678 |=ROW5|ROW6|ROW7|ROW8;<br /><br />}<br /><br />void TIMER_INIT(void)<br />{<br />TCCR0 |= (1&lt;&lt;WGM01);<br />TCCR0 |= (1&lt;&lt;CS02);<br />OCR0 = 156;<br />TIMSK |= (1&lt;&lt; OCIE0);<br /><br />}<br /><br />void SPI_INIT(void)<br />{<br />DATA |=DANE|CLK|LATCH;<br />}[/syntax]<br /><br /><br />[syntax=c]/*<br /> * main.c<br /> *<br /> *  Created on: 12-04-2015<br /> *      Author: Marek<br /> */<br /><br /><br />#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &quot;MATRYCA_1.h&quot;<br /><br /><br /><br />int main (void)<br />{<br /><br />sei();<br /><br />PORT_INIT();<br />TIMER_INIT();<br /><br />while(1)<br />{<br /><br />}<br /><br />}<br /><br /><br /><br />ISR (TIMER0_COMP_vect)<br />{<br />static uint8_t licznik=1;<br /><br />switch(licznik)<br />{<br />case 1:<br />    ROWPORT5678 |=ROW8;<br />    ROWPORT1234 &amp;=~ROW1;<br />    licznik++;<br />    break;<br /><br />case 2:<br />ROWPORT1234 |=ROW1;<br />ROWPORT1234 &amp;=~ROW2;<br />licznik++;<br />break;<br /><br />case 3:<br />ROWPORT1234 |=ROW2;<br />ROWPORT1234 &amp;=~ROW3;<br />licznik++;<br />break;<br /><br />case 4:<br />ROWPORT1234 |=ROW3;<br />ROWPORT1234 &amp;=~ROW4;<br />licznik++;<br />break;<br /><br />case 5:<br />        ROWPORT1234 |=ROW4;<br />        ROWPORT5678 &amp;=~ROW5;<br />        licznik++;<br />        break;<br /><br />case 6:<br />ROWPORT5678 |=ROW5;<br />ROWPORT5678 &amp;=~ROW6;<br />licznik++;<br />break;<br /><br />case 7:<br />ROWPORT5678 |=ROW6;<br />ROWPORT5678 &amp;=~ROW7;<br />licznik++;<br />break;<br /><br />case 8:<br />ROWPORT5678 |=ROW7;<br />ROWPORT5678 &amp;=~ROW8;<br />licznik++;<br />break;<br /><br />case 9:<br />licznik=1;<br />break;<br /><br />}<br /><br /><br /><br />}[/syntax]<br /><br /><br />możecie się poznęcać, ale jeżeli znacie inny prostszy sposób to proszę o podpowiedź<br />myślałem np. o tablicy i ustawieniu bitów.....<br /><br />pozdrawiam Marek<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4651">mczarny</a> — 17 kwi 2015, o 22:31</p><hr />
]]></content>
</entry>
</feed>