STM32Cube ułatwienie tworzenia oprogramowania
|
|
- Mikołaj Świderski
- 7 lat temu
- Przeglądów:
Transkrypt
1 Krok po kroku Kursy EP STM32Cube ułatwienie tworzenia oprogramowania Mikrokontrolery STM32 tworzą ogromną rodzinę procesorów z rdzeniem ARM Cortex. W jej skład wchodzą zarówno nieskomplikowane jednostki (np. STM32F0), jak i zaawansowane (np. STM32F4), czy najnowsze STM32F7 z rdzeniem Cortex- M7. Powoduje to pewne utrudnienia na wstępnym etapie tworzenia programu, w których rozwiązaniu pomaga STM32Cube. Mikrokontrolery 32-bitowe są przeznaczone do bardziej wymagających zadań sterowania i kontroli i z tego powodu wyposażono je w wiele modułów funkcjonalnych i konfigurowalny, rozbudowany układ taktowania. Z powodu różnych zadań stawianych mniej i bardziej zaawansowanym konstrukcjom nie jest możliwe, aby konfigurowanie na przykład modułów peryferyjnych w STM32F0 mogło odbywać się w taki sam sposób, jak STM32F4. Również w obrębie tej samej linii produktów mogą występować spore różnice wynikające z wyposażenia poszczególnych układów. To wszystko powoduje, że wstępny etap tworzenia oprogramowania polegający na konfigurowaniu mikrokontrolera, tj. funkcji wyprowadzeń, kontrolera przerwań, obwodów taktowania oraz napisaniu prostych driverów urządzeń peryferyjnych może być bardziej pracochłonny, niż wykonanie właściwej aplikacji. Szczególnie uciążliwe jest zapoznawanie się z dokumentacją zawierającą opis rejestrów konfiguracyjnych i wielu programistów nie miałoby nic przeciw temu, aby ktoś wykonał za nich ten etap pracy. Programistom Corteksów oddano do dyspozycji bibliotekę CMSIS (Cortex Microcontroller Software Interface Standard). Tworzy ona uniwersalny interfejs programowy, który umożliwia obsługę układów peryferyjnych i rdzenia Cortex, wykorzystując do tego celu zestandaryzowane funkcje, makra i definicje. Funkcje CMSIS wspierają też użycie systemów operacyjnych czasu rzeczywistego, middleware, oraz aplikacji używających interfejsów komunikacyjnych np. I 2 C, UART, SPI, Ethernet itp. Każdy z producentów mikrokontrolerów dostarcza swoje implementacje bibliotek z funkcjami obsługującymi własne peryferia. Idea CMSIS opiera się na założeniu, że programy pisane dla mikrokontrolerów z rdzeniem Cortex wytwarzanych przez różnych producentów mogą być łatwo przenoszone na różne platformy sprzętowe. Drugim założeniem było uproszczenie etapu konfigurowania i inicjowania modułów peryferyjnych oraz rdzenia. Żeby było to możliwe, funkcje CMSIS muszą charakteryzować się pewnym stopniem abstrakcji. Oznacza to, że ukrywają przed programistą działania na rejestrach konfiguracyjnych. Tworzy się w ten sposób umowna warstwa HAL (Hardware Abstraction Layer). Takie podejście zostało różnie odebrane w środowisku programistów. Część z nich zaczęła chętnie stosować gotowe biblioteki, ale dla innych zastosowanie CMSIS było tylko niepotrzebnym komplikowaniem oprogramowania. Wątpliwości czy niechęć wynikały po części z przyzwyczajeń i chęci panowania nad wszystkim, co się dzieje w programie. Trochę przypominało to przejście od programowania w asemblerze do programowania w C. Innym dużo poważniejszym argumentem przeciwko stosowaniu CMSIS była spora liczba błędów i nadmierne wykorzystywanie zasobów mikrokontrolera. Dodatkowo, procedury obsługi modułów peryferyjnych potrafiły ELEKTRONIKA PRAKTYCZNA 7/
2 Rysunek 1. Okno startowe STM32CubeMX czekać w nieskończoność na zmianę stanu jakiegoś bitu skutecznie zatrzymując działanie całej aplikacji. Dlatego znaczna cześć programistów wybrała rozwiązanie pośrednie: patrzymy jak to zrobiono w CMSIS i na tej podstawie robimy po swojemu. Ponieważ CMSIS jest dostępne już od wielu lat, to większość błędów zostało zauważonych i poprawionych, a funkcje zoptymalizowane i dostosowane do wykorzystania w różnych konfiguracjach implementacji interfejsu API: polling, przerwania lub DMA. Jednak samo użycie bibliotek, chociaż sporo ułatwia (przy założeniu, że nie mają błędów), to nie zwalnia w całości od konieczności ręcznego skonfigurowania mikrokontrolera. I tutaj z pomocą przychodzi oprogramowanie STM STM32Cube. Ideą przyświecającą powstaniu STM Cube było ułatwienie zadania zastosowania mikrokontrolera przez znaczne zredukowanie wysiłku włożonego w projekt i tym samym ograniczenie czasu potrzebnego na jego wykonanie. Oprogramowanie STM32Cube składa się z: Graficznego środowiska STM32CubeMX generującego kod w języku C na podstawie projektu. Obszernej platformy programowej dostarczanej osobno dla każdej z rodzin mikrokontrolerów i zawierającą warstwę STM32Cube HAL zapewniającą obsługę wszystkich mikrokontrolerów STM32 oraz zgodne z tą warstwą komponenty programowe middleware, takie jak: RTOS, stos USB, stos TCP/IP i biblioteka funkcji graficznych. Rysunek 2. Okno wyboru mikrokontrolera Pracę z STM32Cube rozpoczynamy od pobrania ze strony stm.com i zainstalowania pakietu STM32CubeMX. Jak w innych tego typu programach narzędziowych praca odbywa się w oparciu o plik projektu. Na ekranie powitalnym pokazanym na rysunku 1 są wyróżnione dwie akcje: 1. Tworzenie nowego projektu New Project. 2. Otwieranie wcześniej zapisanego projektu Load Project. Zaczynamy od tworzenia nowego projektu. Jednym z pierwszych zadań konstruktora urządzeń embeded jest wybór mikrokontrolera. Nie jest to zadanie łatwe nawet wtedy, gdy zdecydowaliśmy się na mikrokontroler rodziny z STM32. Portfolio wyrobów tego producenta jest ogromne i składa się z wielkiej liczby produkowanych układów, różniących się nie tylko wyposażeniem w moduły peryferyjne, ale także wielkością pamięci i architekturą rdzenia. Dlatego nawet przejrzenie jedynie pierwszych stron kart katalogowych może zabrać sporo czasu. Oprogramowanie STM32CubeMX pomaga w poruszaniu się w gąszczu możliwości oferując rozbudowany moduł selektora mikrokontrolerów (rysunek 2). Okno selektora ma dwie zakładki: MCU Selector i Board Selector. Wybierając MCU Selector można filtrować potrzebne zasoby wybierając: Serię mikrokontrolerów: STM32F0, STM32F1, STM32F2, STM32F3, STM32F4, STM32L0,i STM32L1. Linię produktów. Na przykład, STM32F0x0 Value Line. Obudowę układu. Na przykład, LQFP64. Inne filtry. Na przykład, ze względu na liczbę wyprowadzeń I/O. Jako alternatywę dla filtrów można w oknie Peripherial Selection wybrać mikrokontroler ze względu na rodzaj i liczbę układów peryferyjnych. Zakładka MCU Selector pozwala na znaczne zawężenie obszaru poszukiwań i w konsekwencji wybranie mikrokontrolera odpowiedniego dla urządzenia. Duga zakładka Board Selector jest używana, gdy chcemy wykonać projekt w oparciu o płytkę ewaluacyjną oferowaną przez STM. Zestawów ewaluacyjnych jest sporo. Zgodnie z intencją producenta podzielono je na trzy grupy: Płytki Nucleo z mikrokontrolerami z serii STM32F0, STM32F3, STM32F4, STM32L0, STM32L1. Płytki Discovery z mikrokontrolerami z serii STM32F0, STM32F3, STM32F4, STM32L0, STM32L1. Płytki Eval Board z mikrokontrolerami z serii STM32F0, STM32F1, STM32F2, STM32F3, STM32F4, STM32L1 Podobnie jak w zakładce MCU Selector, tak i tu można filtrować ustalając odpowiednie kryteria: producenta (na razie tylko STM), rodzaju płytki (Nucleo, Discovery, Eval) i serię MCU (STM32F0, STM32F1 i inne). Dodatkowo, wybór płytki ułatwia zdjęcie wyświetlające się po prawej stronie okna (rysunek 3). Dla potrzeb przetestowania STM32 Cube wybrałem moduł STM32F4Discovery z mikrokontrolerem STM32F407VG. W zakładce Peripherial Selection można zobaczyć (oznaczone na zielono) układy peryferyjne możliwe do wykorzystania: akcelerometr, układ audio, przyciski, kompas, żyroskop, interfejs USB. Pod zdjęciem Krok po kroku Kursy EP 88 ELEKTRONIKA PRAKTYCZNA 7/2015
3 Krok po kroku Kursy EP modułu są wyświetlone jego podstawowe parametry, a po kliknięciu na przycisk Load User Manual jest automatycznie pobierana i otwierana instrukcja użytkownika. Dodatkowo, po kliknięciu na Link to ST WebSite otwiera się firmowa strona z opisem modułu i wszystkim dostępnymi materiałami, takimi jak: noty aplikacyjne, przykładowe programy, schematy itp. Zatwierdzenie wybranej płytki powoduje przejście do kolejnego etapu tworzenia projektu. Otwiera się okno główne projektu z zakładkami: Pinout, Clock Configuration, Configuration, Power Consumtion Calculator. Za pomocą zakładki Pinout nadaje się wyprowadzeniom mikrokontrolera funkcje alternatywne. Wyprowadzenie może być wejściem lub wyjściem cyfrowym, wejściem analogowym lub spełniać rolę wyprowadzenia sygnałów modułów peryferyjnych. Okno zakładki Pinout składa się z rozwijanej listy z nazwami modułów peryferyjnych i okna z narysowaną obudową mikrokontrolera z wyprowadzeniami (rysunek 4). Wyprowadzenia są oznaczane następującymi kolorami: Szarym, gdy do wyprowadzenia nie jest przypisana żadna funkcja. Zielonym, gdy do wyprowadzenia jest przypisana i zdefiniowana funkcja (na przykład sygnał modułu I 2 C lub wejście/wyjście GPIO). Pomarańczowym, gdy do modułu jest przypisana funkcja, ale nie jest aktywna. Żółtym wyprowadzenia zasilania. Najłatwiej konwencję kolorowania wyprowadzeń pokazać na przykładzie. W tym celu: 1. Klikamy na wyprowadzenie PC5 i wybieramy GPIO_ Input. Ponieważ funkcja linii wejścia/wyjścia nie wymaga dodatkowej konfiguracji, to wyprowadzenie jest wyświetlane w kolorze zielonym. 2. Jeżeli chcemy, aby wyprowadzenie PC5 było wejściem przetwornika A/C, to ponownie na nie klikamy i wybieramy ADC1_IN15. Teraz wyprowadzenie jest wyświetlane na na pomarańczowo. 3. Aby wyprowadzenie zdefiniowane jako ADC1_ IN15 zostało wyświetlone na zielono, w oknie Configuration trzeba wybrać ADC1 i zaznaczyć IN15 (rysunek 5). W taki sam sposób są konfigurowane pozostałe wyprowadzenia używane w projekcie. Każdy układ peryferyjny prawidłowo przypisany do wyprowadzenia jest wyświetlany na zielono w oknie Configurations zakładki Pinout. Ma to też inne konsekwencje: prawidłowo przypisany do wyprowadzenia moduł peryferyjny zostanie wyświetlony w oknie Configuration, w którym można go dokładnie skonfigurować. Definiowanie przypisania w oknie Pinout nie pozwala na przypisanie funkcji alternatywnej już zajętemu wyprowadzeniu. W naszym przykładzie w konfiguracji przypisania przetwornika ADC1 są zaznaczone na czerwono wejścia IN0, IN4. IN5, IN6, IN7, IN10 oraz IN3. Na przykład, wyprowadzenie PA4 jest już przypisane do I2S3_WS i nie może pełnić roli wejścia ADC1_IN4. STM32CubeMX skutecznie zabezpiecza przed próbą przypisania do jednego wyprowadzenia funkcji więcej niż jednego modułu peryferyjnego. Po przypisaniu do wyprowadzenia PC5 wejścia IN15 przetwornika ADC1 przechodzimy do zakładki Configuration, w której przetwornik zostanie skonfigurowany. Zakładka ta jest podzielona na dwa okna. Rysunek 3. Okno wyboru płytki ewaluacyjnej Rysunek 4. Okno Pinout W oknie Configurations są wyświetlone wszystkie elementy, które mogą zostać skonfigurowane w projekcie. W przykładowym projekcie są to elementy Middleware FATFS i FREERTOS oraz moduły peryferyjne możliwe do skonfigurowania, w tym również przetwornik ADC1. Drugie okno zawiera pola: Middlewares, Multimedia, Control, Analog, Connectivity i System. W polu Analog jest wyświetlana ikona przetwornika ADC1, a w polu System ikony: DMA, GPIO, NVIC i RCC. Żeby skonfigurować przetwornik trzeba kliknąć na ikonę ADC1. Wtedy w polu Analog zostanie wyświetlone okno ADC1 Configuration (rysunek 6). Okno konfiguracji ma cztery zakładki: Parameter Settings, NVIC Settings, DMA Settings i GPIO Settings. Za pomocą Parameter Settings ustawia się parametry pracy przetwornika, miedzy innymi: tryb pracy, częstotliwość taktowania (preskaler PCLK2), rozdzielczość w bitach, sposób umieszczenia danych w słowie (data Alignment) itp. Za pomocą zakładki NVIC odblokowuje się przerwania od modułów ADC1, ADC2 i ADC3. W zakładce DMA można zdefiniować kanał DMA do przesyłania danych konwersji bezpośrednio do pamięci. Ostatnia zakładka GPIO Settings jest przeznaczona do konfigurowania trybu pracy wyprowadzenia ADC1_ IN15. Ponieważ w trakcie Rysunek 5. Konfigurowanie wyprowadzenia PC5 w roli wejścia ADC1_IN15 ELEKTRONIKA PRAKTYCZNA 7/
4 Rysunek 6. Konfiguracja przetwornika ADC1 przypisywania wejście PC5 zostało skonfigurowane jako Analog Input, to w naszym przypadku nie potrzeba wykonywać tu żadnych zmian. Można teraz zobaczyć jak STM32CubeMX poradzi sobie z wygenerowaniem plików źródłowych dla ustalonej konfiguracji przetwornika A/C. W pierwszym kroku trzeba określić sposób generowania plików źródłowych. Klikamy na Project Settings (Alt+P). Trzeba tu ustawić: Nazwę projektu. Ścieżkę dostępu do katalogu projektu. Środowisko projektowe IDE. STM32CubeMX może wygenerować kompletny projekt dla EWARM, uvision4 i uvision 5 (MDK-ARM), True STUDIO i SW4STM32 wybrałem pakiet uvision4 firmy Keil (ARM). W zakładce Code Generator okna Project Settings można zdecydować czy generator kodu skopiuje wszystkie biblioteki warstwy HAL do projektu, czy tylko skopiuje tylko te biblioteki, które są potrzebne po wygenerowaniu kodu przez STM32CubeMX. W projektach generowanych przez tego typu aplikacje zawsze pojawia się problem, co zrobić z kodem już napisanym przez użytkownika w momencie, gdy ten zdecyduje się na zmianę konfiguracji modułów peryferyjnych lub middleware przez STM32CubeMX. Najlepiej, gdyby automatycznie nowo generowany kod nie niszczył kodu użytkownika, a tylko robił w plikach niezbędne zmiany konfiguracyjne. Dlatego w opcjach generowania kodu należy zaznaczyć Keep User Code when re-generatting. Pewnym ograniczeniem tej funkcji jest to, że kod przeznaczony do zachowania musi znaleźć się pomiędzy komentarzami /* USER CODE BEGIN */ i /* USER CODE END */. Jeżeli nasze procedury łącznie z definicjami zmiennych zostaną umieszczone poza komentarzami, to przy kolejnym generowaniu projektu z konfiguracją zostaną usunięte. Trzeba o tym pamiętać, żeby nie zniszczyć efektów swojej pracy. Kod inicjalizacji przetwornika wygenerowany przez STM32CubeMX pokazano na listingu 1. Skonfigurowany przetwornik trzeba jeszcze zainicjalizować. Inicjalizacja będzie wymagała włączenia taktowania modułu A/C i ustawienia wyprowadzenia PC5 jako wejścia analogowego. STM32Cube MX automatycznie generuje funkcję inicjalizacyjną HAL_ADC_MspInit (Msp od MCU support package). Ta funkcja jest umieszczana przez generator w pliku stm32f4xx_hal_msp.c, a jej wywołanie wygląda następująco HAL_ADC_MspInit(&hadc1);. Krok po kroku Kursy EP Listing 1. Konfiguracja przetwornika ADC1 wygenerowana przez STM32Cube MX void MX_ADC1_Init( void) ADC_ChannelConfTypeDef sconfig; /* Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of conversion) */ hadc1.instance = ADC1; hadc1.init.clockprescaler = ADC_CLOCKPRESCALER_PCLK_DIV4; hadc1.init.resolution = ADC_RESOLUTION10b; hadc1.init.scanconvmode = DISABLE; hadc1.init.continuousconvmode = DISABLE; hadc1.init.discontinuousconvmode = DISABLE; hadc1.init.externaltrigconvedge = ADC_EXTERNALTRIGCONVEDGE_NONE; hadc1.init.dataalign = ADC_DATAALIGN_RIGHT; hadc1.init.nbrofconversion = 1; hadc1.init.dmacontinuousrequests = DISABLE; hadc1.init.eocselection = EOC_SINGLE_CONV; HAL_ADC_Init(&hadc1); /* Configure for the selected ADC regular channel its corresponding rank in the sequencer and its sample time. */ sconfig.channel = ADC_CHANNEL_15; sconfig.rank = 1; sconfig.samplingtime = ADC_SAMPLETIME_3CYCLES; HAL_ADC_ConfigChannel(&hadc1, &sconfig); Listing 2. Inicjalizacja przetwornika ADC1 void HAL_ADC_MspInit(ADC_HandleTypeDef* hadc) GPIO_InitTypeDef GPIO_InitStruct; if(hadc->instance==adc1) /* USER CODE BEGIN ADC1_MspInit 0 */ /* USER CODE END ADC1_MspInit 0 */ /* Peripheral clock enable */ ADC1_CLK_ENABLE(); /**ADC1 GPIO Configuration PC > ADC1_IN15 */ GPIO_InitStruct.Pin = GPIO_PIN_5; GPIO_InitStruct.Mode = GPIO_MODE_ANALOG; GPIO_InitStruct.Pull = GPIO_NOPULL; HAL_GPIO_Init(GPIOC, &GPIO_InitStruct); /* USER CODE BEGIN ADC1_MspInit 1 */ /* USER CODE END ADC1_MspInit 1 */ Kolejną ważną konfiguracją mikrokontrolera jest ustawienie taktowania. Układ taktowania nowoczesnych mikrokontrolerów jest bardzo rozbudowany w porównaniu z nieskomplikowanymi konstrukcjami sprzed kilkunastu lat. Możliwość zaprogramowania w szerokim zakresie częstotliwości taktowania rdzenia i osobno częstotliwości taktowania modułów peryferyjnych wymusiła zastosowanie programowanych układów PLL i programowych układów przełączających. Ponadto, można wybrać źródło zegara: z oscylatora kwarcowego z dołączanym zewnętrznym rezonatorem lub z wewnętrznego, precyzyjnego oscylatora RC o stałej częstotliwości. Ta elastyczność w konfigurowaniu taktowania jest okupiona skomplikowaniem układu i dlatego sprawia trudności nawet 90 ELEKTRONIKA PRAKTYCZNA 7/2015
5 Krok po kroku Kursy EP Listing 3. Ustawienia taktowania mikrokontrolera /* System Clock Configuration */ void SystemClock_Config(void) RCC_OscInitTypeDef RCC_OscInitStruct; RCC_ClkInitTypeDef RCC_ClkInitStruct; PWR_CLK_ENABLE(); HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; RCC_OscInitStruct.HSEState = RCC_HSE_ON; RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; RCC_OscInitStruct.PLL.PLLM = 8; RCC_OscInitStruct.PLL.PLLN = 336; RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2; RCC_OscInitStruct.PLL.PLLQ = 7; HAL_RCC_OscConfig(&RCC_OscInitStruct); RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_SYSCLK RCC_CLOCKTYPE_PCLK1 RCC_CLOCKTYPE_PCLK2; RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4; RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2; HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_5); bardziej doświadczonym programistom, nie mówiąc już o poczatkujących. Żeby zadanie konfiguracji uczynić tak łatwym, jak to tylko możliwe, w pakiecie STM32Cube MX umieszczono pokazaną na rysunku 7 zakładkę Clock Configuration z graficznym przedstawieniem układu taktowania. Domyślnie układ jest tak skonfigurowany żeby rdzeń był taktowany z maksymalną częstotliwością taktowania równą w tym wypadku 168 MHz. Źródłem sygnału zegarowego jest oscylator kwarcowy HSE o częstotliwości 8 MHz umieszczony na płytce STM32F4Discovery. Alternatywnie można wybrać oscylator RC HSI o częstotliwości taktowania 16 MHz. Wyboru oscylatora dokonuje się w bloku PLL Source Mux. Wysoką częstotliwość taktowania uzyskuje się w układzie powielania częstotliwości z pętlą PLL (Main PLL), w którym częstotliwość wejściowa jest najpierw powielana przez 336, a potem dzielona przez 2. Sygnał z wyjścia układu PLL jest doprowadzony do wejścia selektora System Clock Mux. Oprócz konfigurowania ścieżki sygnału taktowania zakładka Clock Configuration pokazuje na bieżąco, jakie częstotliwości są ustawione dla wszystkich bloków mikrokontrolera: rdzenia, magistrali AHB, modułów peryferyjnych APAB1, APB2 itp. Po wygenerowaniu kodu ustawienia z zakładki Clock Configurator są zapisywane w zamieszczonej na listingu 3 funkcji SystemClockConfig dostępnej w pliku main.c. Moduł STM32F4Discovery ma zamontowane 4 diody LED dołączone do linii portu PD: zieloną do PD12, pomarańczową do PD13, czerwoną do PD14, niebieską do PD15. Jeżeli w projekcie wybierzemy tworzenie oprogramowania dla tego modułu, to w oknie Pinout wyprowadzenia tych linii portów zostaną zdefiniowane jako linie wyjściowe i opisane etykietami z nazwami diod, co pokazano na rysunku 8. Spróbujemy teraz tak wykonać projekt, aby cyklicznie zaświecał i gasił jedną lub kilka diod. Do tego celu będzie nam potrzebne odliczanie opóźnienia. Można to zrobić programowo, ale lepszym wyjściem jest użycie licznika i systemu przerwań. Do odliczania opóźnień wybrałem licznik TIM10. Aby go użyć, w zakładce Pinout trzeba wybrać TIM10 i zaznaczyć Activated. Wtedy ikona TIM10 zostanie wyświetlona w okienku Control zakładki Configuration, jak na rysunku 9. Wybrany licznik TIM 10 trzeba teraz skonfigurować. Jak pokazano na rys. 7 liczniki są taktowane częstotliwością 84 MHz z APB1. Rysunek 7. Zakładka Clock Configuration TIM10 jest licznikiem 16-bitowym z funkcją automatycznego przeładowania oraz z 16-bitowym preskalerem. Jego schemat blokowy pokazano na rysunku 10. W trybie zliczania UP (Upcounting) licznik zlicza od zera do wartości zapisanej do rejestru Auto-reload register. Kiedy zawartość licznika i rejestru Auto-reload są sobie równe, to rejestr licznika jest zerowany i odliczanie rozpoczyna się od nowa. W czasie zerowania licznika może być zgłaszane przerwanie. Rysunek 9. Wybór licznika TIM10 Rysunek 8. Definicja linii diod modułu STM32F4 Discovery ELEKTRONIKA PRAKTYCZNA 7/
6 Krok po kroku Kursy EP Rysunek 10. Schemat blokowy licznika TIM10 Listing 4. Inicjalizacja licznika TIM10 void MX_TIM10_Init(void) htim10.instance = TIM10; htim10.init.prescaler = 82; htim10.init.countermode = TIM_COUNTERMODE_UP; htim10.init.period = 1000; htim10.init.clockdivision = TIM_CLOCKDIVISION_DIV1; HAL_TIM_Base_Init(&htim10); TIM10_CLK_ENABLE(); Listing 5. Funkcja obsługi przerwania od TIM10 void TIM1_UP_TIM10_IRQHandler(void) /* USER CODE BEGIN TIM1_UP_TIM10_IRQn 0 */ /* USER CODE END TIM1_UP_TIM10_IRQn 0 */ HAL_TIM_IRQHandler(&htim10); /* USER CODE BEGIN TIM1_UP_TIM10_IRQn 1 */ /* USER CODE END TIM1_UP_TIM10_IRQn 1 */ Listing 6. Procedura przerwania od przepełnienia TIM10 int blink=0; void TIM1_UP_TIM10_IRQHandler(void) /* USER CODE BEGIN TIM1_UP_TIM10_IRQn 0 */ /* USER CODE END TIM1_UP_TIM10_IRQn 0 */ HAL_TIM_IRQHandler(&htim10); /* USER CODE BEGIN TIM1_UP_TIM10_IRQn 1 */ ++blink; if(blink==1000) HAL_GPIO_TogglePin(GPIOD, GPIO_PIN_15); blink=0; /* USER CODE END TIM1_UP_TIM10_IRQn 1 */ Za pomocą STM32CubeMX tak skonfigurujemy licznik TIM10, aby zgłaszał przerwanie co 1 ms, czyli 1000 razy na sekundę. W pierwszym kroku trzeba ustawić zliczanie w górę (UP) i preskaler na 82, aby na wejściu rejestru licznika była częstotliwość równa 1 MHz. Jeżeli teraz do Auto-reload register wpiszemy liczbę 1000, to licznik będzie się przepełniał z częstotliwością 1 MHz/1000 = 1 khz, czyli co 1 ms. W zakładce Configuration klikamy na ikonkę TIM10, co powoduje wyświetlenie okna TIM10 Settings. W zakładce Parameter Settings ustawiamy: wartość preskalera równą 82, tryb zliczania UP, okres zliczania równy Aby licznik zgłaszał przerwanie należy z w zakładce NVIC Settings wybrać TIM10 Update Rysunek 11. Konfiguracja TIM10 Interrupt and TOM10 global Interrupt Enabled. Oba ustawienia pokazano na rysunku 11. Na ich podstawie STM32CubeMX wygeneruje kod zawierający pokazaną na listingu 10 funkcję inicjalizacji licznika TIM10 oraz funkcję obsługi przerwania listing 5. Należy pamiętać o tym, że kod generowany przez STM32CubeMX zawiera jedynie procedury konfigurujące moduły peryferyjne. Jeżeli chcemy, aby te układy zaczęły działać, to musimy je samodzielnie uruchomić wywołując odpowiednią funkcję. W tym przykładzie timer zostanie skonfigurowany, ale nie będzie zliczać impulsów wejściowych. Aby wszystko działało musimy wywołać funkcję HAL_TIM_Base_Start_IT(&htim10); uruchamiającą licznik i przerwania. Na końcu pozostaje w obsłudze przerwania zaświecać i gasić wybrana diodę. Ponieważ przerwanie jest zgłaszane co 1 ms, to trzeba odliczyć 1000 przerwań, aby dioda pulsowała co 1 sekundę. Do tego celu zostanie użyta zmienna globalna blink, jak na listingu 6. Tomasz Jabłoński, EP 92 ELEKTRONIKA PRAKTYCZNA 7/2015
2. Architektura mikrokontrolerów PIC16F8x... 13
Spis treści 3 Spis treœci 1. Informacje wstępne... 9 2. Architektura mikrokontrolerów PIC16F8x... 13 2.1. Budowa wewnętrzna mikrokontrolerów PIC16F8x... 14 2.2. Napięcie zasilania... 17 2.3. Generator
1. Wprowadzenie Programowanie mikrokontrolerów Sprzęt i oprogramowanie... 33
Spis treści 3 1. Wprowadzenie...11 1.1. Wstęp...12 1.2. Mikrokontrolery rodziny ARM...13 1.3. Architektura rdzenia ARM Cortex-M3...15 1.3.1. Najważniejsze cechy architektury Cortex-M3... 15 1.3.2. Rejestry
MARM. Laboratorium 1 system zegarów, porty wejścia/wyjścia. M. Suchenek
MARM M. Suchenek Laboratorium 1 system zegarów, porty wejścia/wyjścia Celem laboratorium jest zapoznanie się ze środowiskiem uruchomieniowym Keil µvision, w tym konfiguracja środowiska, systemu zegarów,
Sprawozdanie z projektu MARM. Część druga Specyfikacja końcowa. Prowadzący: dr. Mariusz Suchenek. Autor: Dawid Kołcz. Data: r.
Sprawozdanie z projektu MARM Część druga Specyfikacja końcowa Prowadzący: dr. Mariusz Suchenek Autor: Dawid Kołcz Data: 01.02.16r. 1. Temat pracy: Układ diagnozujący układ tworzony jako praca magisterska.
STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107
Zestaw uruchomieniowy dla mikrokontrolerów STM32F107 STM32Butterfly2 Zestaw STM32Butterfly2 jest platformą sprzętową pozwalającą poznać i przetestować możliwości mikrokontrolerów z rodziny STM32 Connectivity
Instytut Teleinformatyki
Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikrokontrolery i Mikroprocesory Zapoznanie się ze środowiskiem CUBE, obsługa portów I/O laboratorium: 02 autor:
1.2. Architektura rdzenia ARM Cortex-M3...16
Od Autora... 10 1. Wprowadzenie... 11 1.1. Wstęp...12 1.1.1. Mikrokontrolery rodziny ARM... 14 1.2. Architektura rdzenia ARM Cortex-M3...16 1.2.1. Najważniejsze cechy architektury Cortex-M3... 16 1.2.2.
Porty GPIO w mikrokontrolerach STM32F3
Zachodniopomorski Uniwersytet Technologiczny WYDZIAŁ ELEKTRYCZNY Katedra Inżynierii Systemów, Sygnałów i Elektroniki LABORATORIUM Podstawy Programowania Mikroprocesorów i Procesorów DSP Porty GPIO w mikrokontrolerach
Wstęp...9. 1. Architektura... 13
Spis treści 3 Wstęp...9 1. Architektura... 13 1.1. Schemat blokowy...14 1.2. Pamięć programu...15 1.3. Cykl maszynowy...16 1.4. Licznik rozkazów...17 1.5. Stos...18 1.6. Modyfikowanie i odtwarzanie zawartości
Programowanie mikrokontrolerów 2.0
4.1 Programowanie mikrokontrolerów 2.0 Taktowanie Marcin Engel Marcin Peczarski Instytut Informatyki Uniwersytetu Warszawskiego 22 listopada 2016 4.2 Drzewo taktowania w STM32F411 Źródło: RM0383 Reference
Laboratorium Procesorów Sygnałowych
Laboratorium Procesorów Sygnałowych Moduł STM32F407 Discovery GPIO, C/A, akcelerometr I. Informacje wstępne Celem ćwiczenia jest zapoznanie z: Budową i programowaniem modułu STM32 F4 Discovery Korzystaniem
Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury
Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury Cel ćwiczenia: Głównym celem ćwiczenia jest nauczenie się obsługi klawiatury. Klawiatura jest jednym z urządzeń wejściowych i prawie zawsze występuje
3. Sygnały zegarowe i ich konfiguracja, mechanizmy bezpieczeństwa... 47
Spis treści 3 1. Rdzeń Cortex-M3...9 1.1. Firma ARM i jej wyroby...10 1.2. Rodzina rdzeni Cortex...12 1.3. Ogólne spojrzenie na architekturę rdzenia Cortex-M3...13 1.4. Rejestry podstawowe...16 1.5. Przestrzeń
STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107
Zestaw uruchomieniowy dla mikrokontrolerów STM32F107 STM32 Butterfly Zestaw STM32 Butterfly jest platformą sprzętową pozwalającą poznać i przetestować możliwości mikrokontrolerów z rodziny STM32 Connectivity
Timery w mikrokontrolerach STM32F3
Zachodniopomorski Uniwersytet Technologiczny WYDZIAŁ ELEKTRYCZNY Katedra Inżynierii Systemów, Sygnałów i Elektroniki LABORATORIUM Podstawy Programowania Mikroprocesorów i Procesorów DSP Timery w mikrokontrolerach
Instrukcja podstawowego uruchomienia sterownika PLC LSIS serii XGB XBC-DR20SU
Instrukcja podstawowego uruchomienia sterownika PLC LSIS serii XGB XBC-DR20SU Spis treści: 1. Instalacja oprogramowania XG5000 3 2. Tworzenie nowego projektu i ustawienia sterownika 7 3. Podłączenie sterownika
GUIX Studio (1) Projekt e2studio
Krok po kroku Kursy EP GUIX Studio (1) Każda aplikacja wymagająca interakcji z użytkownikiem musi być wyposażona w interfejs użytkownika. Współcześnie zwykle do tego celu używa się wyświetlaczy graficznych.
SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701.
SigmaDSP - zestaw uruchomieniowy. SigmaDSP jest niedrogim zestawem uruchomieniowym dla procesora DSP ADAU1701 z rodziny SigmaDSP firmy Analog Devices, który wraz z programatorem USBi i darmowym środowiskiem
Szkolenia specjalistyczne
Szkolenia specjalistyczne AGENDA Programowanie mikrokontrolerów w języku C na przykładzie STM32F103ZE z rdzeniem Cortex-M3 GRYFTEC Embedded Systems ul. Niedziałkowskiego 24 71-410 Szczecin info@gryftec.com
Instrukcja obsługi programatora AVR Prog USB v2
Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2, STK500 v2 Strona 1 Zawartość 1. Instalacja... 3 2. Instalacja sterowników w trybie HID.... 3 3. Programowanie
Ćwiczenia z S7-1200. S7-1200 jako Profinet-IO Controller. FAQ Marzec 2012
Ćwiczenia z S7-1200 S7-1200 jako Profinet-IO Controller FAQ Marzec 2012 Spis treści 1 Opis zagadnienie poruszanego w ćwiczeniu. 3 1.1 Wykaz urządzeń..... 3 2 KONFIGURACJA S7-1200 PLC.. 4 2.1 Nowy projekt.
Ćwiczenia z S7-1200. Komunikacja S7-1200 z miernikiem parametrów sieci PAC 3200 za pośrednictwem protokołu Modbus/TCP.
Ćwiczenia z S7-1200 Komunikacja S7-1200 z miernikiem parametrów sieci PAC 3200 za pośrednictwem protokołu Modbus/TCP FAQ Marzec 2012 Spis treści 1 Opis zagadnienie poruszanego w ćwiczeniu. 3 1.1 Wykaz
LITEcompLPC1114. Zestaw ewaluacyjny z mikrokontrolerem LPC1114 (Cortex-M0) Sponsorzy:
LITEcompLPC1114 Zestaw ewaluacyjny z mikrokontrolerem LPC1114 (Cortex-M0) Bezpłatny zestaw dla Czytelników książki Mikrokontrolery LPC1100. Pierwsze kroki LITEcompLPC1114 jest doskonałą platformą mikrokontrolerową
Instytut Teleinformatyki
Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikrokontrolery i Mikroprocesory Przetwornik ADC laboratorium: 04 autor: mgr inż. Katarzyna Smelcerz Kraków, 2016
dokument DOK 02-05-12 wersja 1.0 www.arskam.com
ARS3-RA v.1.0 mikro kod sterownika 8 Linii I/O ze zdalną transmisją kanałem radiowym lub poprzez port UART. Kod przeznaczony dla sprzętu opartego o projekt referencyjny DOK 01-05-12. Opis programowania
Instrukcja do oprogramowania ENAP DEC-1
Instrukcja do oprogramowania ENAP DEC-1 Do urządzenia DEC-1 dołączone jest oprogramowanie umożliwiające konfigurację urządzenia, rejestrację zdarzeń oraz wizualizację pracy urządzenia oraz poszczególnych
Instrukcja obsługi programatora AVR Prog USB v2
Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2, STK500 v2 www.and-tech.pl Strona 1 Zawartość Instrukcja obsługi programatora AVR Prog USB v2, STK500 v2
Electronic Infosystems
Department of Optoelectronics and Electronic Systems Faculty of Electronics, Telecommunications and Informatics Gdansk University of Technology Electronic Infosystems Microserver TCP/IP with CS8900A Ethernet
Programowanie układów STM32F4 (1)
Programowanie układów STM32F4 (1) W tym kursie, bazując na nieskomplikowanych projektach, zaprezentuję w praktyczny sposób programowanie układów z rodziny STM32F4. Jest to pierwszy artykuł z serii. Przedstawione
Technika mikroprocesorowa. Konsola do gier
K r a k ó w 1 1. 0 2. 2 0 1 4 Technika mikroprocesorowa Konsola do gier W yk o n a l i : P r o w a d z ą c y: P a w e ł F l u d e r R o b e r t S i t k o D r i n ż. J a c e k O s t r o w s k i Opis projektu
Projekt MARM. Dokumentacja projektu. Łukasz Wolniak. Stacja pogodowa
Projekt MARM Dokumentacja projektu Łukasz Wolniak Stacja pogodowa 1. Cel projektu Celem projektu było opracowanie urządzenia do pomiaru temperatury, ciśnienia oraz wilgotności w oparciu o mikrokontroler
1.Wstęp. 2.Generowanie systemu w EDK
1.Wstęp Celem niniejszego ćwiczenia jest zapoznanie z możliwościami debuggowania kodu na platformie MicroBlaze oraz zapoznanie ze środowiskiem wspomagającym prace programisty Xilinx Platform SDK (Eclipse).
LabVIEW PLATFORMA EDUKACYJNA Lekcja 5 LabVIEW i Arduino konfiguracja środowiska i pierwszy program
LabVIEW PLATFORMA EDUKACYJNA Lekcja 5 LabVIEW i Arduino konfiguracja środowiska i pierwszy program Przygotował: Jakub Wawrzeńczak 1. Wprowadzenie Lekcja przedstawia wykorzystanie środowiska LabVIEW 2016
Instytut Teleinformatyki
Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikrokontrolery i Mikroprocesory Timery i przerwania laboratorium: 03 autor: mgr inż. Katarzyna Smelcerz Kraków,
Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski
Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej Systemy wbudowane Witold Kozłowski Zakład Fizyki i Technologii Struktur Nanometrowych 90-236 Łódź, Pomorska 149/153 https://std2.phys.uni.lodz.pl/mikroprocesory/
R o g e r A c c e s s C o n t r o l S y s t e m 5
R o g e r A c c e s s C o n t r o l S y s t e m 5 Nota aplikacyjna nr 036 Wersja dokumentu: Rev. B Integracja Integra (SATEL) Uwaga: Niniejszy dokument dotyczy RACS v5.5 (VISO 1.5.2 lub nowszy) Wprowadzenie
Parametryzacja przetworników analogowocyfrowych
Parametryzacja przetworników analogowocyfrowych wersja: 05.2015 1. Cel ćwiczenia Celem ćwiczenia jest zaprezentowanie istoty działania przetworników analogowo-cyfrowych (ADC analog-to-digital converter),
Instrukcja obsługi programatora AVR Prog USB v2
Instrukcja obsługi programatora AVR Prog USB v2 Instrukcja obsługi programatora AVR Prog USB v2, STK500 v2 www.and-tech.pl Strona 1 Zawartość Instrukcja obsługi programatora AVR Prog USB v2, STK500 v2
Spis treści. Wykaz ważniejszych skrótów Wprowadzenie Rdzeń Cortex-M Rodzina mikrokontrolerów XMC
Wykaz ważniejszych skrótów... 8 1. Wprowadzenie... 9 1.1. Wstęp... 10 1.2. Opis zawartości książki... 12 1.3. Korzyści płynące dla Czytelnika... 13 1.4. Profil Czytelnika... 13 2. Rdzeń Cortex-M0...15
Spis treści. 1 Moduł Modbus TCP 4
Spis treści 1 Moduł Modbus TCP 4 1.1 Konfigurowanie Modułu Modbus TCP................. 4 1.1.1 Lista elementów Modułu Modbus TCP............ 4 1.1.2 Konfiguracja Modułu Modbus TCP.............. 5 1.1.3
1 Moduł Neuronu Cyfrowego SM
1 Moduł Neuronu Cyfrowego SM Moduł Neuronu Cyfrowego SM daje użytkownikowi Systemu Vision możliwość obsługi fizycznych urządzeń Neuronów Cyfrowych podłączonych do Sterownika Magistrali. Moduł odpowiada
Instrukcja obsługi programatora AVR Prog USB v2
Instrukcja obsługi programatora AVR Prog USB v2 Strona 1 Spis treści 1. Instalacja...3 2. Instalacja sterowników w trybie HID....3 3. Programowanie w trybie HID...4 4. Instalacja w trybie COM....5 5. Programowanie
CoDeSys 3 programowanie w języku drabinkowym LD
Notatka Aplikacyjna NA 03004PL Spis treści 1. Wstęp... 2 1.1. Wymagania programowe... 2 2. Tworzenie projektu i dodawanie programu w LD... 3 3. Organizacja okien dla języka LD... 5 4. Składnia języka LD
DOKUMENTACJA PROJEKTU
Warszawa, dn. 16.12.2015r. Student: Artur Tynecki (E.EIM) atynecki@stud.elka.pw.edu.pl Prowadzący: dr inż. Mariusz Jarosław Suchenek DOKUMENTACJA PROJEKTU Projekt wykonany w ramach przedmiotu Mikrokontrolery
MIKROKONTROLERY I MIKROPROCESORY
PLAN... work in progress 1. Mikrokontrolery i mikroprocesory - architektura systemów mikroprocesorów ( 8051, AVR, ARM) - pamięci - rejestry - tryby adresowania - repertuar instrukcji - urządzenia we/wy
Instytut Teleinformatyki
Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikrokontrolery i Mikroprocesory DMA (Direct Memory Access) laboratorium: 05 autor: mgr inż. Katarzyna Smelcerz
STM-owa układanka: Nucleo, AC6, HAL
STM-owa układanka: Nucleo, AC6, HAL Od dłuższego czasu sprzedaż mikrokontrolerów STM32 jest powiązana ze wsparciem dla projektów bazujących na tych układach. Jest to wsparcie polegające zarówno na dystrybucji
Sterbox e-pilot Dla iphone/ipad/ ANDROID
Sterbox e-pilot Dla iphone/ipad/ ANDROID Wersja dla Sterbox od v.4.0 INSTRUKCJA KONFIGURACJI e-pilot oraz Programowanie STERBOX-a E-Pilot To uniwersalna, konfigurowalna aplikacja przeznaczona dla urządzeń
2. Code Composer Studio v4 zintegrowane środowisko projektowe... 41
3 Wstęp...11 1. Procesory serii TMS320F2802x/3x/6x Piccolo... 15 1.1. Organizacja układów procesorowych serii F2802x Piccolo...23 1.2. Organizacja układów procesorowych serii F2803x Piccolo...29 1.3. Organizacja
1 Moduł Modbus ASCII/RTU 3
Spis treści 1 Moduł Modbus ASCII/RTU 3 1.1 Konfigurowanie Modułu Modbus ASCII/RTU............. 3 1.1.1 Lista elementów Modułu Modbus ASCII/RTU......... 3 1.1.2 Konfiguracja Modułu Modbus ASCII/RTU...........
Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP
Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP ZL32ARM ZL32ARM z mikrokontrolerem LPC1114 (rdzeń Cotrex-M0) dzięki wbudowanemu programatorowi jest kompletnym zestawem uruchomieniowym.
Galileo v10 pierwszy program
Notatka Aplikacyjna NA 03011PL Galileo v10 Spis treści 1. Wstęp... 2 1.1. Wymagania programowe... 2 2. Podstawy... 3 2.1. Tworzenie nowego projektu... 3 2.2. Dodawanie pola tekstowego... 10 2.3. Przechodzenie
Programator procesorów rodziny AVR AVR-T910
Programator procesorów rodziny AVR AVR-T910 Instrukcja obsługi Opis urządzenia AVR-T910 jest urządzeniem przeznaczonym do programowania mikrokontrolerów rodziny AVR firmy ATMEL. Programator podłączany
Warsztaty AVR. Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR. Dariusz Wika
Warsztaty AVR Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR Dariusz Wika 1.Krótki wstęp: Eclipse to rozbudowane środowisko programistyczne, które dzięki możliwości instalowania
Programowanie mikrokontrolerów 2.0
6.1 Programowanie mikrokontrolerów 2.0 Liczniki Marcin Engel Marcin Peczarski Instytut Informatyki Uniwersytetu Warszawskiego 31 października 2017 Liczniki Układy sprzętowe wyposażone w wewnętrzny rejestr
PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA
EGMONT INSTRUMENTS PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA EGMONT INSTRUMENTS tel. (0-22) 823-30-17, 668-69-75 02-304 Warszawa, Aleje Jerozolimskie 141/90 fax (0-22) 659-26-11
1. Opis aplikacji. 2. Przeprowadzanie pomiarów. 3. Tworzenie sprawozdania
1. Opis aplikacji Interfejs programu podzielony jest na dwie zakładki. Wszystkie ustawienia znajdują się w drugiej zakładce, są przygotowane do ćwiczenia i nie można ich zmieniac bez pozwolenia prowadzącego
Konfigurowanie sterownika CX9000 firmy Beckhoff wprowadzenie
Konfigurowanie sterownika CX9000 firmy Beckhoff wprowadzenie Stanowisko laboratoryjne ze sterownikiem CX9000 Sterownik CX9000 należy do grupy urządzeń określanych jako komputery wbudowane (Embedded-PC).
HELIOS pomoc społeczna
Instrukcja przygotowania pliku wsadowego do zasilenia SEPI przy pomocy dodatkowej aplikacji HELSepi 1. Instalacja aplikacji Pobieramy plik instalacyjny HelSEPIsetup.exe ze strony internetowej www.ops.strefa.pl
Instrukcja obsługi. PROGRAMATOR dualavr. redflu Tarnów
2008 Instrukcja obsługi PROGRAMATOR dualavr redflu Tarnów 1. Instalacja. Do podłączenia programatora z PC wykorzystywany jest przewód USB A-B (często spotykany przy drukarkach). Zalecane jest wykorzystanie
Instrukcja do ćwiczeń
Instrukcja do ćwiczeń SYSTEMY WBUDOWANE Lab. 3 Przetwornik ADC + potencjometr 1. Należy wejść na stronę Olimexu w celu znalezienia zestawu uruchomieniowego SAM7-EX256 (https://www.olimex.com/products/arm/atmel/sam7-ex256/).
Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania
Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania Podstawowe kroki programowania zestawu uruchomieniowego ZL9AVR z systemem operacyjnym NutOS w środowisku
ZL25ARM. Płyta bazowa dla modułów diparm z mikrokontrolerami STR912. [rdzeń ARM966E-S]
ZL25ARM Płyta bazowa dla modułów diparm z mikrokontrolerami STR912 [rdzeń ARM966E-S] ZL25ARM to płyta bazowa umożliwiająca wykonywanie różnorodnych eksperymentów z mikrokontrolerami STR912 (ARM966E-S).
Płytka ewaluacyjna Nucleo-F411RE
Płytka ewaluacyjna Nucleo-F411RE Płytka Nucleo-F411RE należy do rodziny zestawów ewaluacyjnych umożliwiających testowanie możliwości zamontowanego procesora. Oprócz tego, czasami taka płytka świetnie nadaje
ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC
ZL4PIC uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC (v.1.0) ZL4PIC Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC 1 Zestaw jest przeznaczony dla elektroników zajmujących się aplikacjami
Tab. 1. Zestawienie najważniejszych parametrów wybranych mikrokontrolerów z rodziny LPC2100, które można zastosować w zestawie ZL3ARM.
ZL3ARM płytka bazowa dla modułu diparm_2106 (ZL4ARM) ZL3ARM Płytka bazowa dla modułu diparm_2106 Płytkę bazową ZL3ARM opracowano z myślą o elektronikach chcących szybko poznać mozliwości mikrokontrolerów
Język C. Wykład 9: Mikrokontrolery cz.2. Łukasz Gaweł Chemia C pokój 307
Język C Wykład 9: Mikrokontrolery cz.2 Łukasz Gaweł Chemia C pokój 307 lukasz.gawel@pg.edu.pl Pierwszy program- powtórka Częstotliwość zegara procesora μc (należy sprawdzić z kartą techniczną μc) Dodaje
Konfigurowanie sterownika CX1000 firmy Beckhoff wprowadzenie. 1. Konfiguracja pakietu TwinCAT do współpracy z sterownikiem CX1000
Konfigurowanie sterownika CX1000 firmy Beckhoff wprowadzenie Stanowisko laboratoryjne ze sterownikiem CX1000 Sterownik CX1000 należy do grupy urządzeń określanych jako komputery wbudowane (Embedded-PC).
Rozdział ten zawiera informacje na temat zarządzania Modułem Modbus TCP oraz jego konfiguracji.
1 Moduł Modbus TCP Moduł Modbus TCP daje użytkownikowi Systemu Vision możliwość zapisu oraz odczytu rejestrów urządzeń, które obsługują protokół Modbus TCP. Zapewnia on odwzorowanie rejestrów urządzeń
ZL10PLD. Moduł dippld z układem XC3S200
ZL10PLD Moduł dippld z układem XC3S200 Moduły dippld opracowano z myślą o ułatwieniu powszechnego stosowania układów FPGA z rodziny Spartan 3 przez konstruktorów, którzy nie mogą lub nie chcą inwestować
Programowanie mikrokontrolerów AVR
Programowanie mikrokontrolerów AVR Czym jest mikrokontroler? Mikrokontroler jest małym komputerem podłączanym do układów elektronicznych. Pamięć RAM/ROM CPU wykonuje program Układy I/O Komunikacje ze światem
ADVANCE ELECTRONIC. Instrukcja obsługi aplikacji. Modbus konfigurator. Modbus konfigurator. wersja 1.1
Instrukcja obsługi aplikacji 1 1./ instalacja aplikacji. Aplikacja służy do zarządzania, konfigurowania i testowania modułów firmy Advance Electronic wyposażonych w RS485 pracujących w trybie half-duplex.
CW-HC08 Programowanie mikrokontrolera MC9S08QD4 [2]
CW-HC08 Programowanie mikrokontrolera MC9S08QD4 [2] Jan Kędzierski Marek Wnuk Wrocław 2012 Dokument stanowi instrukcję do ćwiczenia w ramach kursu Sterowniki robotów. Przebieg ćwiczenia Celem ćwiczenia
LABORATORIUM UKŁADÓW PROGRAMOWALNYCH. PROCESORY OSADZONE kod kursu: ETD 7211 SEMESTR ZIMOWY 2017
Politechnika Wrocławska, Wydział Elektroniki Mikrosystemów i Fotoniki Wydziałowy Zakład Metrologii Mikro- i Nanostruktur LABORATORIUM UKŁADÓW PROGRAMOWALNYCH PROCESORY OSADZONE kod kursu: ETD 7211 SEMESTR
Modułowy programowalny przekaźnik czasowy firmy Aniro.
Modułowy programowalny przekaźnik czasowy firmy Aniro. Rynek sterowników programowalnych Sterowniki programowalne PLC od wielu lat są podstawowymi systemami stosowanymi w praktyce przemysłowej i stały
Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne
Spis treści 5 Spis treœci Co to jest mikrokontroler? Wprowadzenie... 11 Budowa systemu komputerowego... 12 Wejścia systemu komputerowego... 12 Wyjścia systemu komputerowego... 13 Jednostka centralna (CPU)...
OPTIMA PC v2.2.1. Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA 255 2011 ELFON. Instrukcja obsługi. Rev 1
OPTIMA PC v2.2.1 Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA 255 Instrukcja obsługi Rev 1 2011 ELFON Wprowadzenie OPTIMA PC jest programem, który w wygodny sposób umożliwia konfigurację
ad a) Konfiguracja licznika T1 Niech nasz program składa się z dwóch fragmentów kodu: inicjacja licznika T1 pętla główna
Technika Mikroprocesorowa Laboratorium 4 Obsługa liczników i przerwań Cel ćwiczenia: Celem ćwiczenia jest nabycie umiejętności obsługi układów czasowo-licznikowych oraz obsługi przerwań. Nabyte umiejętności
Instytut Teleinformatyki
Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikroprocesory i Mikrokontrolery Dostęp do portów mikrokontrolera ATmega32 język C laboratorium: 10 autorzy: dr
1. Aplikacja LOGO! App do LOGO! 8 i LOGO! 7
1. Aplikacja do LOGO! 8 i LOGO! 7 1.1. Przegląd funkcji Darmowa aplikacja umożliwia podgląd wartości parametrów procesowych modułu podstawowego LOGO! 8 i LOGO! 7 za pomocą smartfona lub tabletu przez sieć
ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107
ZL29ARM Zestaw uruchomieniowy dla mikrokontrolerów STM32F107 Zestaw ZL29ARM jest platformą sprzętową pozwalającą poznać i przetestować możliwości mikrokontrolerów z rodziny STM32 Connectivity Line (STM32F107).
1 Moduł Neuronu Cyfrowego
1 Moduł Neuronu Cyfrowego Moduł Neuronu Cyfrowego daje użytkownikowi Systemu Vision możliwość obsługi fizycznych Neuronów Cyfrowych. Dzięki temu możliwe jest sterowanie zewnętrznymi urządzeniami wykonawczymi
ZL2ARM easyarm zestaw uruchomieniowy dla mikrokontrolerów LPC2104/5/6 (rdzeń ARM7TDMI-S)
ZL2ARM easyarm zestaw uruchomieniowy dla mikrokontrolerów LPC2104/5/6 (rdzeń ARM7TDMI-S) ZL2ARM Zestaw uruchomieniowy dla mikrokontrolerów LPC2104/5/6 (rdzeń ARM7TDMI-S) 1 Zestaw ZL2ARM opracowano z myślą
ZL28ARM. Zestaw uruchomieniowy dla mikrokontrolerów AT91SAM7XC
ZL28ARM Zestaw uruchomieniowy dla mikrokontrolerów AT91SAM7XC Zestaw ZL28ARM jest uniwersalnym zestawem uruchomieniowym dla mikrokontrolerów AT91SAM7XC. Dzięki wyposażeniu w szeroką gamę układów peryferyjnych
Kurs Elektroniki. Część 5 - Mikrokontrolery. www.knr.meil.pw.edu.pl 1/26
Kurs Elektroniki Część 5 - Mikrokontrolery. www.knr.meil.pw.edu.pl 1/26 Mikrokontroler - autonomiczny i użyteczny system mikroprocesorowy, który do swego działania wymaga minimalnej liczby elementów dodatkowych.
Moduł Handlowo-Magazynowy Przeprowadzanie inwentaryzacji z użyciem kolektorów danych
Moduł Handlowo-Magazynowy Przeprowadzanie inwentaryzacji z użyciem kolektorów danych Wersja 3.77.320 29.10.2014 r. Poniższa instrukcja ma zastosowanie, w przypadku gdy w menu System Konfiguracja Ustawienia
Programowanie STM32F4(7)
Programowanie STM32F4(7) W artykule zajmiemy się konwerterem A/C wbudowanym w układ mikrokontrolera i za jego pomocą zmierzymy temperaturę panującą na układzie. Do wykonania tego ćwiczenia nie będzie potrzebne
STM32L0: Cortex-M0+ w rodzinie STM32
STM32L0: Cortex-M0+ w rodzinie STM32 Norymberskie targi embedded world 2014 były dla STMicroelectronics okazją do przedstawienia wielu nowości, wśród których jedną z najbardziej wyczekiwanych przez konstruktorów
MultiTool instrukcja użytkownika 2010 SFAR
MultiTool instrukcja użytkownika 2010 SFAR Tytuł dokumentu: MultiTool instrukcja użytkownika Wersja dokumentu: V1.0 Data: 21.06.2010 Wersja urządzenia którego dotyczy dokumentacja: MultiTool ver. 1.00
1.1 Co to jest USBasp?... 3 1.2 Parametry techniczne... 3 1.3 Obsługiwane procesory... 3 1.4 Zawartość zestawu... 4
2012 Programator AVR USBasp Instrukcja obsługi 2012-02-11 2 SPIS TREŚCI 1. WSTĘP... 3 1.1 Co to jest USBasp?... 3 1.2 Parametry techniczne... 3 1.3 Obsługiwane procesory... 3 1.4 Zawartość zestawu... 4
TECHNIKA MIKROPROCESOROWA II
Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Wydział IEiT Katedra Elektroniki TECHNIKA MIKROPROCESOROWA II LAB 6a Wykorzystanie USB do komunikacji z komputerem PC Mariusz Sokołowski http://www.fpga.agh.edu.pl/upt2
- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy
Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy - Narzędzie Windows Forms - Przykładowe aplikacje 1 Narzędzia Windows Form Windows Form jest narzędziem do tworzenia aplikacji dla
Politechnika Gdańska Katedra Optoelektroniki i Systemów Elektronicznych
Laboratorium OiOSE. Programowanie w środowisku MS Visual C++ 1 Politechnika Gdańska Katedra Optoelektroniki i Systemów Elektronicznych Organizacja i Oprogramowanie Systemów Elektronicznych Michał Kowalewski
Konfigurowanie modułu BK9050 firmy Beckhoff wprowadzenie
Konfigurowanie modułu BK9050 firmy Beckhoff wprowadzenie Stanowisko laboratoryjne z modułem BK9050 Moduł BK9050 jest urządzeniem typu Bus Coupler, umożliwiającym instalację rozproszonych grup terminali
Schemat blokowy karty
Obsługa kart I/O Karta NI USB-6008 posiada: osiem wejść analogowych (AI), dwa wyjścia analogowe (AO), 12 cyfrowych wejść-wyjść (DIO), 32-bitowy licznik. Schemat blokowy karty Podstawowe parametry karty
Podstawy technologii WWW
Podstawy technologii WWW Ćwiczenie 8 PHP, czyli poczatki nowej, dynamicznej znajomosci Na dzisiejszych zajęciach rozpoczniemy programowanie po stronie serwera w języku PHP. Po otrzymaniu żądania serwer
1 Moduł Modbus ASCII/RTU
1 Moduł Modbus ASCII/RTU Moduł Modbus ASCII/RTU daje użytkownikowi Systemu Vision możliwość komunikacji z urządzeniami za pomocą protokołu Modbus. Moduł jest konfigurowalny w taki sposób, aby umożliwiał
Elastyczne systemy wytwarzania
ZAKŁAD PROJEKTOWANIA TECHNOLOGII Laboratorium: Elastyczne systemy wytwarzania Załącznik do instrukcji nr 1 Opracował: Jakub Zawrotniak Poniżej przedstawiono sposób tworzenia nowego projektu/programu: a)
Konfigurowanie sterownika CP6601 firmy Beckhoff wprowadzenie
Konfigurowanie sterownika CP6601 firmy Beckhoff wprowadzenie Stanowisko laboratoryjne ze sterownikiem CP6601 Sterownik CP6601 należy do grupy urządzeń określanych jako komputery przemysłowe (Industrial
STEROWNIK TUBY LED STM-64
STEROWNIK TUBY LED STM-64 INSTRUKCJA OBSŁUGI DLA WERSJI OPROGRAMOWANIA 1.1 WWW.SIGMA.NET.PL OPIS OGÓLNY Urządzenie przeznaczone jest do sterowania tubami led. Dzięki rozbudowanym funkcjom wyświetla bardzo