Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 15 mar 2026, o 00:33


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 102 ]  Przejdź na stronę Poprzednia strona  1, 2, 3, 4  Następna strona
Autor Wiadomość
PostNapisane: 26 mar 2013, o 17:16 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 lut 2013
Posty: 84
Pomógł: 8

Jeżyk-1: Pokazujesz tylko fragment kodu ale chyba problemem jest to, że zmienna przy_stan ma ustaloną wartość na pewien czas (w procedurza sprawdz_klawiature), a w kodzie

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


wartość menu zmienia się cały czas dla tej ustalonej wartości (fragment: menu++/menu--). Wartość menu zaczyna zależeć od długości naciśnięcia klawisza, czyli dosyć losowo ;)
Także raczej błąd logiczny a nie problem z drganiami.

I trochę takie masło maślane zaczyna się z tego robić bo to są zlepki różnych kodów. Coraz ciężej się to analizuje. Ja bym obsługę klawiatury w całości wrzucił na jakieś przerwanie (wywoływane z 30-60 Hz) łącznie z eliminacją drgań (być może jeszcze z wyborem poziomu menu). Na drugim przerwaniu obsługa zegarka (ten kwarc 32k). W programie głównym obsługa menu i wyświetlacza.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 18:50 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lip 2012
Posty: 306
Pomógł: 0

No robi się masełko ;(
Nie umiem lepiej :(
A czy to nie będzie za wiele tych przerywań ?
Już by były 2, następnie obsługa grzałki (regulacja mocy grzania) jedno przerwanie, dodatkowo regulacja obrotów wentylatora i pomiar ich obrotów kolejne przerwanie?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 19:14 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

Napisz co dokładnie chcesz zrobić i wklej kod, który już napisałeś. Bez tego nikt Ci nie powie czy się zmieścisz ;)

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 19:30 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lip 2012
Posty: 306
Pomógł: 0

Teraz to popsułem coś ponieważ zabrałem się za przerwanie na ADC.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


To ma być nie skomplikowany układ do regulacji temperatury w malutkim pomieszczeniu dokładniej na makiecie, na której termometr DS18b20, grzałka 230V 200W która będzie płynnie regulowana moc grzania, oraz wentylator wiewający zimne powietrze który będzie miał regulowane obroty wiania i pomiar obrotów wentylatora, wentylator będzie przymocowany do ogniwa peltiera, blok wodny i chłodzenie wodne wodne czyli pompka obiegowa, wentylatory chłodnicy i elektrozawory procesor będzie załączał przekaźnik który będzie uruchamiał poszczególne elementy. trochę sporo tego i niestety mam do 15,04 czas na wykonanie samego programu :(
Już się obawiam że nie zrobię tego na czas i nie wiem czy nie będzie lepiej zlecić komuś napisanie takiego programu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 19:58 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Po co tyle pisać? Nie lepiej tak:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

A tutaj nie masz zbytniego "rozstrzału" między napięciami, więc możesz zapisać tak:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Dlaczego w 68 linii masz jedyne wywołanie tej funkcji, a nigdzie nie zapisujesz tego co zwraca?

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 20:22 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lip 2012
Posty: 306
Pomógł: 0

o coś takiego chodzi ?
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Tylko za bardzo nie działa obsługa klawiszy :(
Zachowuje się jak byłby wciśnięty cały czas przycisk



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 20:35 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

A który? I jaką masz wartość napięcia jak żadnego nie wciskasz (wyrzuć sobie na ekran)?

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 20:46 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lip 2012
Posty: 306
Pomógł: 0

Gdy wczytuje wartość z przerwania :
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


To mam cały czas 1023
Ale jak wciskam jakiś przycisk to nic się nie dzieje.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 20:56 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

A, czyli program zachowuje się prawidłowo tylko my mamy złe warunki :)
Powinno więc być coś takiego:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Wcześniej cały czas zgadzał się warunek dla ESC, bo 1023>885 ;)

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 22:22 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

Czemu nic nie piszesz o ostrzeżeniach kompilatora? Mi po próbie kompilacji kodu wrzuconego o 20:22 wyrzuciło ostrzeżenia o przypisywaniu wartości w IFie.

I tak, np linia 97 powinna najprawdopodobniej brzmieć "if (menu==0)", chyba, że wiesz co robisz poprzednim zapisem.

Dodatkowo linia 54 według mnie uniemożliwia wykonanie przerwania ADC_vect

Czemu w ten sposób rozpisałeś mój kod w liniach 97-123 ?

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 22:37 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lip 2012
Posty: 306
Pomógł: 0

barney napisał(a):
Czemu nic nie piszesz o ostrzeżeniach kompilatora? Mi po próbie kompilacji kodu wrzuconego o 20:22 wyrzuciło ostrzeżenia o przypisywaniu wartości w IFie.

Czemu w ten sposób rozpisałeś mój kod w liniach 97-123 ?


Nie zauważyłem tego. Przepraszam, miało być ==

barney napisał(a):

Czemu w ten sposób rozpisałeś mój kod w liniach 97-123 ?


Nie przypatrzyłem się i trochę źle zinterpretowałem co miałeś na myśli. już to poprawiam :)

barney napisał(a):
Dodatkowo linia 54 według mnie uniemożliwia wykonanie przerwania ADC_vect


Też mi się wydaje że ADRF powinno być włączone ale jak go włączę to wywala mi :
'ADRF' undeclared (first use in this function)
Zaglądałem do noty katalogowej to nie ma takiego bitu w Atmega16 i to chyba dlatego taki błąd wyskakuje.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 22:40 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 06 maja 2012
Posty: 758
Pomógł: 9

Nie wgłębiałem się w temat ale niech ktoś powie tylko, czy jest tutaj omawiany regulator PID (lub podobny)?

_________________
ATB 1.03, Win XP SP3, ECLIPSE Indigo 3.7.2



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 22:45 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lip 2012
Posty: 306
Pomógł: 0

W tej chwili nie :(
Jeszcze tak daleko nie dotarłem :(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 22:47 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

http://www.atmel.com/Images/doc2466.pdf str 219 i według mnie ten bit nazywa się ADATE.

Ps. ADFR nie jest znajdowane w całym PDFie ;)

Ledes: Nie, chyba nie :lol:

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 23:00 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lip 2012
Posty: 306
Pomógł: 0

To już też tam próbowałem go wstawić i nić nie dało:(
Dokładnie cały kod teraz mam taki:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


I na wyświetlaczu pod zmienną "pom" wyświetla mi się wartość = 3
A gdy duszę przyciski to zmieniają się wartości
1 przycisk = 0
2 przycisk = 1
3 przycisk = 2
4 przycisk = 4
5 przycisk = 0
6 przycisk = 0

------------------------ [ Dodano po: kilkunastu sekundach ]

A gdy włączyłem
ADMUX |= (1<<ADLAR); //wynik wyrównaj do lewej

to:
1 przycisk = 620
2 przycisk = 110
3 przycisk = 150
4 przycisk = 182
5 przycisk = 209
6 przycisk = 230
nic = 250

coś nie tak chyba ten pierwszy wynik ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 23:11 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 lut 2013
Posty: 84
Pomógł: 8

W 280 linii wstaw ADCW zamiast ADCH

------------------------ [ Dodano po: 4 minutach ]

W linii 9: volatile uint16_t ADC_pomiar; //aktualny pomiar ADC

------------------------ [ Dodano po: 7 minutach ]

Linia 84: lcd_int(pom); lcd_str(" ");



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 23:19 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

Wyłączenia IFa w 103 linii jest celowe ?
Dlaczego masz zdublowaną obsługę wyników ADCka ? Chodzi o linie 73-81 vs. 222.
W linii 280 odczytujesz 8 najstarszych bitów ADCka. W takim razie musisz przeliczyć wartości dla przycisków (teraz masz je dla wszystkich 10 bitów) albo odczytywać ADCW i wyłączyć przesuwanie w lewo.

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Ostatnio edytowano 26 mar 2013, o 23:25 przez barney, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 23:24 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lip 2012
Posty: 306
Pomógł: 0

Ta zamiana spowodowała ze cyferki sie cały czas zmieniają coś pomiędzy 192 , 122, i 600 coś nie idzie odczytać ;/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 23:25 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 lut 2013
Posty: 84
Pomógł: 8

Tak na szybko to chyba wszystko, bo takiej klawiaturki 6-klawiszy z rezystorkami to nie mam.
Co jeszcze wg Ciebie nie działa ?

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Jeżyk-1 napisał(a):
Ta zamiana spowodowała ze cyferki sie cały czas zmieniają coś pomiędzy 192 , 122, i 600 coś nie idzie odczytać ;/


ADC podłączyłem działa poprawnie, u mnie w zakresie 2...1023



Ostatnio edytowano 26 mar 2013, o 23:34 przez fredek, łącznie edytowano 2 razy

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 23:29 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

W liniach 83-84 wyświetlasz sobie wynik pomiaru, tak ? Może te dziwnie wysokie wyniki są związane z tym, że nie usuwasz starych cyfr z wyświetlacza...
Dodaj tam sobie jeszcze
lcd_str(" ");

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 23:39 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lip 2012
Posty: 306
Pomógł: 0

W sumie teraz działa jak dodałem tą linie :
Linia 84: lcd_int(pom); lcd_str(" ");
musiał zostawać poprzedni wynik i dlatego wychodziło 622 teraz wyskakuje 62.
Ale zastanawia mnie dlaczego wcześniej tamtym kodem miałem wartość ok 1023 przy nie wciśniętym przycisku a teraz 251 ?

IF jest w tej chwili włączony wcześniej go wyłączyłem testowo.
Z tym zdublowaniem to już juto pomyślę dlaczego mi tak to wyszło. Z tego co miało być to jedno zamieniało wartość pomiarową na nr przycisku który wciśnięty a 2 zamieniać miało na cyfrę na nazwę.
Jutro to porawię i zobaczę czy nie będzie mi menu przeskakiwało jak wcześniej :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2013, o 23:47 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

Jeżyk-1 napisał(a):
Ale zastanawia mnie dlaczego wcześniej tamtym kodem miałem wartość ok 1023 przy nie wciśniętym przycisku a teraz 251 ?


Bo odczytujesz różne rejestry. Na 220 str datasheeta masz to ładnie opisane. Jak chcesz mieć pełną rozdzielczość (10 bit = 1023) to wyłącz bit ADLAR i odczytuj rejestr ADCW (taki rejestr "zbiorczy" - zawiera od razu ADCH + ADCL

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 mar 2013, o 19:09 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lip 2012
Posty: 306
Pomógł: 0

Ok Jest dokładnie tak jak piszecie. :)

Czas zabrać się za zniwelowanie dublującej funkcji.
Ja bym zostawił ten kod ponieważ jest krótki i zrozumiały dla mnie :
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Funkcja zwraca wartości:
1 - pierwszy przyciska
2 - drugi przycisk
.
.
.
.
6 - szósty przycisk.
I kombinowałem coś z trybem wyliczeniowym ale chyba źle to zrozumiałem albo źle to robię.
Czy jeżeli zmienna przy_stan zawiera w sobie danę który przycisk jest wciśnięty to funkcją ENUM zamienię ją na postać znakową (RIGHT, LEFT...) ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 mar 2013, o 19:29 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

Wygląda ok, ale zamiast unsigned char pisz uint8_t - od razu wtedy wiadomo o co chodzi. Po co warunek w 10 linii?

W 63 linii jeżeli chcesz zwracać numer przycisku to wpisz po prostu
return stan_poprzedni
chyba, że nie chcesz zawsze zwracać zawsze jakiegoś przycisku. Wtedy musisz sobie tak przerobić tą procedurę, aby dla braku zmiany zwracała jakiś przewidziany przez Ciebie, nic nie znaczącą wartość.

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 mar 2013, o 21:45 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lip 2012
Posty: 306
Pomógł: 0

Udało się zrobić obsługę tych klawiszy lecz niestety w pętli głównej :(
zabrałem się za menu i 1 pozycję menu nastawy zegarka i całkiem mi to nie idzie.
Pewnie jak ktoś ten kod zobaczy to się za głowę złapie co ja tworzę :(

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Najbardziej mnie zastanawia dlaczego jak włączę menu ustaw zegar i przyciskiem ok zatrzymuje odliczanie, i zmieniam pozycje nastawy (godziny, ,minuty, sekundy) ale jak wcisnę góra to wszystkie wartości się zwiększają :(
potem jak zrobię esc to już nie mogę zmieniać pozycji po głównym menu :(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 mar 2013, o 22:40 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

Nie wiem jak dla innych, ale dla mnie ten kod robi się niedebugowalny :(
Sorry, może ja po prostu mam specyficzny sposób pisania, ale ilość tekstu trochę mnie przytłacza.

1. Nie stosuj takich długich przerw - 1 pusta linia jest w sam raz.
2. Poopisuj przy deklaracji zmiennych od czego są.
3. Trzeba odchudzić według mnie funkcję main - za dużo w niej wszystkiego. Według mnie byłoby fajnie, gdybyś:

1. Linie 34-57 wyrzucił sobie do funkcji typu inline.
2. Linie 76-130 też wyrzucił do funkcji. Dodatkowo robisz wiele razy to samo dla różnych klawiszy - zastanów się czy nie lepiej będzie zrobić macierz i ją obsługiwać.
3. Linie 157-297 - switch pod switchem to według mnie strasznie "groźna" konstrukcja - zastanów się czy nie przejrzyściej byłoby co najmniej powyrzucać do funkcji kod dla switcha nadrzędnego (tego "switch(menu)").
4. Trochę za "obfite" komentarze według mnie
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

jest dla mnie trochę za dobrze skomentowane, wolę coś takiego
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

ale tu już nie nalegam - to zależy od tego co kto lubi i jak pisze.

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Tutaj niepotrzebnie się rozpisujesz, można to zapisać tak:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 mar 2013, o 23:09 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lip 2012
Posty: 306
Pomógł: 0

Ok zdaje sobie sprawę że jest bałagan więc zabieram się za porządki.

Zaczynając od funkcji inline zawsze mam problem z tym co ma funkcja zwracać a co pobierać.
jak zrobiłem tu i tu void to nie działa:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 mar 2013, o 23:27 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

Jest ok. Funkcja nie musi przecież nic pobierać, ani zwracać ;)
Jak chcesz jej użyć to piszesz
ustawienia();
ten pusty nawias jest potrzebny - jest to informacja, że nic do niej nie przekazujesz.

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 mar 2013, o 23:41 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lip 2012
Posty: 306
Pomógł: 0

barney napisał(a):
2. Linie 76-130 też wyrzucił do funkcji. Dodatkowo robisz wiele razy to samo dla różnych klawiszy - zastanów się czy nie lepiej będzie zrobić macierz i ją obsługiwać.

Tego to chyba nie będę wiedział jak zrobić :(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 mar 2013, o 23:44 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

Ale że samego wyrzucenia do funkcji czy przeróbki na macierz ?

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 102 ]  Przejdź na stronę Poprzednia strona  1, 2, 3, 4  Następna strona

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO