Oki rozumiem, napisałem tak: [syntax=c]//zapis do eeprom twistart(); if ((TWSR & 0xF8) != (TWINT)) ERROR(); else { twiwrite(0b10100000); twiwrite(2); //adres twiwrite(123); //wartosc twistop(); _delay_ms(200); }[/syntax] No i wchodzi w if-a i wyrzuca komunikat o błedzie. Czyli co mam zła funkcje twistart(), tak.?? EDIT: Zauważyłem jeszcze ze przy zakomentowaniu...
Twój błąd polega na błednym przekonaniu, że skoro kompilator skompilował kod bez błedu to musi działać. I działa (przypadkiem), tylko, że wprowadza niejednoznaczność i nie ma nic wspólnego z dobrym stylem programowania i znajomością języka C. Wpisujesz pod przypadkowy adres bajt. Dlaczego przypadkowy? Czy zainicjowałeś wskaźnik Frame_LCD na strukturę...
Witam ! Tracąc dziesiątki godzin szukania w Internecie i dwa tygodnie prób i błędów z w/w LCD proszę o pomoc (i pokazanie błędu) Dołączam kod w http://obrazki.elektroda.pl/7865128700_1... [syntax=c][/syntax] // --------- sterownik LCD -> chyba NT7108/NT7107 (podobny do KS0108 ) --------------- // ATmega 128 + POWERTIP -> LCD PG12864...
Piszę program który w założeniu ma posiadać pamięć ustawień. Dokładniej jest w nim 11 zmiennych oraz 128 możliwości ich ustawień (128 banków pamięci dla tych 11 zmiennych). Każda zmienna jest 8bitowa. No i dostaje od kompilatora (WinAVR ) dziwne komunikaty: warning: pointer targets in passing argument 1 of 'eeprom_read_byte' differ in signedness W kodzie...
Praktycznie kazdy program który znajduje używa biblioteki ice.lib mimo, ze nie znam bascoma to widze, ze jest deklarowana zmienna np. "tekst", a później uzywana funkcja z tej biblioteki pisz_tid {tekst} więc poniżej wstawiam to co jest w bibliotece. Hmm jak tak teraz patrze to widze, ze tu praktycznie assembler jest i nasuwa mi się pytanie, czy w winavr...
Przystąpiłem do lekcji 10. Zrobiłem analogiczne poprawki, jak w lekcji 9, ale niestety również nie mogę skompilować kodu. Poświęciłem praktycznie cały dzień na szukaniu przyczyny. Pojawiają się takie błędy przy kompilacji: http://obrazki.elektroda.pl/4932303600_1... Tutaj zamieszczam kod programu po moich poprawkach: ////////////////////////////////////////...
Przystąpiłem do lekcji 10. Zrobiłem analogiczne poprawki, jak w lekcji 9, ale niestety również nie mogę skompilować kodu. Poświęciłem praktycznie cały dzień na szukaniu przyczyny. Pojawiają się takie błędy przy kompilacji: http://obrazki.elektroda.pl/4932303600_1... Tutaj zamieszczam kod programu po moich poprawkach: ////////////////////////////////////////...
Przyjrzyj się prototypom funkcji operujących na EEPROM - pierwszym argumentem jest adres, a drugim dana, powinno więc bć eeprom_write_byte(&liczba_LED,1);, analogicznie przy odczycie. Zapis &1 co ma wg ciebie robic? Pobierać adres literału? Druga rzecz, zmienne w pamięci EEPROM powinny być globalne, nie ma sensu ich definiować lokalnie, co prawda w...
Witam Procek Avr Atmega, kompilator Avr Studio, fragment kodu: sinus: .DB0x80,0x83,0x86,0x89,0x8c,0x8f,0x92,0x... .DB0xb0,0xb3,0xb6,0xb9,0xbc,0xbf,0xc1,0x... .DB0xda,0xdc,0xde,0xe0,0xe2,0xe4,0xe6,0x... .DB0xf6,0xf7,0xf8,0xf9,0xfa,0xfb,0xfc,0x...
Witam ostatnio założyłem temat [url=http://www.elektroda.pl/rtvforum/to... ale przez moje nie dopatrzenie zostało no wyrzucony dziękuje wszystkim za pomoc chwilowo (po poprawkach) zegarek wygląda tak [syntax=basic4gl]$regfile = "m32def.dat" $crystal = 16000000 Config Timer0 = Timer , Prescale = 256 On Timer0 Przerwanie Dim Licz As Byte...
Witam jak mogę zmienić wyjścia pinów na stan niski . Program napisany w BASCOM. [syntax=vbnet]$regfile = "m16adef.dat" ' specify the used micro ' generated. Take care that the chip supports all fuse bytes. $crystal = 8000000 $baud = 19200 ' used crystal frequency ' generated. Take care that the chip supports all fuse bytes. Config Lcd = 16 * 2 Config...
Koledzy potrzebuje pomocy w bascomie avr mianowicie np. dekoduje sygnał z jakiegoś wejścia czy jest to 1 lub zero i tak 80 razy. Problem jest taki jak zrobić aby każden odebrany umownie bit wpisać do jednej zmiennej. Jest to podobne do transmisji pilota najpierw sprawdzam czy zmienna to 1 czy 0 a tak odbywa się to ok. 80 razy w odstępach 200uS następnie...
Witam. Mam dość zasadniczy problem na który nie znalazłem odpowiedzi. Potrzebuję w AVRstudio zdefiniować że mam podłączony kwarc 16MHz tymczasem AVRstudio z uporem maniaka twierdzi ze kwarc jest 4MHz w skutek czego zależności czasowe w symulacji mają się nijak do rzeczywistości. Znalazłem tylko przykłady w C oczywiście dla asm nie działają :( Przy okazji...
Natrafiłem na następujący problem. Korzystam z zestawu AVT3505 oraz modułu AVT1443. Obie części zostały połączone w sposób analogiczny jak w projekcie http://www.ethernut.de/en/hardware/enut1... Zgodnie ze specyfikacją NE2000, kontroler powinien znajdować się pod adresem: 0x8300 - 0x831F, a pamięć SRAM pod: 0x1100 - 0x7FFF. To się zgadza, ale...
Witam, chciałbym opanować komunikowanie się mikrokontrolera z komputerem za pomocą UART przez FT232. Nie wiem dlaczego winavr nie rozpoznaje makrodefinicji UBRRH_VALUE, UBRRL_VALUE, chociaż zdefiniowałem w kodzie Dodano po 19 tutaj jeszcze błąd: > "make.exe" all -------- begin -------- avr-gcc (GCC) 4.1.2 (WinAVR 20070525) Copyright (C) 2006 Free...
Witam. Mam pytanie do specjalistów od avr i gcc. Chcę zrobić sobie debuger do atmegi8, który będzie w stanie odczytywać lub ustawiać po rs232 wartości zmiennych oraz wywoływać funkcje. W zamyśle po zlinkowaniu kodu make wywoływać ma skrypt w pelru, który parsuje .map file w poszukiwaniu zmiennych statycznych i globalnych oraz adresów funkcji. Potem...
Witam. Uruchomiona komunikacja po UART - komputer PC - urządzenie na Atmega32. Z poziomu klawiatury PC wysyłam znaki. Po odebraniu przez urządzenie kodu klawisza enter urządzenie wykonuje polecenie (złożone z uprzednio wysłanych znaków). W celu wygodnego debugowania softu (bez tworzenia celowych pułapek, ponownej kompilacji kodu i programowania uP)...
Witam, dzisiaj zabrałem się za zabawę z pamięcią EEPROM. Pierwszy z problemów jaki napotkałem to adresowanie pamięci EEPROM. Znalazłem w internecie 2 polecenia które mnie interesują: eeprom_write_byte (adres, zmienna); x = eeprom_read_byte (adres); Problem w tym, że jak zrobię tak jak podano w tym wątku: http://www.elektroda.pl/rtvforum/topic18...
W twojej pierwszej deklaracji jest nieszczęście. Spróbuj tak: struct TPole{ unsigned char bit_0:1; unsigned char bit_1:1; . . unsigned char bit_7:1; } bit_field; zdefiniuj dodatkowo takie coś: #define Get_bit(adr) (*( (volatile bit_field*) (adr) ) ); Teraz chcąc wyłuskać jakiś bit piszesz: zmienna = Get_bit (i tu adres właściwy bajtu na którym ci zależy...
Nie bardzo rozumiem , jaki cel chciałbyś osiągnąć :( Do czego są Ci potrzebne , dane w "tab_mala" :?: A jeśli chodzi o wskaźniki , to możno z nimi robić właściwie wszystko.Ustawić na dowolny adres w pamięci , bez względu na to , czy będzie to tablica , struktura ,unia , inna zmienna , itp. Piotrek
A czy można wiedzieć w takim razie ile do dyspozycji mam pamięci RAM (lub ile przy standardowej optymalizacji w winavr zajmuje stos)? Pozdrawiam Ja stosuje nastepujacy sposob. W dowolnym przerwaniu odczytuje wskaznik stosu do zmiennej porównując z poprzednia wartoscia i zapisuje mniejsza. Puszczam program naciskam co mam nacisnąc staram sie wykonac...
Wciąż nie wiem, czy to ja gdzieś robię błąd, czy też jest to wina kompilatora - pierwszy raz mam takie zjawisko, a zawsze bezboleśnie używałem różnych takich konstrukcji.... Ponieważ jest to zmienna lokalna może być przechowywana tylko w rejestrach procesora lub cos w tym rodzaju. Spróbuj ja zrobić volatile.
Czyli zostaje sposób z #define? Zakładając, że zdefiniuje sobie w ten sposób wszystkie zmienne (de facto ich adresy) i zostawię w spokoju &zmienna to chyba nic się nie stanie? Tablicę mogę wszak zrobić definiując sobie pierwszy element a potem robiąc tak: #define ADRES_POCZATKU_TABLICY 0x02D3 (...) eeprom_read_byte(ADRES_POCZATKU_TABL...
Hej. Mam do Ciebie jeszcze takie pytanie przy okazji. Po kompilacji pokazuje sie komunikat o zajetości SRAM (całkowitej bo tam sa sekcje wypisane) i pokazuje 1 bytes (1,6%). Pokazuje 1 bajt mimo że deklarowane jest w sumie 11 bajtów (w tym 4 uint16_t). Jak uruchamiam symulacje i dodaje zmienne do "watch" to kazda zmienna jest pod innym adresem. Czy...
... co do resetu to : Reset zeruje tylko zmienna globalna a zmienna lokalna pozostaje nie ruszona :) Ze tez tego nie moglem sie nigdzie doczytac... Przestrzeń w pamięci RAM na zmienne lokalne , jest przydzielana dynamicznie i dla tego nie są one zerowane , bo w czasie kompilacji ich położenie(adres w pamięci) nie jest znane. Bascom również nie zeruje...
Tutaj podajesz adres (zmienna addres) int writemmc( int address ) a u Ciebie jest stały i wynoasi 0x200. (czyli 512). int writemmc(int address) { // write sector to MMC int i; DDRB |= (1<<redled); uint8_t c; // 512 byte-write-mode if (Command(0x58,0,512,0xFF) !=0) { //tu jest stała wartość a powinno być...
Operator przypisania zawsze myli mi sie z porówaniem gdy na jakis czas przestane pisac (pisze duzo w php). Hmm, trzeba zabrac sie za te dokumentacje w takim razie. Z kursu udało mi sie uruchomic timer, wiec myslałem ze jest ok. Co do wyskoczenia poza rozmiar - to program tylko do testów, udało mi sie zapisac dane do eeprom, uruchomic timer, teraz chciałem...
Witam, korzystam z WinAVR oraz AVR Studio. Napisałem dwie proste funkcje: void zapisz( uint8_t pozycja, uint8_t wartosc ) { eeprom_busy_wait(); eeprom_write_byte(&pozycja,wartosc... } char odczyt(uint8_t pozycja) { eeprom_busy_wait(); return eeprom_read_byte(&pozycja); } Wiem, że ATmega...
A jak sprawdzać wolną pamięć w czasie pracy programu na AVR, podaj przyklad kodu Dodano po 1 Cześć! Bardzo dobrze, że pytasz o monitorowanie wolnej pamięci w trakcie pracy programu na mikrokontrolerach AVR, ponieważ jest to ważny aspekt w projektowaniu stabilnych i efektywnych aplikacji. Istnieje kilka metod na sprawdzanie dostępnej pamięci RAM, ale...
Witam wszystkich. Zaprojektowałem i uruchomiłem zegarek z wyświetlaczami LED(SA10-21GWA) i układem PCF8583 współpracującym z mikroprocesorem Atmega8 oraz układami PCF8574AP na szynie TWI(i2c). http://obrazki.elektroda.net/21_12497604... http://obrazki.elektroda.net/58_12497606... http://obrazki.elektroda.net/95_12497605...
Witam! Ostatnio próbuję swoich sił z tym mikrokontrolerem i napotkałem się na dziwne zachowanie, otóż w przypadku takiego kodu [syntax=c] counter_temp =0; unsigned long temp; temp = (*(Table_temp + 4) - '0'); counter_temp += (*Table_temp - '0') * 100000000; counter_temp += (*(Table_temp + 1) - '0') * 10000000; counter_temp += (*(Table_temp + 2) - '0')...
Witam Napisałem dość prosty program na ww płytę ewaluacyjną. Sczytuję czas (sekundy minuty i godziny) z RTC zamontowanego na płycie i po konwersji wyświetlam to sobie na moim LCD 2x16. Problem tkwi w tym że program działa raptem nie całe 5 sekund i wisi. Dołączam wszystkie pliki projektu do sprawdzenia. Korzystam z dodatkowych bibliotek TWI.h - do obsługi...
Kod jest przerobiony, z innego ale go ogarniam, a teraz co znaczą komentarze. jeśli chodzi o wartość 0xa0, która jest w kodzie, a ja napisałem że to nie działa, natomiast działa dla 0x50. 0x50 = 01010000; 0xa0 = 10100000; Według noty katalogowej PCF8583, adres scalaka jest 10100000 = 0xa0, z czego 1010 - to adres stały 000 - to adres zmienny i zależy...
A możesz mi powiedzieć skąd Ty bierzesz takie informacje? z dokumentacji, z internetu, z doświadczeń i prób. A czy przy okazji mogę się podpytać o taką rzecz. Mam układ ATMega162 z zewnętrzną pamięcią RAM 62256. Całość jest pisana w AVR-GCC używając AVR Studio. Potrzebuję aby ta pamięć RAM była tylko do przechowywania takich danych jak np tablica....
Witam! Na forum zawsze znajdowałem odpowiedzi i drążyłem każdy temat samodzielnie w myśl zasady jednego z moich wykładowców "świat dzieli się na samouków i nieuków"... lecz tym razem rozłożyłem ręce po 3-dniowej walce z TWI/i2c (w między czasie wypiłem tylko 2 bro) i postanowiłem nieśmiało założyć temat (chyba mój inauguracyjny...). Przeczytałem regulamin...
Witam. Próbuję stworzyć bibliotekę obsługującą wyświetlacz LCD (2x20, HD44780) podłączony do mikrokontrolera (ATmega32) poprzez TWI (I2C) i układ PCF8574AP. Kompilator to WinAVR (wersja oznaczona numerkiem a raczej datą: 20050214). Sama komunikacja z układem PCF8574 jest pewna (korzystam ze sprawdzonych bibliotek obsługujących sprzętowy interfejs TWI...
Nigdzie nie widzę, aby wskaźnikom gps_data i gps_pom były przypisywane jakieś adresu. Kolejna sprawa, to jeśli liczby mają być obsługiwane powyżej (jak zauważył Dr.Vee ) 32767, musisz zmienić typ zmiennej (ja preferuję uint32_t z <stdint.h>). Jeśli liczby mogą mieć 6 cyfr, należy pamiętać, że aby ciąg znaków był poprawnym ciągiem, musi być zakończony...
Rozwiązanie z postu powyżej jest najlepszym według mnie: if(v) PORTB |= (1<<PB3); else PORTB &=~(1<<PB3); Żeby jednak traktować pojedynczy bit portu jako osobną zmienną można wykorzystać fakt, że rejestry io posiadają swój adres w przestrzeni danych, przez co można uzyskać adres i rzutować wskaźnik na jakąś bardziej...
wrzucam całośc, co do Twojego rozwiązania sprawdzze jutro. Wcześniej nie wywoływałem funkcji w przerwaniu to pojawiały się 'krzaki' na LCD - przerwanie od T0 przerywało chyba funkcję wyświetl() dlatego dałem w przerwaniu. /*======================================... WinAvR wersja WinAVR-20050214 **Program obsługujący woltomierz/generator...
Teoretycznie wszystkie elementy tablicy beda jeden za drugim, ale to czysta teoria, bo na przyklad w celu optymalizacji na architekturach 16-sto i wiecej bitowych pomiedzy struktury wstawia sie "gapy", czy "pady", po to, by kazdy z elementow tablicy znajdowal sie pod adresem bedacym wielokrotnoscia 2, 4, 8, lub 16 (wiecej jeszce nie widzialem ;) ) wskaznik...
1. Jesli chcesz wyswietlic tylko jedna cyfre, to chyba zadziala write_char((cyfra & 0x0f) | 0x20). Jak cala liczbe, to musisz najpierw dokonac konwersji BIN -> BCD, a potem pare razy write_char. Ale malo sie znam na C, wiec mozliwe, ze jest duzo latwiejszy sposob :). 2. Nie musisz. Trzeba wyslac do LCD komende Set DDRAM Address (0x80) + adres, pod ktory...
Będzie zwracał błąd. Bo tworzysz zmienną lokalną, której adres przekazujesz. Są dwa wyjścia: 1. Zwracanie poprzez wartość. 2. Zmienną temp definiujesz globalnie. Nie pisałem nic w winavr ale problem wydaje się dość standardowy.
Chcę obliczyć współczynnik b = 256*(x1-x2)/(y1-y2) A mnożysz przez 255 :P wsp_b = wsp_b*0xff; Jeżeli nie jest Ci potrzebny wsp_a, możesz zrobić tak: long int wsp_b; wsp_b = (((long int) (x1-x2))<<8) / ((long int) (y1-y2)); Nie wiem, jakiego typu są zmienne x1, x2, y1 i y2, a jeżeli jest...
Nie musi być na wskaźnikach, natomiast w manualu jest zapis zawartości pod danym adresem do zmiennej a nie adresu portu, który można zmienić tak, aby funkjca działała na innym porcie. Ostatecznie pozostaje "select case", ale sądziłem że w C można to zrobić prościej.
9. Teraz pytanie: czy CRC zawsze jest stałe i pod tym samym adresem w pg? Algorytm liczenia CRC jest stały(zależny od każdej wartości w uwzględnianym obszarze pamięci), cała reszta to już formalności.
Drgającymi stykami warto się przejąć bo mogą wygenerować przerwanie kilkanaście razy pod rząd ale rozumiem, że nie w tym problem. Nie bardzo rozumiem skąd ten adres 0x0319? masz dołączoną zewnetrzną pamięć? Pamięć SRAM w mega8515 konczy się na 0x025F a więć 0x0319 leży poza fizyczną pamięcią (i poza stosem). Niestety nie pracowałem nigdy z WinAvr (używam...
No i zaczely sie schody w Projekt Options ->General ->Device mam zaznaczony procek: AT90s.... i to mi dziala!!! Kompiluje i chodzi. Jak zaznacze procesor, ktory mam na plytce Atmega 128 to przy debagowaniu wystrzeliwuje mi z funkcji w "kosmos". Jakis dziwny pusty adres. Bez debugowania tez nie dziala. Wyglada na blad w WinAVR. Czy ktos moze z tym sie...
AHC ma ten sam rozkład pinów a co do definiowania stosu to nic nie musisz robić przyjmując wartości domyślne., potem deklarujesz zmienną wskaznikową jej z kolei przypisujesz adres powyżej 0x1100 i masz całą pamięc extend do użycia, natomiast zasłonięty "dół" jak jesteś sknerą :) za pomocą sztuczki z noty katalogowej sobie używasz.
Nie będę kolego tego analizował od początku ale napiszę tylko tyle twoja funkcja zwraca wskaźnik do lokalnej tablicy danych. Zwróć uwagę że to co się w niej znajduje jest ważne tylko podczas trwania tej funkcji. Zwracając więc adres lokalnej zmiennej możesz po wyjściu z funkcji stracić te dane. Powinieneś sobie alokować więc pamięć aby dane stały sie...
No więc jest to do zrobienia. Tylko jak się taką sekcje tworzy w WinAVR? Domyslam się, że to trzeba w makefile poustawiac, tylko czy w AVRach da się przesunąc stos? W asemblerze jak narazie nic konkretnego nie pisałem i całego programu w nim nie napiszę. Myślałem że w C można deklarowac zmienną z atrybutem adresu pamięci, tak jak to się robi z wyborem...
markoll2 --> ty się dlatego w tym wszystkim gubisz bo chcesz na upartego zapisywać do eepromu jakieś zmiennej wielkości łańcuchy pod bezwzględne adresy w pamięci EEPROM. To szybko doprowadzi cię do zguby albo na skraj szaleństwa ;) Zamiast tego przygotuj sobie strukturę jak powyżej i zamiast umieszczać w niej wskaźnik do opisu tekstowego, umieść tam...
Nie ma sensu udowadniać koledze rpal że nie ma racji. Sam WinAVR wywala warninga przy lini z taką deklaracją. Działać to i może będzie na rdzeniu AVR ...ale z jaki skutkami przy rozbudowywaniu kodu?...tego nie wiadomo. Kompilator rdzeni ARM (8051 zresztą też) automatycznie ładuje taką stałą znakową do pamięci Flash więc każda próba zapisu pod adres...
Witam! Na początku dziękuję za odpowiedzi... Zrobiłem jak poradziliście... zainstalowałem najnowszą wersję WinAVR i zadeklarowałem tablicę wg. waszych wytycznych i do tego momentu wszystko jest ok. Niestety próba odwołania się do tej struktury nadal kończy się niepowodzeniem: 1. jeśli wywołam funkcję w ten sposób: print_str(pgm_read_byte(strr[...
Wywołanie SetAddress() nie jest nie potrzebne. Autor przeróbek usunął też zewnętrzną pamięć .Dlatego wyszły takie pozornie nic nie znaczące dziwactwa. Odczyt spod adresu E000+adr jest potrzebny do automatycznego zatrzaśnięcia zatrzasku. Jak by tego nie zmienić to program nie będzie używał zmiennej odczytywanej/zapisywanej (a co za tym idzie rezultatu...
Zapisuje sobie ramki przesyłane po RS485 w pamięci zewn SRAM współpracującej z ATmega162. Program pisze w WINAVR. Ze wzgledu na to że współdzielony jest obszar wewn i zewn pamięci SRAM, oraz moja zewn pamięc ma pojemność 0.5 MB to podzieliłem ją sobie na 16 stronic po 32 kB każda. Wewn i zewn pamięć rozdziełam bitem A15. W ten sposób aby wpisać cos...
Jeszcze dodałbym 6ty, znaczy się projekt był na początku banalny, ale chciało się większej funkcjonalności... Co do pierwszego pytania, to sam się zastanawiam, bo jakoś nie umiem tego znaleźć w winavr (tools/options/ na szybko przeleciałem, ale nie widzę nic o optymalizacji). A co do pierwszego? Podstawiasz 16 bitów na 8 i dziwisz się, że nie możesz...
Witam, próbuje skorzystać z pamięci programu do przechowywania tablicy stałych. Środowisko: WinAVR-20090313, VMLAB 3.14, atmega88. Fragment mojego kodu: ... #include <avr/pgmspace.h> //obsługa pamięci programu ... uint8_t kod[] PROGMEM = {2,3,6,2,1,0xff}; ... int main(void) { ... while(1) { .... kod_element...
Ale liczenie CRC pod koniec wgrywania kodu nic mi nie daje. Bo po pierwsze programowanie może nie dojść do końca. A po drugie nawet jak dojdzie i program wykryje błąd, i nawet zacznie programować od początku, to to drugie programowanie może nie dojść do końca :D Inaczej mówiąc wykrycie błędu nic mi nie da, bo jak wtedy odłączę zasilanie to później nowy...
Piszę sterownik pod matrycę LED. Napisałem sobie funkcje rysujące litery od lewej do prawej(przykład na końcu), kolejna litera rysowana od miejsca przesun . Wywołanie w main() wygląda przykładowo: { for(i=10;i>-20;i--) A(i,t[15]); //litera A na starcie w miejscu 10 B(i+5,t[15]); // litera B na starcie...
Witam Od pewnego czasu programuje sobie mikrokontroler ATMega8 ze skutkiem całkiem pomyślnym. Jednakże uzywane przeze mnie dotychaczas funkcje typu ustawianie stanów portów czy opóźnianie czasowe już nie wystarczają. Szukałem troche po necie, ale niestety nic nie udało mi sie znaleźć, no może kilka, które w dodatku nie były opisane jak je używać w kodzie...
winavr zmienna adres zmienna adres komórka zmienna
compaq dioda zasila sumowanie napięcia zasilacza kurtka zimowy
Instrukcja kotła Conica Green 25 S SI Turbo Jak uzyskać listę kanałów na telewizorze Samsung?