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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2012-12-16T17:31:08+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=12&amp;t=1935&amp;mode</id>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2012-12-16T17:31:08+01:00</updated>
<published>2012-12-16T17:31:08+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1935&amp;p=21318#p21318</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1935&amp;p=21318#p21318"/>
<title type="html"><![CDATA[Re: ATmega8 i matryca LED 5x5]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1935&amp;p=21318#p21318"><![CDATA[
poszukaj na moim droopie znajdziesz program do robienia fontów na matryce <br /><!-- l --><a class="postlink-local" href="http://forum.atnel.pl/topic92.html#p887" >topic92.html#p887</a><!-- l --><br /><br />a tu sobie go pobierzesz <!-- m --><a class="postlink" href="https://www.dropbox.com/sh/1johtpksshwdlzj/NItMpuQSW3" >https://www.dropbox.com/sh/1johtpksshwdlzj/NItMpuQSW3</a><!-- m --><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 16 gru 2012, o 17:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Ficu]]></name></author>
<updated>2012-12-16T16:44:28+01:00</updated>
<published>2012-12-16T16:44:28+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1935&amp;p=21314#p21314</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1935&amp;p=21314#p21314"/>
<title type="html"><![CDATA[Re: ATmega8 i matryca LED 5x5]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1935&amp;p=21314#p21314"><![CDATA[
Domyślałem się że coś z tym powinienem zrobić ale źle kombinowałem, dzięki.<br /><br />Jeszcze tylko muszę jakoś fonta przerobić na 5x5 (teraz jest wrzucony 7x5).<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=729">Ficu</a> — 16 gru 2012, o 16:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2012-12-16T10:35:24+01:00</updated>
<published>2012-12-16T10:35:24+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1935&amp;p=21279#p21279</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1935&amp;p=21279#p21279"/>
<title type="html"><![CDATA[Re: ATmega8 i matryca LED 5x5]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1935&amp;p=21279#p21279"><![CDATA[
To jest źle:<br />[syntax=basic4gl]Portb = Portb And &amp;B01111111 'Pb.7 = 0, pozostałe bez zmian<br />Kol_zn = Kol_zn And &amp;B10000000 'Kol_zn.7 bez zmian a pozostałe wyzerowane !!!!<br /> <br />Portb = Portb Or Kol_zn 'w wyniku tego i powyższych działań ustawi tylko Pb.7[/syntax]<br />Raczej tak:<br />[syntax=basic4gl]Portb = Portb And &amp;B11100000 'wyzeruj Pb.4...Pb.0<br />Kol_zn = Kol_zn And &amp;B00011111 'wyzeruj Kol_zn.7-Kol_zn.5 - bo nie używane, tylko Kol_zn.5...Kol_zn.0 zostaną użyte<br />Portb = Portb Or Kol_zn 'w wyniku tego i powyższych działań ustawi Pb.4...Pb.0[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 16 gru 2012, o 10:35</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Ficu]]></name></author>
<updated>2012-12-15T23:57:43+01:00</updated>
<published>2012-12-15T23:57:43+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1935&amp;p=21272#p21272</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1935&amp;p=21272#p21272"/>
<title type="html"><![CDATA[ATmega8 i matryca LED 5x5]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1935&amp;p=21272#p21272"><![CDATA[
Witam,<br />pojawił się u mnie problem (pewnie banalny) z obsługą matrycy led. Posiadam podręcznikowy przykład M. Wiązani i próbuje go przerobić tak aby działał z moim schematem:<br />[syntax=basic4gl]'wiersze<br />Config Pinb.4 = Output<br />Config Pinb.3 = Output<br />Config Pinb.2 = Output<br />Config Pinb.1 = Output<br />Config Pinb.0 = Output<br /><br /><br />'kolumny<br />Config Pind.7 = Output<br />Config Pind.6 = Output<br />Config Pind.5 = Output<br />Config Pind.4 = Output<br />Config Pind.3 = Output[/syntax]<br /><br />Domyślnie było: wiersze pd.0-pd.6, kolumny pb.0-pb.4<br /><br />Program:<br />[syntax=basic4gl]$regfile &quot;m8def.dat&quot;<br />$crystal = 8000000<br /><br />'wiersze<br />Config Pinb.0 = Output<br />Config Pinb.1 = Output<br />Config Pinb.2 = Output<br />Config Pinb.3 = Output<br />Config Pinb.4 = Output<br /><br />'kolumny<br />Config Pind.3 = Output<br />Config Pind.4 = Output<br />Config Pind.5 = Output<br />Config Pind.6 = Output<br />Config Pind.7 = Output<br /><br />Config Timer0 = Timer , Prescale = 256<br /><br />Declare Sub Pob_w_zn<br /><br />On Timer0 Mult_wysw_matr<br /><br />Dim Znak As String * 1<br />Dim Nr_kol As Byte<br />Dim Kod_zn As Byte<br />Dim Kol_zn As Byte<br />Dim I As Byte<br /><br />C1 Alias Portd.7<br />C2 Alias Portd.6<br />C3 Alias Portd.5<br />C4 Alias Portd.4<br />C5 Alias Portd.3<br /><br />Enable Interrupts<br />Enable Timer0<br />Load Timer0 , 94<br /><br />Do<br />Znak = &quot;A&quot;<br />Wait 1<br /><br />Znak = &quot;B&quot;<br />Wait 1<br /><br />Znak = &quot;C&quot;<br />Wait 1<br /><br />Znak = &quot;D&quot;<br />Wait 1<br /><br />Znak = &quot;0&quot;<br />Wait 1<br /><br />Znak = &quot; &quot;<br />Wait 1<br /><br />For I = 32 To 127<br />Znak = Chr(i)<br />Waitms 500<br />Next I<br /><br /><br />Loop<br />                                                      'koniec pętli nieskończonej<br />End                                                         'koniec programu<br /><br /><br />Sub Pob_w_zn<br />     Kod_zn = Asc(znak)<br /><br />      Select Case Nr_kol                                    'w zależności od wartości<br /><br /> Case 0:                                                    'jeśli I ma wartość 1, to<br />  Kol_zn = Lookup(kod_zn , Kol1)                            'wpisanie do tablicy Kol(5) kodu<br />       'znaku dla kolumny 1<br /> Case 1:                                                    'jeśli I ma wartość 2, to<br />  Kol_zn = Lookup(kod_zn , Kol2)                            'wpisanie do tablicy Kol(5) kodu<br />       'znaku dla kolumny 2<br /> Case 2:                                                    'jeśli I ma wartość 3, to<br />  Kol_zn = Lookup(kod_zn , Kol3)                            'wpisanie do tablicy Kol(5) kodu<br />       'znaku dla kolumny 3<br /> Case 3:                                                    'jeśli I ma wartość 4, to<br />  Kol_zn = Lookup(kod_zn , Kol4)                            'wpisanie do tablicy Kol(5) kodu<br />       'znaku dla kolumny 4<br /> Case 4:                                                    'jeśli I ma wartość 5, to<br />  Kol_zn = Lookup(kod_zn , Kol5)                            'wpisanie do tablicy Kol(5) kodu<br />       'znaku dla kolumny 5<br /> End Select                                                 'koniec instrukcji wyboru<br /><br /> Portb = Portb And &amp;B01111111<br /> Kol_zn = Kol_zn And &amp;B10000000<br /><br /> Portb = Portb Or Kol_zn<br /><br /> End Sub                                                     'koniec procedury<br /><br />                                                  'koniec procedury<br /><br />Mult_wysw_matr:                                             'podprogramu obsługi przerwania<br />       'od przepełnienia Timer0<br /> Load Timer0 , 94                                           'wpisanie do licznika wartości<br />       'początkowej<br /> Set C1                                                     'wygaszenie kolumny 1<br /> Set C2                                                     'wygaszenie kolumny 2<br /> Set C3                                                     'wygaszenie kolumny 3<br /> Set C4                                                     'wygaszenie kolumny 4<br /> Set C5                                                     'wygaszenie kolumny 5<br /> Call Pob_w_zn                                              'wywołanie procedury<br />       'pobierającej i wysyłającej kod<br />       'wyświetlanej kolumny z tablic<br /> Select Case Nr_kol                                         'w zależności od wartości Nr_kol<br />       'wykonaj:<br /> Case 0:                                                    'gdy Nr_kol = 0, to<br />  Reset C1                                                  'włączenie kolumny 1<br /> Case 1:                                                    'gdy Nr_kol = 1, to<br />  Reset C2                                                  'włączenie kolumny 2<br /> Case 2:                                                    'gdy Nr_kol = 2, to<br />  Reset C3                                                  'włączenie kolumny 3<br /> Case 3:                                                    'gdy Nr_kol = 3, to<br />  Reset C4                                                  'włączenie kolumny 4<br /> Case 4:                                                    'gdy Nr_kol = 4, to<br />  Reset C5                                                  'włączenie kolumny 5<br /><br /> End Select                                                 'koniec instrukcji wyboru<br /><br /> Incr Nr_kol                                                'zwiększenie o jeden wartości<br />       'Nr_kol<br /> If Nr_kol = 5 Then                                         'jeśli wartość Nr_kol osiągnie<br />       '5, to<br />  Nr_kol = 0                                                'zerowanie wartości Nr_kol<br /> End If<br />Return<br /><br /><br />Kol1:                                                       'tablica kodów Kol1 dla<br />       'pierwszej kolumny wyświetlacza<br />       '- kolejność kodów odpowiada<br />       'numerom ASCII<br />Data 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 ,<br />Data 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 ,<br />Data 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 ,<br />Data 127 , 127 , 127 , 127 , 127 , 107 , 109 , 29 , 73 , 127 ,<br />Data 127 , 127 , 107 , 119 , 127 , 119 , 127 , 125 , 65 , 127 ,<br />Data 94 , 61 , 115 , 13 , 97 , 127 , 73 , 79 , 127 , 127 , 119 ,<br />Data 107 , 127 , 95 , 89 , 64 , 0 , 65 , 0 , 0 , 0 , 65 , 0 ,<br />Data 127 , 125 , 0 , 0 , 0 , 0 , 65 , 0 , 65 , 0 , 78 , 63 , 1 ,<br />Data 3 , 1 , 28 , 15 , 60 , 127 , 43 , 127 , 111 , 126 , 127 ,<br />Data 125 , 0 , 113 , 113 , 113 , 119 , 103 , 0 , 127 , 125 , 0 ,<br />Data 127 , 96 , 96 , 113 , 96 , 119 , 96 , 118 , 111 , 97 , 99 ,<br />Data 97 , 110 , 103 , 110 , 127 , 127 , 127 , 119 , 119<br /><br />Kol2:                                                       'tablica kodów Kol2 dla drugiej<br />       'kolumny wyświetlacza<br />       '- kolejność kodów odpowiada<br />       'numerom ASCII<br />Data 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 ,<br />Data 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 ,<br />Data 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 ,<br />Data 127 , 127 , 127 , 127 , 15 , 0 , 85 , 27 , 54 , 47 , 99 ,<br />Data 62 , 119 , 119 , 122 , 119 , 124 , 123 , 58 , 94 , 60 , 62 ,<br />Data 107 , 46 , 86 , 56 , 54 , 54 , 73 , 74 , 107 , 107 , 62 ,<br />Data 63 , 54 , 59 , 54 , 62 , 62 , 54 , 55 , 62 , 119 , 62 , 126 ,<br />Data 119 , 126 , 95 , 111 , 62 , 55 , 62 , 55 , 54 , 63 , 126 ,<br />Data 125 , 126 , 107 , 119 , 58 , 0 , 75 , 62 , 95 , 126 , 63 ,<br />Data 106 , 118 , 110 , 110 , 106 , 64 , 90 , 119 , 110 , 126 ,<br />Data 123 , 62 , 111 , 119 , 110 , 107 , 107 , 119 , 106 , 1 ,<br />Data 126 , 125 , 126 , 117 , 122 , 108 , 119 , 127 , 62 , 119 , 99<br /><br />Kol3:                                                       'tablica kodów Kol3 dla trzeciej<br />       'kolumny wyświetlacza<br />       '- kolejność kodów odpowiada<br />       'numerom ASCII<br />Data 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 ,<br />Data 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 ,<br />Data 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 ,<br />Data 127 , 127 , 127 , 6 , 127 , 107 , 0 , 119 , 42 , 31 , 93 ,<br />Data 93 , 65 , 65 , 121 , 119 , 124 , 119 , 54 , 0 , 58 , 46 , 91 ,<br />Data 46 , 54 , 55 , 54 , 54 , 73 , 73 , 93 , 107 , 93 , 58 , 48 ,<br />Data 59 , 54 , 62 , 62 , 54 , 55 , 54 , 119 , 0 , 62 , 107 , 126 ,<br />Data 103 , 119 , 62 , 55 , 58 , 51 , 54 , 0 , 126 , 126 , 113 ,<br />Data 119 , 120 , 54 , 62 , 96 , 62 , 63 , 126 , 95 , 106 , 110 ,<br />Data 110 , 110 , 106 , 55 , 90 , 111 , 32 , 110 , 117 , 0 , 115 ,<br />Data 111 , 110 , 107 , 107 , 111 , 106 , 110 , 126 , 126 , 121 ,<br />Data 123 , 122 , 106 , 73 , 0 , 73 , 85 , 85<br /><br />Kol4:                                                       'tablica kodów Kol4 dla czwartej<br />       'kolumny wyświetlacza<br />       '- kolejność kodów odpowiada<br />       'numerom ASCII<br />Data 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 ,<br />Data 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 ,<br />Data 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 ,<br />Data 127 , 127 , 127 , 127 , 15 , 0 , 85 , 108 , 93 , 127 , 62 ,<br />Data 99 , 119 , 119 , 127 , 119 , 127 , 111 , 46 , 126 , 54 , 22 ,<br />Data 0 , 46 , 54 , 47 , 54 , 53 , 127 , 127 , 62 , 107 , 107 , 55 ,<br />Data 62 , 59 , 54 , 62 , 93 , 54 , 55 , 54 , 119 , 62 , 1 , 93 ,<br />Data 126 , 95 , 123 , 62 , 55 , 61 , 53 , 54 , 63 , 126 , 125 , 126 ,<br />Data 107 , 119 , 46 , 62 , 75 , 0 , 95 , 126 , 111 , 106 , 110 ,<br />Data 110 , 118 , 106 , 63 , 90 , 111 , 126 , 33 , 110 , 126 , 111 ,<br />Data 111 , 110 , 107 , 115 , 111 , 106 , 126 , 125 , 125 , 126 ,<br />Data 117 , 122 , 102 , 62 , 127 , 119 , 99 , 119<br /><br />Kol5:                                                       'tablica kodów Kol5 dla piątej<br />       'kolumny wyświetlacza<br />       '- kolejność kodów odpowiada<br />       'numerom ASCII<br />Data 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 ,<br />Data 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 ,<br />Data 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 , 127 ,<br />Data 127 , 127 , 127 , 127 , 127 , 107 , 91 , 92 , 122 , 127 , 127 ,<br />Data 127 , 107 , 119 , 127 , 119 , 127 , 95 , 65 , 127 , 78 , 57 ,<br />Data 123 , 49 , 121 , 31 , 73 , 67 , 127 , 127 , 127 , 107 , 119 ,<br />Data 79 , 65 , 64 , 73 , 93 , 99 , 62 , 63 , 80 , 0 , 127 , 63 , 62 ,<br />Data 126 , 0 , 0 , 65 , 79 , 66 , 78 , 57 , 63 , 1 , 3 , 1 , 28 , 15 ,<br />Data 30 , 127 , 43 , 127 , 111 , 126 , 127 , 112 , 113 , 125 , 0 ,<br />Data 115 , 95 , 65 , 112 , 127 , 127 , 127 , 127 , 112 , 112 , 113 ,<br />Data 119 , 96 , 119 , 125 , 125 , 96 , 99 , 97 , 110 , 97 , 110 ,<br />Data 127 , 127 , 127 , 119 , 119                                                      'powrót z podprogramu przerwania[/syntax]<br /><br />Według mnie powinienem zmienić definicje aliasów C1-C5 na swoje (i tak zrobiłem)<br />oraz zmienić:<br /><br />[syntax=basic4gl] 'domyślne<br />Portd = Portd And &amp;B01111111<br /> Kol_zn = Kol_zn And &amp;B10000000<br /><br /> Portd = Portd Or Kol_zn[/syntax]<br /><br />na:<br /><br />[syntax=basic4gl] Portb = Portb And &amp;B01111111<br /> Kol_zn = Kol_zn And &amp;B10000000<br /><br /> Portb = Portb Or Kol_zn[/syntax]<br />I powinna matryca jakoś chyba migać? No ale tylko świeci. Podejrzewam, że jeszcze trzeba by było odpowiednio przesunąć portb w prawo (żeby zaczynało się od pd.3 a nie pd.0).<br /><br />Matryca ogólnie działa jak zapalam i gaszę wiersze i kolumny, ale w tym programie działać nie chce.<br />Może po prostu źle rozumiem działanie programu?<br /><br />Pozdrawiam<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=729">Ficu</a> — 15 gru 2012, o 23:57</p><hr />
]]></content>
</entry>
</feed>