Bezpłatna biblioteka techniczna ENCYKLOPEDIA RADIOELEKTRONIKI I INŻYNIERII ELEKTRYCZNEJ Jak połączyć mikrokontroler z komputerem przez RS-232. Encyklopedia elektroniki radiowej i elektrotechniki Encyklopedia radioelektroniki i elektrotechniki / Mikrokontrolery Artykuł ten miał być przykładem realizacji rozwoju urządzenia mikrokontrolerowego sterowanego przez komputer osobisty poprzez kanał szeregowy. Jest przeznaczony dla tych, którzy nie mają jeszcze doświadczenia w tego typu opracowaniach. Gdy zrozumiesz, w jaki sposób komputer PC steruje mikrokontrolerem, wyświetla, przetwarza i przechowuje otrzymane od niego informacje, możesz zastosować tę wiedzę do własnych projektów. Ponadto opisywane urządzenie ma również niezależną wartość: jest to sterowany woltomierz cyfrowy, którego wyniki pomiarów przed wyświetleniem mogą zostać przetworzone przez komputer według zadanego algorytmu, a także zapisane w pliku na dysku twardym komputera, przeglądane i drukowane. Wszystko to sprawia, że opisywane urządzenie stanowi podstawę prostego systemu gromadzenia, przetwarzania i dokumentowania danych, przydatnego dla inżynierów elektroników, którzy nie posiadają poziomu wiedzy z zakresu technologii mikrokontrolerów umożliwiającej samodzielny rozwój. Wprowadzenie Celem tej pracy było opracowanie i wykonanie prostego urządzenia pomiarowego opartego na wciąż najpopularniejszym dziś mikrokontrolerze z rodziny x51, które mogłoby wymieniać informacje z komputerem osobistym. Urządzenie miało zawierać woltomierz, który można było później uzupełnić o różne przystawki przetwarzające na napięcie inne bezpośrednio mierzone wielkości fizyczne. Urządzenie takie umożliwiałoby łatwe przeprowadzenie serii pomiarów sterowanych komputerowo, a także akumulację wyników i ich komputerową obróbkę. Poddany zasadniczym zmianom mógłby łatwo przekształcić się w system zdalnego monitorowania i sterowania sprzętem lub innymi przyrządami i urządzeniami. Ogólny opis urządzenia. Część elektryczna urządzenia Urządzenie (ryc. 1) jest zasadniczo woltomierzem cyfrowym. Na wejściu woltomierza znajduje się wzmacniacz operacyjny (DA1), który ma dużą impedancję wejściową. Po wzmacniaczu operacyjnym następuje przetwornik ADC (DD2), który pozwala nam na digitalizację interesującego napięcia w celu późniejszej transmisji do mikrokontrolera. Głównym elementem sterującym urządzenia jest mikrokontroler DD3, który odczytuje informacje z przetwornika ADC i komunikuje się z komputerem osobistym poprzez kanał szeregowy. Urządzenie zawiera również konwertery mocy generujące +5 V dla części cyfrowej i generujące +/-10 V dla wzmacniacza operacyjnego, a także układ konwersji poziomu (logiczne <0> i <1> do -15: +15 V i odwrotnie) do wymiany informacji poprzez kanał szeregowy, taki jak RS232.
Wartość wysyłana do komputera mieści się w przedziale 0...4095 (co odpowiada głębokości bitowej ADC), 0 odpowiada poziomowi wejściowemu 0V, 4095 - poziomowi 5V, zależność jest liniowa. Można wybrać szybkość wymiany informacji mniejszą niż 9600 bodów lub wyższą - do 115 200 bodów. Na dość starych komputerach, takich jak 386 i wcześniejszych, górna granica jest znacznie niższa - 19200 bodów. Dzieje się tak dlatego, że chipy portu szeregowego znajdujące się w tych komputerach nie zostały zaprojektowane do wyższych prędkości. Opis żetonów Konwerter zasilania MAX680 Wzmacniacze operacyjne zazwyczaj wymagają zasilania dwubiegunowego (na przykład +10 V i -10 V względem masy). Krótkofalowcy nieobeznani z nowoczesną podstawą elementarną do uzyskania takiego napięcia stosują zazwyczaj transformator z dwoma uzwojeniami wtórnymi (lub jednym, ale z odczepem od środka), dwoma kondensatorami filtrującymi, dwoma stabilizatorami itp. Jeśli jednak mając do dyspozycji stabilizowane napięcie 5V, a zastosowany wzmacniacz operacyjny, który wymaga zasilania bipolarnego, może kosztować zaledwie +7:10 V, zużywając 1:2 mA, wówczas wspomniane dwa uzwojenia i dwa stabilizatory nie będą potrzebne . Wystarczy zastosować mikroukład MAX680 firmy Maxim (zwróć uwagę, że podobne mikroukłady produkowane są przez Linear Technology i wiele innych znanych firm). Na wejście mikroukładu podawane jest napięcie Uin w zakresie od 3:5 do 6:10 V (w zależności od typu), na jego wyjściach generowane są napięcia rzędu +2Uin. Niezwykłe jest to, że po pierwsze do wygenerowania tych napięć oprócz 8-pinowego MAX680 lub LT1026 potrzebne są tylko 4 małe kondensatory elektrolityczne (patrz rys. 1), a po drugie, gdy zmienia się napięcie wejściowe, podwoić moc wyjściową zmiana fazy, która praktycznie nie ma wpływu na sygnał wyjściowy wzmacniacza operacyjnego. Aby uzyskać bardziej szczegółowe informacje na temat takich mikroukładów, autor zaleca zapoznanie się z odpowiednimi opisami zastrzeżonymi. ADC MAX1241 W ostatnich latach mikroukłady sterowane kanałem szeregowym doczekały się szerokiego rozwoju technologii mikrokontrolerów. Jednym z tych układów jest 12-bitowy przetwornik ADC MAX1241. Podobnie jak w przypadku MAX680, MAX1241 ma całkiem sporo dokładnych i przybliżonych analogów (MAX187 firmy Maxim, LTC1286, LTC1298 firmy Linear Technology, AD7894 firmy Analog Devices i szereg innych). MAX1241 jest zamknięty w 8-pinowej obudowie, zasilany jest napięciem od 2,7 do 5 V i pobiera prąd o natężeniu około 5 mA. Wymaga zastosowania zewnętrznego źródła napięcia odniesienia (w tym przypadku zastosowano precyzyjną diodę Zenera KR142EN19, generującą napięcie 2,50 V), a do komunikacji z mikrokontrolerem wykorzystuje jedynie 3 linie. Działanie MAX1241 ilustrują diagramy czasowe pokazane na rys. 2. Przed rozpoczęciem konwersji i wymiany wejście CS# MAX1241 musi być utrzymywane przez mikrokontroler w pojedynczym stanie. Aby rozpocząć konwersję, do tego wejścia należy zastosować poziom zera logicznego. Proces konwersji do MAX1241 zajmuje niecałe 8 µs. Przez cały czas konwersji MAX1241 utrzymuje na wyjściu DOUT poziom logiczny 0. Po zakończeniu konwersji MAX1241 przełącza wyjście DOUT w stan pojedynczy.
Przed rozpoczęciem konwersji mikrokontroler na wejściu SCLK układu MAX1241 musi ustawić zerowy poziom logiczny. Po zakończeniu procesu konwersji wewnątrz przetwornika ADC mikrokontroler musi wygenerować sekwencję co najmniej 12 dodatnich impulsów na wejściu SCLK (rys. 2). Zbocze pierwszego impulsu przygotowuje MAX1241 do transmisji danych. Gdy impuls spada na DOUT, najbardziej znaczący 12-ty bit pojawia się jako logiczne zero lub jedynka. Mikrokontroler odczytuje ten bit, formuje zbocze drugiego impulsu na SCLK, a po pewnym czasie - jego spadek. Gdy drugi impuls opada, na DOUT pojawia się jedenasty bit, który jest następnie odczytywany przez mikrokontroler itp. Po upadku 12. impulsu na wyjściu DOUT ustawiany jest najmniej znaczący pierwszy bit. Upadek 1. impulsu sprowadza DOUT do stanu zerowego, czyli do stanu sprzed ustawienia wejścia CS# na 13. Przenosząc CS# do stanu pojedynczego, mikrokontroler informuje MAX1 o zakończeniu procesu odczytu wyniku konwersji. MAX1241 może wykonać następną konwersję około 1241 µs po ustawieniu CS# na 1. Algorytmy działania modeli LTC1286, LTC1298 firmy Linear Technology i AD7894 firmy Analog Devices różnią się nieco od opisanych dla MAX1241. Możesz zapoznać się z nimi bardziej szczegółowo, zapoznając się z odpowiednimi opisami firm. Konwerter poziomu MAX202E Dla niewielu jest tajemnicą, że w standardowej logice jeden jest reprezentowany przez poziom napięcia od 2,4 do 5 V, a zero - od 0 do 0,8 V. Jednak początkujący mogą nie wiedzieć, że podczas transmisji przez kanał RS-232 zero i jeden są kodowane sygnałami o tej samej wartości (od 5 do 12 V), ale różnym znaku. Celem tego artykułu nie jest wyjaśnianie, dlaczego zwyczajowo tak się robi, a nie inaczej – ograniczymy się do stwierdzenia tego faktu. Ponieważ standardowe sygnały logiczne muszą być konwertowane na sygnały innego poziomu w celu transmisji przez RS-232, konieczne jest zapewnienie w obwodzie odpowiednich środków konwersji. Około 10 lat temu używano do tego specjalnie zaprojektowanych kaskad składających się z trzech lub czterech tranzystorów, pary diod i prawie kilkunastu rezystorów. Teraz sytuacja uległa znacznej zmianie: czołowi producenci chipów produkują w pełni kompletne konwertery, które wymagają minimalnej liczby dodatkowych elementów. Należą do nich MAX202E firmy MAXIM i AD232 firmy Analog Devices, który jest z nim całkowicie identyczny, aż do układu pinów. Wewnątrz oba mikroukłady zawierają przetwornik napięcia od +5 V do +10 V, identyczny z opisanym powyżej MAX680, oraz kaskady przetwarzające sygnały logiczne na poziomie standardowym na sygnały poziomu zgodne ze standardem RS-232. Każdy z wymienionych mikroukładów zawiera przetworniki poziomów logicznych dla dwóch odbiorników i dwóch nadajników. Będziemy używać tylko jednego kanału nadawczo-odbiorczego. Tryb pracy MK z kanałem szeregowym Jak wiadomo (patrz np. numery 10 i 11 magazynu Radio z 1994 r.) mikrokontrolery rodziny x51 posiadają cztery tryby pracy transceivera. Nas będzie interesował tryb 1 jako najprostszy i najbardziej akceptowalny. Tryb 1 charakteryzuje się następującymi parametrami:
Jest to wygodny tryb programowania: do skonfigurowania i obsługi transiwera wymagana jest bardzo mała ilość kodu programowania. Chociaż w razie potrzeby możesz użyć innych trybów pracy. Celem artykułu jest opisanie pewnego urządzenia, które posiada możliwość komunikacji z komputerem osobistym. Nie będziemy tutaj opisywać dokładnie działania transiwera. Informacje te można uzyskać ze wspomnianych magazynów radiowych lub innej literatury. Podstawowe procedury dla MK Głównymi procedurami mikrokontrolera będą: odczyt danych z ADC, inicjalizacja UART, odebranie bajtu i wysłanie bajtu. Odczytywanie danych z ADC Konfigurowanie komputera do wymiany informacji poprzez kanał szeregowy. Aby skonfigurować komputer do wymiany informacji poprzez kanał szeregowy, należy wykonać następujące czynności:
Przykład kodu zaprojektowanego dla kursu wymiany 9600 bps dla rezonatora kwarcowego o częstotliwości rezonansowej 11,059 MHz:
GET_VOLT: SETB DOUT ; DOZWOLONE WPROWADZANIE DANYCH Z ADC SETB CS ; USTAWIANIE STANU POCZĄTKOWEGO ADC CLR SCLK ; USTAW STAN POCZĄTKOWY ADC CLR CS ; ZGŁOSZONY DO PRZECZYTANIA DANYCH MUL AB; 4 MKS przy 12 MHz \ MUL AB ; 4 MSK | MUL AB ; 4 ISS} CZEKAJ NA KONIEC; | CYFRY MUL AB ; 4 MKS / MOV R0,#12 ; CZYTAJ 12 BIT GET_VC: SETB SCLK ; \ NOP ; | NOP ; | CLR SCLK ; } WYGENEROWAŁEM PULS DO ODCZYTU BIT NOP ; | NOP ; / MOV C, DOUT ; ODCZYT BIT MOV A, R2 ; \ RLC A ; | MOV R2,A; | MOV A, R3; } WCIŚNIJ BIT W SŁOWO ; WYNIK - R3R2 RLC A ; | MOV R3,A; / DJNZ R0,GET_VC ; PĘTLA ANL A,#0FH MOV R3,A ; WYCZYSZCZONE WYSOKIE BITY R3R2 SETB CS ; NIE CHCE CZYTAĆ ; (POZOSTAŁE BITY = 0) MUL AB ; 4 MKS przy 12 MHz \ MUL AB ; 4 MSK | MUL AB ; 4 MSK | MUL AB ; 4 µs }MIN OPÓŹNIENIE ; | PRZED NASTĘPNYM MUL AB ; 4 MSK | MUL AB ; 4 ISS / RET Podprogram ten wywoływany jest jako pierwszy w głównym programie mikrokomputera. W zasadzie nie trzeba go nawet sformalizować jako podprogramu. Odbieranie i wysyłanie bajtu Procedury odbierania i wysyłania bajtów kanałem szeregowym są bardzo proste.
SERINIT: FILM IE, #0 ; Wyłącz wszystkie przerwania MOV TMOD, #20H ; Ustaw tryb 2 dla timera 1 MOV TH1, #REL96 ; Wartość licznika automatycznego przeładowania MOV TL1, #REL96 ; Początkowa wartość licznika dla 9600 bps ; z SMOD = 0 ANL PCON, #7FH ; Wyczyszczony SMOD MOV SCON, #50H ; Tryb dla 8 bitów danych i szybkości transmisji, ; zależny od timera SETB TR1 ; Uruchom zegar/nastawnik 1 RET, gdzie REL96 jest stałą równą 0FDh Bajt z portu I/O SBUF można odczytać tylko wtedy, gdy ustawiony jest bit RI rejestru sterującego/statusowego SCON, wskazujący obecność bajtu w buforze odbiorczym. Po odczytaniu tego bajtu należy zresetować bit RI. Po zapisaniu bajtu do portu I/O należy poczekać aż ustawiony zostanie bit TI, co zasygnalizuje koniec wysyłania bajtu na linię. Następnie bit TI również będzie musiał zostać zresetowany. Podprogram odbierający bajt do akumulatora:
GETCH: JNB RI, GETCH MOV A, SBUF CLR RI RET Podprogram do wysłania bajtu z akumulatora:
PUTCH: MOV SBUF, A WYŚLIJ: JNB TI, WYŚLIJ CLR TI RET Należy również zauważyć, że mikrokomputer nie ma żadnych środków do wykrywania błędów wejścia/wyjścia. Aby uporządkować kontrolę programowo i sprzętowo, można rozszerzyć liczbę linii wejścia/wyjścia, którymi będą transmitowane dodatkowe sygnały i na ich podstawie będzie można określić, w jakich stanach znajdują się uczestnicy dialogu, a także identyfikować błędy. Można zwiększyć niezawodność odbioru/transmisji informacji w inny sposób: przesłać kolejny bit z ośmioma bitami danych - bit parzystości, liczony podobnie jak flaga parzystości w słowie statusowym programu (bit 0 PSW). Należy go obliczyć tylko dla przesłanego lub odebranego bajtu. Po otrzymaniu bajtu i bitu parzystości należy je porównać, aby sprawdzić, czy pasują do siebie. Jeśli nie są zgodne, wystąpił błąd we/wy. Aby przesłać dodatkowy dziewiąty bit informacji, należy użyć trybu 9 lub 2 timera/licznika. Ogólny program dla MK. Schemat stanu urządzenia Ogólny program mikrokomputera opiera się na algorytmie opisanym poniżej. Algorytm jest dość skomplikowany, ponieważ... Mimo to musisz w jakiś sposób, przynajmniej programowo, zidentyfikować błędy wejścia/wyjścia i zareagować na ich wystąpienie. Dla większej przejrzystości do algorytmu opisanego zwykłymi słowami załączono rysunek - tzw. diagram stanu urządzenia (ryc. 3), który przedstawia cztery główne stany urządzenia z punktu widzenia wymiany informacji z komputerem.
Ustalmy z góry, że nasz mikrokomputer jest niewolnikiem, a komputer osobisty jest panem podczas wymiany danych. Innymi słowy, samo urządzenie, bez poleceń z komputera, nie powinno nic zrobić. Jest całkowicie podporządkowany komputerowi sterującemu. Na hosta wybrano komputer osobisty z prostego powodu: ma większą moc i jest w stanie bez problemu sterować urządzeniem. Ponadto może udostępnić użytkownikowi więcej funkcji serwisowych. Stan pierwszy - Czekaj Urządzenie znajduje się w tym stanie bezpośrednio po włączeniu napięcia zasilania. Tutaj oczekuje na żądanie inicjalizacji z komputera, które wyrażane jest przez wysłanie przez komputer znaku NUL. Urządzenie z kolei musi w odpowiedzi na otrzymane żądanie włączyć i skonfigurować, jeśli zajdzie taka potrzeba, dodatkowe moduły i zasoby, a następnie, jeśli wszystko poszło dobrze, wysłać do komputera symbol ACK. W przypadku błędu powinien wysłać NAK. W ten sposób następuje pierwsza „komunikacja” dwóch „rozmówców”. Jeśli chcesz, powinni „wymienić pozdrowienia” lub „uścisnąć dłoń”. Jeśli urządzenie zostanie pomyślnie zainicjowane, a następnie wyśle znak ACK, automatycznie przejdzie do następnego stanu. To przejście jest oznaczone strzałką 1 na schemacie. Stan gotowości W tym stanie nasz mikrokomputer czeka na żądanie komputera PC o przesłanie zmierzonej wartości odczytanej z ADC. Żądanie jest znakiem XON. Po zaakceptowaniu tego symbolu urządzenie przechodzi w nowy stan – Wysyłanie. Przejście odpowiada strzałce 2. Stan wysyłania Po dotarciu na miejsce mikrokontroler odczytuje z przetwornika ADC binarną liczbę dwunastobitową przy użyciu wcześniej określonej metody i wysyła ją w częściach do komputera. Ta implementacja konwertuje liczbę binarną na trzyznakowy odpowiednik w formacie szesnastkowym, taki jak <1FF> dla liczby dziesiętnej 511. Najpierw wysyłany jest <1>, a następnie Po przesłaniu wartości do komputera mikrokomputer przechodzi do kolejnego stanu zgodnie ze strzałką 4. Stan wysłany Stan ten jest ostatnim i niejako zamyka krąg pojedynczego aktu komunikacji pomiędzy urządzeniem a komputerem. Tutaj oczekuje się, że komputer potwierdzi, że poprawnie przyjął zaadresowaną do niego wartość. Istnieje kilka możliwości reakcji komputera na wysłany numer: może odpowiedzieć pomyślnym odbiorem symbolem XOFF, co będzie oznaczać, że na razie nie są potrzebne żadne inne wartości, lub może odpowiedzieć symbolem XON, co oznacza, że potrzebna jest jeszcze jedna wartość. Jeżeli zostanie zaakceptowany XOFF, urządzenie powraca do stanu Gotowy (przejście 7 na schemacie). W przypadku odebrania symbolu XON urządzenie ponownie znajduje się w stanie Wysyłanie (przejście 5) i powtarza odczyt z ADC z następczą transmisją numeru na linię. Jedynym przypadkiem, który nie został wzięty pod uwagę, był przypadek, gdy komputerowi nie podobało się to, co otrzymał: na przykład zamiast znaków z zakresu <0>...<9>, ... Przejścia oznaczone strzałkami 3 i 8 na schemacie pozostały nieopisane. Jeśli komputer napotka poważny błąd we/wy lub będzie musiał przerwać komunikację z urządzeniem, po prostu wyśle inicjujący komunikat NUL, który zainicjuje urządzenie i ustawi je w stanie gotowości. Te. Niezależnie od stanu, w jakim znajduje się nasze urządzenie, musi odpowiedzieć na żądanie inicjalizacji w taki sam sposób, jak podczas inicjalizacji początkowej (patrz Stan oczekiwania elementu). Jeśli mikrokomputer otrzyma jakiś nieoczekiwany lub nieprawidłowy symbol lub żądanie, wówczas musi zawsze odpowiedzieć symbolem NAK. Ta strategia jest korzystna, ponieważ taka organizacja programu dla urządzenia ułatwia wykonywanie kilku zadań jednocześnie: po pierwsze mikrokomputer i komputer nie będą bawić się zepsutym telefonem, a po drugie, będą mogły łatwo i skutecznie „komunikować się” ze sobą z przyjacielem. Przejdźmy do komputera. Ogólny program na PC. Diagram stanu komputera Zasadniczo ogólny program komputera nie będzie się w żaden sposób różnić od programu stosowanego w mikrokontrolerze. Algorytm będzie podobny i diagram stanu będzie podobny. Inicjalizacja pierwszego stanu To jest miejsce, do którego trafia komputer, gdy użytkownik naciśnie klawisz na klawiaturze, który odpowiada przyjęciu pojedynczej wartości. W tym stanie komputer wysyła do urządzenia znak inicjujący NUL i czeka na odpowiedź ze znakiem ACK lub NAK. Jeżeli otrzymano potwierdzenie ACK, inicjalizacja przebiegała normalnie i można kontynuować pracę – przejdź do kolejnego stanu zgodnie ze strzałką 2 na schemacie. Jeśli zostanie odebrany komunikat NAK, operacja powinna zostać zatrzymana, a komputer powinien przejść do ostatecznego stanu Gotowe oznaczonego strzałką 1. Stan gotowości W tym stanie komputer przygotowuje się do odbioru znaków, które będą stanowić wartość żądaną z mikrokomputera. Istnieją dwa żądania wysłania wartości. Pierwsze to żądanie wartości normalnej; odpowiada znakowi XON. Drugie żądanie to żądanie ponownego wysłania ostatniej wartości. Jest to konieczne, jeśli wartość nie została w pełni zaakceptowana w określonym czasie obiektywnym lub zostały przyjęte nieprawidłowe znaki nie mieszczące się w przedziałach od <0> do <9> i od do Następnie po przygotowaniu do odbioru symboli wartości następuje jedno z dwóch powyższych żądań do naszego urządzenia, po czym komputer przechodzi wzdłuż strzałki 4 do stanu odbioru wartości. Stan odbioru Tutaj komputer PC po prostu odczytuje trzy znaki wartości zmierzonej i przeliczonej przez ADC. Jak wspomniano wcześniej, komputer czeka na znak przez pewien obiektywny czas. Jeżeli w tym czasie znak nie został odczytany, wówczas sytuację tę interpretuje się jako błędną, tj. wystąpił błąd we/wy. Nawiasem mówiąc, przy dość dużych prędkościach wymiany informacji (ponad 19200 bps) lub podczas pracy w systemie operacyjnym MS-Windows (dowolna wersja) często zdarza się, że komputer otrzymuje tylko dwa z trzech wysyłanych do niego znaków, a czasami nawet mniej - jeden. Aby zapobiec „zawieszaniu się” komputera – oczekiwaniu w nieskończoność na brakujący lub pominięty znak – wprowadzono pewien czas, aby ograniczyć to oczekiwanie. Niestety, te pominięcia nie są wykrywane przez sprzęt. Implementacja ta definiuje dwa rodzaje limitów czasu, które użytkownik może określić za pomocą klawiatury. Pierwszy typ to limit czasu dla pierwszego z 1 znaków. Dzięki niemu urządzenie spokojnie, nigdzie się nie spiesząc, odmierzy, zdigitalizuje potrzebną nam liczbę i zamieni ją na symboliczny odpowiednik. Drugi typ to limit czasowy na przesłanie drugiego i trzeciego znaku. Przejdźmy teraz do możliwych przejść ze stanu Odbieranie do innych stanów. Jeżeli w wyznaczonym czasie nie zostaną odebrane wszystkie 3 znaki wartości, wówczas komputer musi poprosić nasze urządzenie o ponowne przesłanie wartości. Sytuacja ta odpowiada przejściu wzdłuż strzałki 5, tj. komputer wysyła żądanie z symbolem NAK i wraca do stanu Gotowy. Jeśli w trakcie odbioru komputer wykrył błąd wejścia/wyjścia (a komputer ma możliwość prostej analizy rejestru stanu portu szeregowego), wówczas lepiej jest przywrócić zarówno komputer, jak i mikrokomputer do stanu pierwotnego, tj. powtórzyć inicjalizację. Dlatego na schemacie występuje również strzałka 3. I wreszcie, jeśli komputer odebrał wszystkie trzy znaki z urządzenia, to przechodzi w stan analizy otrzymanej wartości - w stan Odebrany wzdłuż strzałki 8. Publikacja: cxem.net Zobacz inne artykuły Sekcja Mikrokontrolery. Czytaj i pisz przydatne komentarze do tego artykułu. Najnowsze wiadomości o nauce i technologii, nowa elektronika: Nowy sposób kontrolowania i manipulowania sygnałami optycznymi
05.05.2024 Klawiatura Primium Seneca
05.05.2024 Otwarto najwyższe obserwatorium astronomiczne na świecie
04.05.2024
Inne ciekawe wiadomości: ▪ Gry wideo na mapie świata rzeczywistego ▪ Wysokonapięciowe inteligentne moduły zasilania o zwiększonej obciążalności prądowej ▪ Świecący bandaż ostrzeże o zapaleniu oparzenia Wiadomości o nauce i technologii, nowa elektronika
Ciekawe materiały z bezpłatnej biblioteki technicznej: ▪ Sekcja serwisu Modelowanie. Wybór artykułu ▪ artykuł Jak patrzeć w wodę. Popularne wyrażenie ▪ artykuł Co to jest gaz? Szczegółowa odpowiedź ▪ Artykuł z Hydrastisa. Legendy, uprawa, metody aplikacji
Zostaw swój komentarz do tego artykułu: Wszystkie języki tej strony Strona główna | biblioteka | Artykuły | Mapa stony | Recenzje witryn www.diagram.com.ua |