www.conrad.pl INSTRUKCJA OBSŁUGI Zestaw do nauki Conrad Components Profi Mikrocontroller 10104 Nr produktu 192286 Strona 1 z 46 Dystrybucja Conrad Electronic Sp. z o.o., ul. Kniaźnina 12, 31-637 Kraków, Polska Copyright © Conrad Electronic 2012, Kopiowanie, rozpowszechnianie, zmiany bez zgody zabronione. www.conrad.
www.conrad.pl Szanowni Państwo Dziękujemy za zakup tego produktu. Produkt jest zgodny z obowiązującymi wymogami krajowymi i europejskimi. Aby utrzymać ten stan i zapewnić bezpieczną pracę, należy przestrzegać niniejszej instrukcji obsługi! Podręcznik ten należy do tego produktu. Zawierają one ważne informacje dotyczące prawidłowego działania i obsługi. Należy brać pod uwagę zasady prawidłowej eksploatacji oraz obsługi, zwłaszcza, gdy oddajemy produkt osobom trzecim.
www.conrad.pl UWAGA! W razie uszkodzeń spowodowanych nieprzestrzeganiem instrukcji obsługi następuje ustanie roszczeń z tytułu gwarancji! Nie ponosimy żadnej odpowiedzialności za szkody powstałe w dalszej konsekwencji takiego postępowania! Sterowanie programowalne Mikrokontrolery są wszędzie: w urządzeniach domowych, w urządzeniach elektroniki rozrywkowej, w metrach, a nawet w bezzałogowych pojazdach kosmicznych. Wszędzie robią rzeczy, które program mówi im.
www.conrad.pl 1 Wprowadzenie Zasada działania sterownika TPS jest prosta. Mają cztery wejścia cyfrowe E1 do E4 i cztery wyjścia cyfrowe A1 do A4. Istnieją również dwa wejścia analogowe AD1 i AD2 oraz quasi analogowe wyjście PWMM. Wejście resetowania za pomocą podłączonego przycisku reset zresetuje program do początku programu. Regulator jest dostarczany z trzema ogniwami AA o napięciu ok. 4,5 V i może pracować w zakresie 2.2 V do 5,5 V.
www.conrad.pl Do programowania potrzebne są dwa przyciski S1 i S2 oraz prosty wyświetlacz LED z czterema diodami LED na wyjściach od A1 do A4. Istnieje łącznie 14 prostych poleceń z powiązanymi danymi lub podkomendy. Polecenia i dane są kodowane jako 4-bitowe liczby binarne od 0000 do 1111 (dziesiętne od 0 do 15) i są bezpośrednio widoczne na wyświetlaczach LED. Odpowiednia liczba są zaprogramowane na S1 poprzez naciśnięcie przycisków podczas programowania.
www.conrad.pl Niektóre podstawowe programy, które można uruchomić bezpośrednio lub w pojedynczych krokach, są częścią ustawień fabrycznych mikroprocesora. Zapoznaj się najpierw ze sprzętem procesora, a następnie przejdź do własnego programowania. W pierwszym eksperymencie uruchamiasz podstawowe programy i testujesz ich główne funkcje. Do wypróbowania będą wymagane tylko podstawowe komponenty. Szczegółowy opis poszczególnych poleceń znajduje się w następnej części instrukcji.
www.conrad.pl przeciwnym razie może zostać nieodwracalnie zniszczone. Użyj krótkiego przewodu, aby przymocować dwa przewody do płytki. Zapobiega to wyciągnięciu przewodów z płyty. Podłączone przewody mogą być trwale połączone z płytą. Aby wyłączyć / wyłączyć obwód, wystarczy wyjąć jedną z baterii. Użyj przycisku reset i podłącz 4 diody LED do rezystorów 2,2 kΩ. Rezystory są niezbędne do pierwszych eksperymentów. Zachowaj je we właściwej kolejności. A1 jest podłączony do lewej diody LED oraz A4 do prawej.
www.conrad.pl kodem programu. Ponadto mikrokontroler można w dowolnym momencie zresetować do pierwotnego, fabrycznie ustawionego stanu programu. Adres Komenda Dane Komentarz 20 1 1 LED 1 21 2 8 Wait for 500 ms 22 1 8 LED 8 23 2 8 Wait for 500 ms 24 3 4 Jump –4 W przypadku braku spodziewanego procesu najpierw sprawdź polaryzację podłączonego napięcia do diody LED. Możliwe jest również mierzenie pewnych wartości w obwodzie.
www.conrad.pl Wykorzystanie diody PWM Uruchamianie licznika binarnego Połącz E1 z ujemnym GND. Po zresetowaniu mikroprocesora rozpoczyna się drugi program. Warunki wyjściowe binarne. Warunki 0000 (w systemie dziesiętnym od 0) do 1111 (w systemie dziesiętnym 15) są następnie przekazywane w sposób ciągły. Program wykorzystuje zmienną A dla prostej sumy i wyjścia do wyjść cyfrowych (wyjście PWM). Polecenia 7 i 5 mają drugorzędne funkcje zapisane jako dane. Strona 9 z 46 Dystrybucja Conrad Electronic Sp. z o.
www.conrad.pl Adres Komenda Dane Komentarz 25 7 1 A=A+1 26 5 4 Port = A 27 5 9 PWM = A 28 2 6 Wait for 100 ms 29 3 4 Jump –4 Ten program może być używany jako program testowy do odczytu liczników binarnych, które musisz kontrolować dla własnego programowania. Każda z czterech diod LED jest jednobitowa. W związku z tym można wyświetlić 4-bitową liczbę. Diody LED są nazywane 8, 4, 2 i 1, a także ich wartości na diagramie. Dodanie odpowiednich wartości skutkuje liczbą dziesiętną.
www.conrad.pl Sygnał PWM może być skierowany do napięcia stałego z filtrem dolnoprzepustowym RC. Wyjście PWM staje się zatem wyjściem analogowym. Ten program generuje napięcie prądu stałego, które stopniowo wzrasta od 0 V do 4,5 V. Trend napięcia należy monitorować za pomocą oscyloskopu Filtr dolnoprzepustowy na wyjściu PWM Rys. 8: Wygładzone napięcie wyjściowe PWM Strona 11 z 46 Dystrybucja Conrad Electronic Sp. z o.o., ul.
www.conrad.pl 4 Przetwornik analogowo-cyfrowy (ADC) Podłącz E2 do GND i naciśnij przycisk resetowania, aby uruchomić program konwertera AD. Napięcie analogowe jest mierzone na wejściu analogowym AD1 i konwertowane na cyfrowe wartości numeryczne. Ponieważ mikrokontroler działa z 4-bitowymi wartościami, wynikiem konwersji analogowo-cyfrowej jest liczba od 0 do 15. Wynik 0 reprezentuje napięcie wejściowe 0, wynik 15 odpowiada napięciu roboczemu (w tym przypadku 4,5 V).
www.conrad.pl Rys. 10: LDR na wejściu AD1 Ten program jest bardzo podobny do poprzedniego programu (wyjścia cyfrowe i wyjście PWM). Pierwsza linia to polecenie, które wykonuje konwersję wartości analogowych Adres Komenda Dane Komentarz 2A 6 9 A = AD1 2B 5 4 Port = A 2C 5 9 PWM = A 2D 2 6 Wait for 100 ms 2E 3 4 Jump –4 Testuje działanie programu podczas ekspozycji światłem - ekspozycja na światło. Im wyższa ekspozycja, tym niższe napięcie na AD1 i na odwrót.
www.conrad.pl Rys. 11: Uruchomienie przełącznika losowego Rys. 12: Mostek między E3 a GND Strona 14 z 46 Dystrybucja Conrad Electronic Sp. z o.o., ul. Kniaźnina 12, 31-637 Kraków, Polska Copyright © Conrad Electronic 2012, Kopiowanie, rozpowszechnianie, zmiany bez zgody zabronione. www.conrad.
www.conrad.pl Program używa warunkowego polecenia skoku. Jeśli warunek wejściowy S1 wynosi 0, następujące polecenie Jump (Przeskok). Po naciśnięciu przycisku wartość wynosi 0, zwiększając wartość A. Prowadzi to do szybkiej sumy warunków uruchamiania. Po zwolnieniu przycisku status zostaje zachowany. Ze względu na wysoką prędkość sumowania nie można wpłynąć na ostateczny stan wyjścia, więc zawsze jest to wynik losowy.
www.conrad.pl Fig 13 Połączenia E4 i GND Pomiar rozpoczyna się od S1 = 0 (naciśnij przycisk). Przed wykonaniem całości 5. polecenia są opóźnione o 5 ms. Następne 5 ms zajmuje sam proces. Całkowity czas pomiaru tętna wynosi więc 10 ms. Strona 16 z 46 Dystrybucja Conrad Electronic Sp. z o.o., ul. Kniaźnina 12, 31-637 Kraków, Polska Copyright © Conrad Electronic 2012, Kopiowanie, rozpowszechnianie, zmiany bez zgody zabronione. www.conrad.
www.conrad.pl Adres Komenda Dane Komentarz 34 2 2 Wait for 5 ms 35 C C S1 = 0? 36 3 2 Jump –2 37 4 0 A=0 38 2 2 Wait for 5 ms 39 7 1 A=A+1 3A 5 4 Port = A 3B C E S1 = 1? 3C 3 4 Jump –4 3D 3 9 Jump –9 Naciśnij krótko S1. Wynik może wynosić, na przykład, 1010, odpowiednio. 10 (system dziesiętny). Jeśli tak jest jednostką czasu programu wynoszącą 10 ms, czas wyświetlania wynosi 100 ms. Podczas dalszych eksperymentów możesz osiągnąć wartości mniejsze niż 50 ms.
www.conrad.pl Przyciski programowania S1 i S2 3 przyciski i diody LED · · · · · · · · Naciśnij przycisk S2 Wyświetlanie adresu (niższe 4 bity), 300 ms Wyłącz wyświetlanie, 300 ms Zobacz polecenie Naciśnij ponownie przycisk S2 Zobacz dane Trzecie naciśnięcie przycisku S2 Wyświetlaj inny adres. 300 ms Strona 18 z 46 Dystrybucja Conrad Electronic Sp. z o.o., ul. Kniaźnina 12, 31-637 Kraków, Polska Copyright © Conrad Electronic 2012, Kopiowanie, rozpowszechnianie, zmiany bez zgody zabronione. www.conrad.
www.conrad.pl Jeśli chcesz tylko wyświetlić bieżący program i nie wprowadzać w nim żadnych zmian, naciśnij przycisk S2 przez 10x, aby przejść do końca programu. Ponieważ bieżący adres jest wyświetlany krótko, orientacja jest łatwa. Zawsze będziesz wiedział, czy na wyświetlaczu jest aktualnie wyświetlane polecenie lub dane. Domyślnie znajduje się pierwszych 5 adresów następujące polecenia. Te domyślne programy są następnie wykorzystywane do dalszej edycji i programowania niestandardowego.
www.conrad.pl część jest zaprogramowana tylko do użytku dwa polecenia. Ma to na celu włączenie diody LED do pętli. Oświetlenie LED Adres Komenda Dane Komentarz 00 1 7 A1–4 = 0111 01 3 0 Jump 0 Możesz wybrać szczegółową listę lub tylko skróconą formę. Te dwa bajty są podsumowane w zapisie heksadecymalnym (szesnastkowym): 17 h, 30 h. Jednak programy są napisane w skróconej formie bez etykieta "h": 17 30.
www.conrad.pl Uruchom tryb programowania, naciskając S2. Wprowadź wartość F (dziesiętnie 15), ogółem 4x, aż dioda LED A1 do A4 będzie świecić. Potwierdź wpis, naciskając S2. Więc zrób to aby zresetować. Spowoduje to zresetowanie mikroprocesora (przywrócenie ustawień fabrycznych) i przywrócenie wszystkich oryginalnych programów. 10 Podstawowe polecenia mikrokontrolera Programowalny mikroprocesor rozpoznaje łącznie 14 poleceń (1 - 14).
www.conrad.pl ograniczony do obszaru 15. Return (Jump) jest związany z bieżącym adresem, podczas gdy części programu można przenieść na dowolne adresy Program flash zmienny potrzebuje tylko tych trzech poleceń. Jest on wpisywany do obszar adresowy od 00 tutaj w nieznacznie zmienionej formie. Próbki bitów wyjściowych i czasy oczekiwania są również zmieniane.
www.conrad.pl Rozszerzenie programu o dwa kolejne schematy wyjściowe, tak aby punkt świetlny cofał się, oraz kroczył naprzód. Eksperymentuj z innymi wzorcami wyjściowymi i czasami opóźnienia.
www.conrad.pl 11 Obliczanie za pomocą zmiennych Do tej pory parametry używały tylko stałych wartości liczbowych w parametrach poszczególne polecenia. Jest to sensowne, gdy program ma działać w ten sam sposób za każdym razem. Bardziej złożone programy działają jednak ze zmiennymi danymi. Na przykład. obliczenia takie jak A = A + B może zostać wykonany. W zależności od zawartości zmiennych A i B, wynik będzie za każdym razem inny.
www.conrad.pl 54: Dout = A 55: Dout.0 = A.0 56: Dout.1 = A.0 57: Dout.2 = A.0 58: Dout.3 = A.0 59: PWM = A 61–6A: A = Source 1–10 61: A = B 62: A = C 63: A = D 64: A = Din 65: A = Din.0 66: A = Din.1 67: A = Din.2 68: A = Din.3 69: A = AD1 6A: A = AD2 71 –7A: A = Expression 1–10 71: A = A + 1 72: A = A – 1 73: A = A + B 74: A = A – B 75: A = A * B Strona 25 z 46 Dystrybucja Conrad Electronic Sp. z o.o., ul.
www.conrad.pl 76: A = A / B 77: A = A And B 78: A = A Or B 79: A = A Xor B 7A: A = Not A Jeden przykład użycia zmiennej A znajduje się w przykładach programu w rozdziale 3. Program został ustawiony tutaj na adres Zero i nieco rozwinięty. Dodatkowo istnieje zdefiniowany początek z wartością 0 w zmiennej A. Adres 01 zawiera komendę obliczeniową, tutaj zwiększa się o 1. Zawartość zmiennych A jest następnie przekazywana do wyjścia PWM i portu wyjściowego.
www.conrad.pl 69 54 7A 59 26 35 Lista 14: Invert 12 skoki i gałęzie Do tej pory istniał tylko prosty powrót (polecenie 3), który powrócił do 15 adresów. Teraz dodajemy skok absolutny. Ponieważ cel skoku można wskazać tylko za pomocą 4-bitów, istnieje dodatkowe polecenie określające wysoki przekór adresu. Daje to przestrzeń adresową 0-255. Jest to więcej, niż potrzebujesz, ponieważ EEPROM kontrolera zawiera tylko 128 bajtów, tj. Obszar 00 do 7F (dziesiętnie 0 do 127).
www.conrad.pl A0–AF: Counting loop C-times Adr-high, Adr-low (0–15) B0–BF: Counting loop D-times Adr-high, Adr-low (0–15) C1–CF: Conditional jump: if (condition 1–15) then skip C1: if A > B then Adr = Adr + 1 C2: if A > B then Adr = Adr + 1 C3: if A = B then Adr = Adr + 1 C4: if Din.0 = 1 then Adr = Adr + 1 C5: if Din.1 = 1 then Adr = Adr + 1 C6: if Din.2 = 1 then Adr = Adr + 1 C7: if Din.3 = 1 then Adr = Adr + 1 C8: if Din.0 = 0 then Adr = Adr + 1 C9: if Din.1 = 0 then Adr = Adr + 1 CA: if Din.
www.conrad.pl wyświetlana ponownie. Wszystkie polecenia oczekujące zostały usunięte z programu, więc teraz działa z wyższą rozdzielczością. Adres Komenda Dane Komentarz 00 C C S1 = 0? 01 3 1 Jump –1 02 4 0 A=0 03 7 1 A=A+1 04 5 4 Port = A 05 C E S1 = 1? 06 3 3 Jump –3 07 3 7 Jump –7 CC 31 40 71 54 CE 33 37 Lista 15: Reakcje na przycisk S1 Polecenie skoku CC w adresie 00 ocenia stan za pomocą przycisków S1. W stanie spoczynku S1 = 1.
www.conrad.pl Oryginalny program przykładowy jest więc ponownie wywoływany. Sprawdź to także w przypadku innych przykładów. Pełny przegląd wszystkich możliwych programów znajduje się w załączniku. 13 Przegląd poleceń Wszystkie polecenia na pierwszy rzut oka - to upraszcza pracę z kontrolerem. Poniższa tabela zawiera całe zasoby poleceń w zwartej formie. 1 2 3 4 Port= Wait Jump A= - 5 6 ... = A A = ... 7 8 9 A B C A = ... Page Jump C* D* Skip if ...
www.conrad.pl 14 Zliczanie pętli Należy przeprowadzić proces, np. pięciokrotnie. W tym celu tworzy się pętlę zliczającą. Polecenie skoku wykonuje się w tym przypadku pięć razy, a następnie już nie. Zmienna licznika nazywa się C. Wartość zliczania 5 musi być załadowana najpierw w A, a stamtąd w C. Polecenie A2 wykonuje wartość bezwzględną na 02 i jednocześnie redukuje zawartość zmiennej C o 1. Gdy C osiągnął wartość 0, skok nie jest już wykonywany. Skok bezwzględny odnosi się do wskazanej strony.
www.conrad.pl Adres Komenda Dane Komentarz 00 4 5 A=5 01 5 2 C=A 02 8 0 AdrHi = 0 03 A 5 C-times 05 04 3 0 End 05 1 5 Port = 0101 06 2 8 Wait for 500 ms 07 1 A Port = 1010 08 2 8 Wait for 500 ms 09 3 6 Jump –6 45 52 80 A5 30 15 28 1A 28 36 Lista 18: Pięć błysków 15 Porównanie Należy porównać dwie wartości liczbowe. W zależności od wyniku porównania wykonywany jest skok. Dwie wartości liczbowe muszą znajdować się w A i B.
www.conrad.pl Adres Komenda Dane Komentarz 03 6 9 A = AD1 04 C 1 Skip if A>B 05 9 8 Adr 08 06 1 F LEDs 1111 07 3 4 Adr 03 08 1 0 LEDs 0000 09 3 6 Adr 03 45 51 80 69 C1 98 1F 34 10 36 Lista 19: Prosty przełącznik zmierzchowy Przetestuj program, zmniejszając zasłonę światła ręką. Przekonasz się, że podstawowa funkcja jest spełniona. Jednak zwykle występuje nieprzyjemny efekt uboczny. Dokładnie na progu między On i Off, diody LED będą migać niekontrolowane.
www.conrad.pl Poniższy program łączy warunki wejściowe ze stałą liczbą 3. Funkcja AND praktycznie powoduje zamaskowanie dwóch niższych bitów (odfiltrowanie). W stanie spoczynkowym port wejściowy ma warunek 1111. Łącze AND z wartością 0011 dostarcza wtedy stanu 0011 na diodzie LED. Jeśli jednak podłączysz jedno z wejść E1 lub E2 do GND, warunek 0 jest również widoczny na innych wyjściach. Zmiany w E3 i E4 nie mają żadnych skutków.
www.conrad.pl podprogramu wywoływanego w dwóch miejscach w programie głównym. Podprogram zawiera tylko jedną instrukcję (A = A-1) i polecenie skoku powrotu tutaj. Nie oszczędza to pamięci, ale przykład ma jedynie na celu zademonstrowanie poleceń CALL i RET. Główny program: Adres Komenda Dane Komentarz 00 8 0 AdrHi = 0 01 D 8 Call 08 02 5 4 Output 03 2 9 Waiting 1 s 04 D 8 Call 08 05 5 4 Output 06 2 8 Waiting 0.
www.conrad.pl 68: Podprogram: Poczekaj na wciśnięty przycisk S2 70: Podprogram: Numer wejścia z S1 i S2 Podprogram od adresu 60 jest używany tylko do ustawienia licznika sterowanego przyciskiem S1. Odczyt licznika rozpoczyna się od 0. Główny program jest stosunkowo krótki, ponieważ złożone zadanie zapytań o przyciski zostało zlecone do podprogramu.
www.conrad.pl 6-8: Diody LED niezmienione 9-15: Diody LED włączone Adres Komenda Dane Komentarz 00 1 0 LEDs 0000 01 4 5 A=5 02 5 1 B=A 03 6 9 A = AD1 04 C 1 Skip if A>B 05 1 0 LEDs 0000 06 4 9 A=9 07 5 1 B=A 08 6 9 A = AD1 09 C 2 Skip if A
www.conrad.
www.conrad.pl Adres Komenda Dane Komentarz 00 C C S1 = 0? 01 3 1 Jump –1 02 4 0 A=0 03 5 4 Dout = A 04 2 3 10 ms 05 C E S1 = 1? 06 3 2 Adr 04 07 C F S2 = 1? 08 3 0 End 09 C C S1 = 0? 0A 3 3 Adr 07 0B 7 1 A=A+1 0C 2 3 10 ms 0D C C S1 = 1? 0E 3 1 Adr 0D 0F 3 C Adr 03 CC 31 40 54 23 CE 32 CF 30 CC 33 71 23 CC 31 3C Lista 25: Wprowadzanie liczby Wejście numeryczne jest również dostępne jako gotowy podprogram od adresu 70 i następne.
www.conrad.
www.conrad.
www.conrad.
www.conrad.
www.conrad.
www.conrad.pl Address Command Data Comment 7C 2 3 Wait for 10 ms 7D C C S1 = 1? 7E 3 1 Jump – 1 7F 3 C Jump –12 CC 31 40 54 23 CE 32 CF 30 CC 33 71 23 CC 31 3C Strona 7: Wprowadzenie przycisku podprogramu Tabela poleceń 1 2 3 4 5 6 7 Port = Wait ... = A A = ... A = ...
www.conrad.pl Zużyte urządzenie Nie należy wyrzucać razem z odpadami z gospodarstwa domowego baterii ani urządzenia!!!! Produkt ten jest oznaczony zgodnie z wymaganiami Dyrektywy WEEE (2002/96 / WE). Załączona (pokazana) etykieta wskazuje, że ten elektryczny / elektroniczny produkt nie powinien być wyrzucony razem z odpadami gospodarstwa domowego.