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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2012-10-26T22:28:02+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=31&amp;t=1698&amp;mode</id>
<entry>
<author><name><![CDATA[foreste]]></name></author>
<updated>2012-10-26T22:28:02+01:00</updated>
<published>2012-10-26T22:28:02+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17722#p17722</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17722#p17722"/>
<title type="html"><![CDATA[Re: Zadanie z bascoma]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17722#p17722"><![CDATA[
Foto  LCD <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=525">foreste</a> — 26 paź 2012, o 22:28</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kierlan]]></name></author>
<updated>2012-10-25T22:42:39+01:00</updated>
<published>2012-10-25T22:42:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17668#p17668</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17668#p17668"/>
<title type="html"><![CDATA[Re: Zadanie z bascoma]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17668#p17668"><![CDATA[
trzymaj jakieś stare kody może Ci pomogą... ja na szczęście uciekłem od tego języka :&gt;<br /><br />TERMOSTAT:<br /><br />[syntax=basic4gl]<br /><br /><br />'*********TERMOSTAT 2011*********<br />'*********BY el-Kierlan**********<br />'*******SALAMANDRA PLAMISTA******<br /><br />$regfile = &quot;m168def.dat&quot;<br />$crystal = 16000000<br /><br /><br /><br /><br />Config 1wire = Portd.1                                      ' konfiguracja portu dla DS1820<br /><br />Config Portd.0 = Output<br /><br />Declare Sub Odcz_temp                                       'deklaracja podprogramu odczytu temperatury<br /><br /><br /><br />Dim Temperatura(2) As Byte<br />Dim Temp As Byte<br />Dim A1 As Byte<br />Dim A2 As Byte<br />Dim H As Byte<br />Dim T1 As Byte<br />$baud = 9600<br /><br />T1 = 35<br /><br />Do<br />Print &quot;*********TERMOSTAT 2011*********&quot;<br />Print &quot;*********BY el-Kierlan**********&quot;<br />Print &quot;*******SALAMANDRA PLAMISTA******&quot;<br />Waitms 500<br />Temp = Temperatura(1)<br />                                                'Histereza<br />H = 2<br />H = H / 2<br />A1 = T1 - H<br />A2 = T1 + H<br /><br />If Temp &lt;= A1 Then<br /><br />Print &quot; Grzanie &quot;<br />Portd.0 = 1<br />End If<br /><br />If Temp &gt;= A2 Then<br /><br />Print &quot; Temperatura osiagnieta&quot;<br />Portd.0 = 0<br />End If<br /><br />Loop<br /><br /><br />Sub Odcz_temp                                               'odczyt temperatury<br /><br />1wreset                                                     'incicjacja magistrali 1wire<br />If Err = 1 Then                                             'jeżeli błąd<br /><br />Print &quot;Brak czujnika DS18B20&quot;                               'to wyświetl<br />End If<br /><br />1wreset                                                     'inicjacja magistrali 1wire<br />1wwrite &amp;HCC<br />1wwrite &amp;H44<br /><br />Waitms 750                                                  'czas konwersji<br /><br />1wreset<br />1wwrite &amp;HCC<br />1wwrite &amp;HBE<br /><br />Temperatura(1) = 1wread(2)<br /><br />If Temperatura(2) &gt; 0 Then<br /><br />Temperatura(1) = 256 - Temperatura(1)<br /><br />End If<br /><br />Temperatura(1) = Temperatura(1) / 2<br /><br />End Sub<br />[/syntax]<br /><br />ZEGAREK:<br /><br />[syntax=basic4gl]<br /><br />$regfile = &quot;m8def.dat&quot;                                      'informuje kompilator o pliku<br />      'dyrektyw mikrokontrolera<br />$crystal = 8000000                                          'informuje kompilator<br />      'o czestotliwo?ci oscylatora<br />      'taktuj1cego mikrokontroler<br />Config Pinb.3 = Input                                       'linia PB1 jako wej?ciowa<br />Config Pinb.4 = Input<br />Config Pinb.5 = Input<br />Config Portd.0 = Output                                     'linia PB2 jako wej?ciowa<br />Config Lcd = 16 * 2                                         'konfiguracja typu wy?wietlacza<br />      'LCD<br />Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.4 , Rs = Portc.5       'konfiguracja linii<br />      'mikrokontrolera, do których<br />      'do31czono wy?wietlacz<br />      'LCD<br />Config Timer1 = Timer , Prescale = 256<br />      'konfiguracja Timer1 jako timer<br />      'z podzia3em preskalera przez<br />      '256<br /><br />Declare Sub Wysw_czas                                       'procedura wy?wietlaj1ca czas na<br />      'LCD w formacie gg:mm:ss<br />On Timer1 Odmierz_1s                                        'przerwanie od przepe3nienia<br />      'Timer1 o etykiecie Odmierz_1s<br /><br />Dim Sekundy As Byte                                         'zmienna zliczaj1ca sekundy<br />Dim Minuty As Byte                                          'zmienna zliczaj1ca minuty<br />Dim Godziny As Byte                                         'zmienna zliczaj1ca godziny<br />Dim Nowa_w As Bit                                           'flaga zezwolenia aktualizacji<br />      'czasu na LCD<br />Dim Wart_bcd As Byte                                        'zmienna pomocnicza, w której<br />      'jest zapisywana warto?a BCD<br />      'czasu<br /><br />S1 Alias Pinb.3                                             'przypisanie nazwie Pinb.2<br />      'nazwy S1<br />S2 Alias Pinb.4<br />S3 Alias Pinb.5                                             'przypisanie nazwie Pinb.1<br />      'nazwy S2<br /><br />Enable Interrupts                                           'odblokowanie globalnego systemu<br />      'przerwan<br />Enable Timer1                                               'odblokowanie przerwania od<br />      'przepe3nienia Timer1<br />Counter1 = 34286                                            'warto?a pocz1tkowa wpisywana do<br />      'Timer1 (65536 - 31250 = 34286)<br /><br />Set Nowa_w                                                  'zezwolenie na wy?wietlenie<br />      'aktualnego czasu<br />Set Portb.3                                                 'do31czenie do linii PB1<br />      'rezystora podci1gaj1cego<br />Set Portb.4                                                 'do31czenie do linii PB2<br />Set Portb.5                                                 'rezystora podci1gaj1cego<br />Do<br /><br />Cursor Off                                                  'petla g3ówna programu<br /> Call Wysw_czas                                             'wywo3anie procedury<br />      'wy?wietlaj1cej aktualny czas<br /> If S3 = 0 Then<br /> Waitms 25<br /> Toggle Portd.0<br /> Wait 2<br /> Toggle Portd.0<br /> End If<br /> If S1 = 0 Then                                             'je?li przyci?niety S1, to<br />  Waitms 25                                                 'opó?nienie dla eliminacji drgan<br />      'styków<br />  If S1 = 0 Then                                            'sprawdzenie, czy przycisk S1<br />     'dalej naci?niety, je?li tak, to<br />   Incr Minuty                                              'zwiekszenie warto?ci minut<br />   Sekundy = 0                                              'wyzerowanie zmiennej Sekundy<br />   If Minuty = 60 Then                                      'je?li warto?a Minuty = 60, to<br />    Minuty = 0                                              'zerowanie warto?ci Minuty<br />   End If<br />   Set Nowa_w                                               'zezwolenie na wy?wietlenie<br />      'czasu<br />   Call Wysw_czas                                           'wywo3anie procedury<br />      'wy?wietlenia aktualnego czasu<br />   Waitms 200                                               'opó?nienie 200 ms<br />  End If                                                    'koniec instrukcji warunkowej<br /> End If<br /> If S2 = 0 Then                                             'je?li przyci?niety S2, to<br />  Waitms 25                                                 'opó?nienie dla eliminacji drgan<br />      'styków<br />  If S2 = 0 Then                                            'sprawdzenie czy przycisk S2<br />      'dalej naci?niety, je?li tak, to<br />   Incr Godziny                                             'zwiekszenie warto?ci Godziny<br />   If Godziny = 24 Then                                     'je?li warto?a Godziny = 24, to<br />    Godziny = 0                                             'wyzerowanie warto?ci Godziny<br />   End If<br />   Set Nowa_w                                               'zezwolenie na wy?wietlenie<br />      'czasu<br />   Call Wysw_czas                                           'wywo3anie procedury<br />      'wy?wietlenia aktualnego czasu<br />   Waitms 200                                               'opó?nienie 200 ms<br />  End If                                                    'koniec instrukcji warunkowej<br /> End If<br />Loop<br />End                                                         'koniec programu<br /><br /><br />Sub Wysw_czas                                               'procedura wy?wietlaj1ca czas<br /> If Nowa_w = 1 Then                                         'je?li flaga Nowa_w = 1, to<br />  Cls                                                       'czyszczenie LCD<br />  Wart_bcd = Makebcd(godziny)                               'zamiana warto?ci Godziny na<br />      'warto?a w kodzie BCD<br />  Lcd Bcd(wart_bcd) ; &quot;:&quot;                                   'wy?wietlenie warto?ci godzin<br />      'w kodzie BCD zamienionych na<br />      'tekst oraz znaku :<br />  Wart_bcd = Makebcd(minuty)                                'zamiana warto?ci Minuty na<br />      'warto?a BCD<br />  Lcd Bcd(wart_bcd) ; &quot;:&quot;                                   'wy?wietlenie warto?ci minut<br />      'w kodzie BCD zamienionych na<br />      'tekst oraz znaku :<br />  Wart_bcd = Makebcd(sekundy)                               'zamiana warto?ci Sekundy na<br />      'warto?a w kodzie BCD<br />  Lcd Bcd(wart_bcd) ;                                       'wy?wietlenie warto?ci sekund<br />      'w kodzie BCD zamienionych na<br />      'tekst<br />  Reset Nowa_w                                              'zerowanie flagi Nowa_w<br /> End If<br />End Sub                                                     'koniec procedury<br /><br />Odmierz_1s:                                                 'podprogramu obs3ugi przerwania<br />      'przepe3nienia od Timer1<br /> Counter1 = Counter1 + 34286                                'wpisanie warto?ci pocz1tkowej<br />      'licznika<br /> Incr Sekundy                                               'zwiekszenie o 1 warto?ci<br />      'Sekundy<br /> Set Nowa_w                                                 'zezwolenie na wy?wietlenie<br />      'czasu<br /> If Sekundy = 60 Then                                       'je?li Sekundy = 60, to<br />  Sekundy = 0                                               'wyzerowanie warto?ci Sekundy<br />  Incr Minuty                                               'zwiekszenie o 1 warto?ci Minuty<br />  If Minuty = 60 Then                                       'je?li Minuty = 60, to<br />   Minuty = 0                                               'zerowanie warto?ci Minuty<br />   Incr Godziny                                             'zwiekszenie o 1 warto?ci<br />      'Godziny<br />   If Godziny = 24 Then                                     'je?li Godziny = 24, to<br />    Godziny = 0                                             'zerowanie warto?ci Godziny<br />   End If                                                   'koniec warunków<br />  End If<br /> End If<br />Return                    <br />[/syntax]<br /><br />Mojego autorstwa jakiś sterownik (uwaga to były początki) xD<br /><br />[syntax=basic4gl]<br />$regfile = &quot;m8def.dat&quot;<br />$crystal = 8000000<br /><br />Config Lcd = 16 * 2<br /><br /><br />Config Lcd = 16 * 2<br />Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.4 , Rs = Portc.5<br /><br />Config Portd = Input<br />        Portd = &amp;B11111111<br />Config Portb = Output<br />       Portb = &amp;B11111111<br />Set Portd.1<br />Set Portd.2<br />Set Portd.3<br />Set Portd.4<br />S1 Alias Pind.1<br />S2 Alias Pind.2<br />S3 Alias Pind.3<br />S4 Alias Pind.4<br /><br />Opto1 Alias Pinb.1<br />Opto2 Alias Pinb.2                                          ' termometr ds18b20<br /><br />Config 1wire = Portd.0                                      ' termometr ds18b20<br /><br />Dim Msb As Byte<br />Dim Lsb As Byte<br />Dim Calk As Byte<br />Dim Ulam As Byte<br /><br />    Config Timer1 = Timer , Prescale = 256<br />      'konfiguracja Timer1 jako timer<br />      'z podzia3em preskalera przez<br />      '256<br /><br />Declare Sub Wysw_czas                                       'procedura wy?wietlaj1ca czas na<br />      'LCD w formacie gg:mm:ss<br />On Timer1 Odmierz_1s                                        'przerwanie od przepe3nienia<br />      'Timer1 o etykiecie Odmierz_1s<br /><br />Dim Sekundy As Byte                                         'zmienna zliczaj1ca sekundy<br />Dim Minuty As Byte                                          'zmienna zliczaj1ca minuty<br />Dim Godziny As Byte                                         'zmienna zliczaj1ca godziny<br />Dim Nowa_w As Bit                                           'flaga zezwolenia aktualizacji<br />      'czasu na LCD<br />Dim Wart_bcd As Byte                                        'zmienna pomocnicza, w której<br />      'jest zapisywana warto?a BCD<br />      'czasu<br /><br /><br /><br />Enable Interrupts                                           'odblokowanie globalnego systemu<br />      'przerwan<br />Enable Timer1                                               'odblokowanie przerwania od<br />      'przepe3nienia Timer1<br />Counter1 = 34286                                            'warto?a pocz1tkowa wpisywana do<br />      'Timer1 (65536 - 31250 = 34286)<br /><br />Set Nowa_w                                                  'zezwolenie na wy?wietlenie<br />      'aktualnego czasu                                                 'rezystora podci1gaj1cego<br /><br /><br />Deflcdchar 1 , 32 , 32 , 4 , 14 , 31 , 31 , 32 , 32<br />Deflcdchar 2 , 32 , 32 , 31 , 31 , 14 , 4 , 32 , 32<br />Deflcdchar 0 , 6 , 9 , 6 , 32 , 32 , 32 , 32 , 32<br /><br />Cursor Off<br />Cls<br />Locate 1 , 3<br />Lcd &quot;KONFIGORACJA&quot;<br />Locate 2 , 6<br />Lcd &quot;ZEGARKA&quot;<br />Wait 1<br />Cls<br /><br />'--------------------------------------------------------------------------------------<br />Do<br />If S1 = 0 Then<br />Waitms 100<br />If S1 = 0 Then<br />Goto Menu<br />End If<br />End If<br /><br />Cursor Off                                                  'petla g3ówna programu<br /> Call Wysw_czas                                             'wywo3anie procedury<br />      'wy?wietlaj1cej aktualny czas<br /><br /><br /> If S2 = 0 Then                                             'je?li przyci?niety S1, to<br />  Waitms 25                                                 'opó?nienie dla eliminacji drgan<br />      'styków<br />  If S2 = 0 Then                                            'sprawdzenie, czy przycisk S1<br />     'dalej naci?niety, je?li tak, to<br />   Incr Minuty                                              'zwiekszenie warto?ci minut<br />   Sekundy = 0                                              'wyzerowanie zmiennej Sekundy<br />   If Minuty = 60 Then                                      'je?li warto?a Minuty = 60, to<br />    Minuty = 0                                              'zerowanie warto?ci Minuty<br />   End If<br />   Set Nowa_w                                               'zezwolenie na wy?wietlenie<br />      'czasu<br />   Call Wysw_czas                                           'wywo3anie procedury<br />      'wy?wietlenia aktualnego czasu<br />   Waitms 200                                               'opó?nienie 200 ms<br />  End If                                                    'koniec instrukcji warunkowej<br /> End If<br /> If S3 = 0 Then                                             'je?li przyci?niety S2, to<br />  Waitms 25                                                 'opó?nienie dla eliminacji drgan<br />      'styków<br />  If S3 = 0 Then                                            'sprawdzenie czy przycisk S2<br />      'dalej naci?niety, je?li tak, to<br />   Incr Godziny                                             'zwiekszenie warto?ci Godziny<br />   If Godziny = 24 Then                                     'je?li warto?a Godziny = 24, to<br />    Godziny = 0                                             'wyzerowanie warto?ci Godziny<br />   End If<br />   Set Nowa_w                                               'zezwolenie na wy?wietlenie<br />      'czasu<br />   Call Wysw_czas                                           'wywo3anie procedury<br />      'wy?wietlenia aktualnego czasu<br />   Waitms 200                                               'opó?nienie 200 ms<br />  End If                                                    'koniec instrukcji warunkowej<br /> End If<br />Loop<br />End                                                         'koniec programu<br /><br /><br />Sub Wysw_czas                                               'procedura wy?wietlaj1ca czas<br /> If Nowa_w = 1 Then                                         'je?li flaga Nowa_w = 1, to<br />  Cls                                                       'czyszczenie LCD<br />  Wart_bcd = Makebcd(godziny)                               'zamiana warto?ci Godziny na<br />      'warto?a w kodzie BCD<br />  Lcd Bcd(wart_bcd) ; &quot;:&quot;                                   'wy?wietlenie warto?ci godzin<br />      'w kodzie BCD zamienionych na<br />      'tekst oraz znaku :<br />  Wart_bcd = Makebcd(minuty)                                'zamiana warto?ci Minuty na<br />      'warto?a BCD<br />  Lcd Bcd(wart_bcd) ; &quot;:&quot;                                   'wy?wietlenie warto?ci minut<br />      'w kodzie BCD zamienionych na<br />      'tekst oraz znaku :<br />  Wart_bcd = Makebcd(sekundy)                               'zamiana warto?ci Sekundy na<br />      'warto?a w kodzie BCD<br />  Lcd Bcd(wart_bcd) ;                                       'wy?wietlenie warto?ci sekund<br />      'w kodzie BCD zamienionych na<br />      'tekst<br />  Reset Nowa_w                                              'zerowanie flagi Nowa_w<br /> End If<br />End Sub                                                     'koniec procedury<br /><br />Odmierz_1s:                                                 'podprogramu obs3ugi przerwania<br />      'przepe3nienia od Timer1<br /> Counter1 = Counter1 + 34286                                'wpisanie warto?ci pocz1tkowej<br />      'licznika<br /> Incr Sekundy                                               'zwiekszenie o 1 warto?ci<br />      'Sekundy<br /> Set Nowa_w                                                 'zezwolenie na wy?wietlenie<br />      'czasu<br /> If Sekundy = 60 Then                                       'je?li Sekundy = 60, to<br />  Sekundy = 0                                               'wyzerowanie warto?ci Sekundy<br />  Incr Minuty                                               'zwiekszenie o 1 warto?ci Minuty<br />  If Minuty = 60 Then                                       'je?li Minuty = 60, to<br />   Minuty = 0                                               'zerowanie warto?ci Minuty<br />   Incr Godziny                                             'zwiekszenie o 1 warto?ci<br />      'Godziny<br />   If Godziny = 24 Then                                     'je?li Godziny = 24, to<br />    Godziny = 0                                             'zerowanie warto?ci Godziny<br />   End If                                                   'koniec warunków<br />  End If<br /> End If<br />Return<br /><br />'---------------------------------------------------------------------------<br />Menu:<br />Cursor Off<br />Cls<br />Do<br />Locate 1 , 7<br />Lcd &quot;MENU&quot;<br />Locate 2 , 5<br />Lcd Chr(2)<br />Locate 2 , 12<br />Lcd Chr(1)<br />Wait 1<br /><br />If S2 = 0 Then<br />Waitms 100<br />If S2 = 0 Then<br /> Goto Zegarek<br /> End If<br /> End If<br /><br />If S3 = 0 Then<br />Waitms 100<br />If S3 = 0 Then<br /> Goto Termometr<br /> End If<br /> End If<br />Loop<br /><br />'------------------------------------------------------------------------------------------<br />Termometr:<br />Cursor Off<br />Cls<br />Do<br />Locate 1 , 5<br />Lcd &quot;TERMOMETR&quot;<br />Locate 2 , 2<br />Lcd &quot;OK to continue&quot;<br />Wait 1<br />If S4 = 0 Then<br />Waitms 100<br />If S4 = 0 Then<br />Goto Temperatura<br />End If<br />End If<br /><br />If S2 = 0 Then<br />Waitms 100<br />If S2 = 0 Then<br />Goto Sterownik<br />End If<br />End If<br /><br />If S3 = 0 Then<br />Waitms 100<br />If S3 = 0 Then<br />Goto Zegarek<br />End If<br />End If<br /><br />If S1 = 0 Then<br />If S1 = 0 Then<br />Goto Menu<br />End If<br />End If<br />Loop<br />'------------------------------------------------------------------------------------<br />Temperatura:<br />Do<br />Waitms 300<br />   1wreset<br />   1wwrite &amp;HCC<br />   1wwrite &amp;H44<br />   Waitms 750<br /><br />   1wreset<br />   1wwrite &amp;HCC<br />   1wwrite &amp;HBE<br /><br />   Lsb = 1wread(1)<br />   Msb = 1wread(1)<br />   Ulam = Lsb And 15<br /><br />   Shift Lsb , Right , 4<br />   Lsb = Lsb And 15<br /><br />   Shift Msb , Left , 4<br />   Msb = Msb And 240<br /><br />   Calk = Msb + Lsb<br /><br />   Ulam = Lookup(ulam , Tablica)<br /><br />   Cls<br />   Locate 1 , 3<br />   Lcd &quot;Temperatura:&quot;<br />   Locate 2 , 6<br />   Lcd Calk ; &quot;.&quot; ; Ulam ; Chr(0) ; &quot;C&quot;<br /><br />   If S1 = 0 Then<br />   Waitms 100<br />   If S1 = 0 Then<br />   Goto Menu<br />   End If<br />   End If<br />Loop<br /><br />Tablica:<br />Data 0 , 1 , 1 , 2 , 3 , 3 , 4 , 4 , 5 , 6 , 6 , 7 , 8 , 8 , 9 , 9<br />'-----------------------------------------------------------------------------------------<br />Sterownik:<br />Cursor Off<br />Cls<br />Do<br />Locate 1 , 5<br />Lcd &quot;STEROWNIK&quot;<br />Locate 2 , 2<br />Lcd &quot;OK to continue&quot;<br />Wait 1<br />If S4 = 0 Then<br />Waitms 100<br />If S4 = 0 Then<br />Goto Wlwyl<br />End If<br />End If<br /><br />If S1 = 0 Then<br />Waitms 100<br />If S1 = 0 Then<br />Goto Menu<br />End If<br />End If<br /><br />If S2 = 0 Then<br />Waitms 100<br />If S2 = 0 Then<br />Goto Zegarek<br />End If<br />End If<br /><br />If S3 = 0 Then<br />Waitms 100<br />If S3 = 0 Then<br />Goto Termometr<br />End If<br />End If<br />Loop<br />'-----------------------------------------------------------------------------<br /><br />Wlwyl:<br />Cursor Off<br />Cls<br />Do<br />Locate 1 , 6<br />Lcd &quot;WL/WYL&quot;<br />Locate 2 , 2<br />Lcd &quot;OK to continue&quot;<br />Wait 1<br /><br />If S4 = 0 Then<br />Waitms 100<br />If S4 = 0 Then<br />Goto Optotriak1<br />End If<br />End If<br /><br />If S1 = 0 Then<br />Waitms 100<br />If S1 = 0 Then<br />Goto Menu<br />End If<br />End If<br /><br />Loop<br />'------------------------------------------------------------------------------<br /><br />Optotriak1:<br />Cursor Off<br />Cls<br />Do<br />Locate 1 , 7<br />Lcd &quot;OPTO1&quot;<br />Locate 2 , 2<br />Lcd &quot;OK to continue&quot;<br />Wait 1<br /><br />If S4 = 0 Then<br />Waitms 100<br />If S4 = 0 Then<br />Cls<br />Locate 1 , 7<br />Lcd &quot;OPTO1&quot;<br />Locate 2 , 6<br />Lcd &quot;WL/WYL&quot;<br />Waitms 500<br />Toggle Opto1<br />End If<br />End If<br /><br />If S1 = 0 Then<br />Waitms 100<br />If S1 = 0 Then<br />Goto Sterownik<br />End If<br />End If<br /><br />If S2 = 0 Then<br />Waitms 100<br />If S2 = 0 Then<br />Goto Optotriak2<br />End If<br />End If<br />Loop<br />'------------------------------------------------------------------------------<br /><br />Optotriak2:<br />Cursor Off<br />Cls<br />Do<br />Locate 1 , 7<br />Lcd &quot;OPTO2&quot;<br />Locate 2 , 2<br />Lcd &quot;OK to continue&quot;<br />Wait 1<br /><br />If S4 = 0 Then<br />Waitms 100<br />If S4 = 0 Then<br />Cls<br />Locate 1 , 7<br />Lcd &quot;OPTO2&quot;<br />Locate 2 , 6<br />Lcd &quot;WL/WYL&quot;<br />Waitms 500<br />Toggle Opto2<br />End If<br />End If<br /><br />If S1 = 0 Then<br />Waitms 100<br />If S1 = 0 Then<br />Goto Sterownik<br />End If<br />End If<br /><br />If S3 = 0 Then<br />Waitms 100<br />If S3 = 0 Then<br />Goto Optotriak1<br />End If<br />End If<br /><br />Loop<br />'-------------------------------------------------------------------------------<br />Zegarek:<br />Cursor Off<br />Cls<br />Do<br />Locate 1 , 6<br />Lcd &quot;ZEGAREK&quot;<br />Locate 2 , 2<br />Lcd &quot;OK to continue&quot;<br />Wait 1<br /><br />If S1 = 0 Then<br />Waitms 100<br />If S1 = 0 Then<br />Goto Menu<br />End If<br />End If<br /><br />If S4 = 0 Then<br />Waitms 100<br />If S4 = 0 Then<br />Goto Czas<br />End If<br />End If<br /><br />If S2 = 0 Then<br />Waitms 100<br />If S2 = 0 Then<br />Goto Sterownik<br />End If<br />End If<br /><br />If S3 = 0 Then<br />Waitms 100<br />If S3 = 0 Then<br />Goto Termometr<br />End If<br />End If<br /><br />Loop<br />'--------------------------------------------------------------------------------<br /><br />Czas:<br /><br />Do<br />Call Wysw_czas<br />Wait 1<br />If S1 = 0 Then<br />Waitms 100<br />If S1 = 0 Then<br />Goto Menu<br />End If<br />End If<br /><br /><br />Loop<br />'----------------------------<br />[/syntax]<br /><br />aha i sorry za brak komentarzy (teraz się dowiesz jak bardzo są one ważne)...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=84">kierlan</a> — 25 paź 2012, o 22:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[foreste]]></name></author>
<updated>2012-10-24T19:40:54+01:00</updated>
<published>2012-10-24T19:40:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17542#p17542</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17542#p17542"/>
<title type="html"><![CDATA[Re: Zadanie z bascoma]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17542#p17542"><![CDATA[
Kolejna fotka <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=525">foreste</a> — 24 paź 2012, o 19:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2012-10-24T19:14:31+01:00</updated>
<published>2012-10-24T19:14:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17539#p17539</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17539#p17539"/>
<title type="html"><![CDATA[Re: Zadanie z bascoma]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17539#p17539"><![CDATA[
heheeh <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" />   No już nie chciałem marudzić z &quot; kot-em &quot; <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=58">SunRiver</a> — 24 paź 2012, o 19:14</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2012-10-24T18:54:44+01:00</updated>
<published>2012-10-24T18:54:44+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17538#p17538</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17538#p17538"/>
<title type="html"><![CDATA[Re: Zadanie z bascoma]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17538#p17538"><![CDATA[
Czyli można marudzić na ten &quot;kot&quot;  <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" /> <br />cls powinieneś wyrzucić z pętli bo to powoduje lub będzie powodować miganie wyniku. Można tak:<br />[syntax=basic4gl]if licz&lt;10 then<br />   lcd &quot;0&quot;<br />end if<br />lcd licz[/syntax]<br />A nie możesz się zdecydować i używać Buzer = 0, Buzer = 1<br />No i ten Wait 1 to kiedyś się na tobie zemści<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 24 paź 2012, o 18:54</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2012-10-24T18:30:32+01:00</updated>
<published>2012-10-24T18:30:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17536#p17536</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17536#p17536"/>
<title type="html"><![CDATA[Re: Zadanie z bascoma]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17536#p17536"><![CDATA[
echhh... no trochę się postarałeś , ale  popraw to bo niema wcięć w kodzie <br />czyli jest nieczytelny , 2 porób komentarze  w kodzie  <br /><br />zapodaj też schemat podłączeń ,  fotkę układu  filmik obrazujący działanie <br /><br />zrób to porządnie<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 24 paź 2012, o 18:30</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[foreste]]></name></author>
<updated>2012-10-25T22:26:28+01:00</updated>
<published>2012-10-24T18:24:15+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17534#p17534</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17534#p17534"/>
<title type="html"><![CDATA[Zadanie z bascoma]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=1698&amp;p=17534#p17534"><![CDATA[
Witam przestawiam licznik 0-99 który po wyskoczeniu 0 , 45 , 99 wydaje dźwięk 1 sekundowy<br />i wyświetlający wynik na ekranie lcd 2x16 hd4870 blue.<br />kod<br />[syntax=basic4gl]<br />`Konfiguracja procesora i częstotliwość taktowania<br />$regfile = &quot;M8adef.dat&quot;<br />$crystal = 1000000<br /><br />` Konfiguracja lcd okładzie hd 4870 lub zgodnym<br />Config Lcd = 16 * 2<br />Config Lcdpin = Pin , Db4 = Portc.5 , Db5 = Portc.4 , Db6 = Portc.3 , Db7 = Portc.2 , E = Portb.2 , Rs = Portb.0<br /><br />`Konfiguracja portów procesora i timera<br />Config Portd .0 = Output<br />Buzer Alias Portd.0<br />Config Timer0 = Timer , Prescale = 1024<br /><br />` Konfiguracja timera iprzerwania<br />On Timer0 Przerwanie<br />Dim Licz As Byte<br />Enable Interrupts<br />Enable Timer0<br />Do<br />Loop<br />End<br /><br />` Zdarzenie włączenia buzera na liczbie 99<br />Przerwanie:<br />Incr Licz<br />If Licz &gt; 99 Then<br />   Licz = 0<br />End If<br /><br />` Zdarzenie włączenia buzera na liczbie 0<br />If Licz = 0 Then<br />   Buzer = 0<br />   Wait 1<br /> Else<br />   Set Buzer<br />End If<br /><br />` Zdarzenie włączenia buzera na liczbie 45<br />If Licz = 45 Then<br />   Buzer = 0<br />   Wait 1<br /> Else<br />   Set Buzer<br />End If<br /><br />`Wyświetlenie licznika na lcd<br />Cursor Off<br />  Cls<br />  Lcd Licz:<br />Return[/syntax]<br /><br />&lt;<span style="color: #FF0000">zrobiłem ci wcięcia w 2ch ifach   .... popraw to naucz się korzystać z tego dobrodziejstwa i porób komentarze w kodzie --- SunRiver&gt;</span><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=525">foreste</a> — 24 paź 2012, o 18:24</p><hr />
]]></content>
</entry>
</feed>