ZÁPADOČESKÁ UNIVERZITA V PLZNI FAKULTA ELEKTROTECHNICKÁ
|
|
- Petra Beranová
- před 9 lety
- Počet zobrazení:
Transkript
1 ZÁPADOČESKÁ UNIVERZITA V PLZNI FAKULTA ELEKTROTECHNICKÁ Katedra aplikované elektroniky a telekomunikací DIPLOMOVÁ PRÁCE Sada vzorových příkladů pro STM32 Bc. Jan Špika Plzeň 2014
2
3
4 Anotace Špika Jan - Sada vzorových příkladů pro STM32. Katedra aplikované elektroniky a telekomunikací, Západočeská univerzita v Plzni Fakulta elektrotechnická, 2014, 50 s., vedoucí: Ing. Kamil Kosturik, Ph.D. Diplomová práce obsahuje vzorové příklady na využití SD karty, USB, ethernetu a I2C na platformě stm32, konkrétně STM32F107VC. V příkladu na USB je ukázán běh mikrokontroléru v USB host módu a přenos dat mezi SD kartou a flash diskem připojeným přes USB. Aplikace s ethernetem obsahuje komunikaci s mikrokontrolérem prostřednictvím ethernetu a webové aplikace. Program s využitím I2C implementuje komunikaci se senzorem BMP085. Klíčová slova SD karta, USB, Ethernet, I2C, STM32
5 Abstract - Set of source codes for STM32 Špika Jan. Set of source codes for STM32. Department of applied electronics and telecommunications, University of West Bohemia in Pilsen Faculty of electrical engineering, 2014, 50 p., head: Ing. Kamil Kosturik, Ph.D. The master thesis contains a set of source codes for MCBSTM32C eval board and stm3210ceval board using microcontroller STM32F107VC. The source codes are done for SD card, USB, Ethernet and I2C. The program for the SD card shows how to work with this peripheral. The USB example demonstrates using USB in the host mode and transporting data from the SD card to the flash disc connected to the board via USB. The ethernet application is based on lwip stack and shows how to control the board s peripherals over the web application and how to retrieve information from that. The last I2C application clarifies manipulation with BMP085 sensor via I2C. Key words SD card, USB, Ethernet, I2C, STM32
6 Prohlášení Předkládám tímto k posouzení a obhajobě diplomovou práci, zpracovanou na závěr studia na Fakultě elektrotechnické Západočeské univerzity v Plzni. Prohlašuji, že jsem tuto diplomovou práci vypracoval samostatně, s použitím odborné literatury a pramenů uvedených v seznamu, který je součástí této diplomové práce. legální. Dále prohlašuji, že veškerý software, použitý při řešení této diplomové práce, je V Plzni dne Jméno příjmení
7 Poděkování Tímto bych chtěl poděkovat všem, kteří mě během studia na vysoké škole podporovali, a to hlavně rodině. Dále bych chtěl poděkovat lidem, kteří mi svými radami, připomínkami a hlavně svou ochotou pomohli při tvorbě této diplomové práce. Těmi byli zejména Ing. Kamil Kosturik, Ph.D., Ing. Petr Krist, Ph.D., Ing. Ondřej Hála a Ing. Milan Brych. Poděkování též patří Katedře aplikované elektroniky a telekomunikací za zapůjčení vývojových kitů.
8 Obsah OBSAH... 8 SEZNAM SYMBOLŮ A ZKRATEK SEZNAM OBRÁZKŮ SEZNAM TABULEK ÚVOD HARDWARE PLATFORMA STM STM32F105/ POUŽITÉ VÝVOJOVÉ KITY MCBSTM32C STM3210C-eval ULINK-ME PŘÍKLAD NA VYUŽITÍ SD KARTY HARDWAROVÉ ŘEŠENÍ SD KONEKTORŮ KOMUNIKACE SD KARTY S PROCESOREM FATFS - GENERIC FILE SYSTEM DISK I/O APLIKACE PRÁCE S SD KARTOU USB ZÁKLADNÍ VLASTNOSTI USB USB rychlosti přenosu USB typy přenosů USB typy paketů USB deskriptory USB ON-THE-GO HOST AND DEVICE LIBRARY USB OTG LOW LEVEL DRIVER STM32_USB_HOST_LIBRARY Stavový automat USB host knihovny Enumerace zařízení USB host - Mass storage class USB host - core APLIKACE S USB HOST MÓDEM
9 3.5.1 Úpravy MSC USB host příkladu Běh programu APLIKACE S USB DEVICE MÓDEM ETHERNET LWIP STACK WEBOVÁ APLIKACE A SERVER AJAX cross domain Sledování chodu komunikace PROGRAM MIKROKONTROLÉRU APLIKACE I2C I2C KOMUNIKACE SENZOR BMP Parametry senzoru Zapojení senzoru VÝPOČETNÍ CYKLUS UKÁZKOVÝ PROGRAM I2C_WriteReg() I2C_ReadReg() IMPLEMENTACE PŘÍKLADŮ ZÁVĚR POUŽITÁ LITERATURA
10 Seznam symbolů a zkratek ARP CAN DHCP DNS GPIO I²C I²S ICMP IGMP IP LwIP MII PPP PWM RMII SD SDHC SNMP SPI SRAM STM SWD TCP UDP USART USB Address Resolution Protocol Controller Area Network Dynamic Host Configuration Protocol Domain Name System General Purpose Input/Output Inter-Integrated Circuit Integrated Interchip Sound Internet Control Message Protocol Internet Group Management Protocol Internet Protocol lightweight IP Media Independent Interface Point-to-Point Protocol Pulse-width modulation Reduced Media Independent Interface Secure Digital Secure Digital High Capacity Simple Network Management Protocol Serial Peripheral Interface Static random-access memory STMicroelectronics Serial wire debug Transmission Control Protocol User Datagram Protocol Universal asynchronous receiver/transmitter Universal Serial Bus 10
11 Seznam obrázků Obr. 1.1: Blokový diagram vnitřního uspořádání STM32f105/107, [2, s. 12] Obr. 1.2: MCBSTM32C [4] Obr. 1.3: Blokový diagram stm3210c-eval, [5, s. 7] Obr. 1.4: ULINK-ME [6] Obr. 2.1: SD konektor stm3210c-eval [5, s. 47] Obr. 2.2: SD konektor MCBSTM32C [7] Obr. 3.1: Stavový automat USB host knihovny [12, s.77] Obr. 3.2: Enumerace zařízení [12, s.78] Obr. 3.3: USB host aplikace na stm3210c-eval Obr. 4.1: Ukázka webové aplikace Obr. 4.2: Vzhled aplikace na MCBSTM32C Obr. 5.1: I2C sběrnice Obr. 5.2: Časové průběhy na I2C sběrnici [15] Obr. 5.3: Zapojení BMP Obr. 5.4: Výpočetní cyklus u BMP085[16] Obr. 5.5: I2C aplikace s BMP Seznam tabulek Tab. 1.1: Rozdělení sérií stm32[1] Tab. 1.2: Základní vlastnosti STMF105/107 [2] Tab. 3.1: Deskriptor zařízení Tab. 3.2: Konfigurační deskriptor Tab. 3.3: Deskriptor rozhraní Tab. 3.4: Deskriptor koncového bodu Tab. 3.5: Řetězcový deskriptor Tab. 5.1: Základní parametry BMP Tab. 5.2: Mezní parametry BMP
12 Úvod Cílem diplomové práce je vytvořit sadu vzorových příkladů pro platformu STM32, neboť vývojové kity na této platformě jsou používány při výuce, zejména v magisterském studiu na Fakultě elektrotechnické v Plzni. Dalším důvodem je rozšířenost této platformy mezi studenty a i možnost zapůjčení různých vývojových kitů s STM32 mikrokontroléry na katedře aplikované elektroniky a telekomunikací. Ethernet, SD karta a USB byly vybrány z důvodu největšího potenciálního využití studenty při tvorbě semestrálních prací. Dále byl přidán příklad na využití I²C sběrnice, jelikož ji pro komunikaci využívá velké množství senzorů. Během magisterského studia jsem se osobně přesvědčil, jak je aplikace i základních periférií, bez dřívějších zkušeností a použití vyššího programovacího jazyka, časově náročná. Proto si příklady nekladou za cíl podrobné vysvětlení dané periférie, ale měly by studentům poskytnout nejjednodušší, a tedy i časově nejefektivnější cestu k možné aplikaci daných periférií bez nutnosti jejich podrobného studia. 12
13 1 Hardware Jak již bylo uvedeno v úvodu, diplomová práce se zaměřuje na platformu stm32. Konkrétně byly využity kity stm3210c-eval a MCBSTM32C s mikrokontrolérem STM32F107. Jako programátor byl použit ULINK-ME. Vlasti jednotlivých zařízení budou uvedeny v následujících podkapitolách. 1.1 Platforma STM32 Platforma STM32 32bitových mikrokontrolérů je založena na ARM Cortex -M procesorech. Podrobné rozdělení sérií a jejich vlastností je možné vidět v následující tabulce. Tab. 1.1: Rozdělení sérií stm32[1] 13
14 1.1.1 STM32F105/107 V kapitole budou pouze výčtově vypsány nejdůležitější vlastnosti této série mikrokontrolérů. Detailní informace lze nalézt v [2], [3]. Tab. 1.2: Základní vlastnosti STMF105/107 [2] Procesor ARM 32-bit Cortex -M3 CPU 72 MHz Pamětí 64 až 256 Kbytes Flash paměť 64 Kbytes SRAM Hodiny 3 až 25 MHz krystalový oscilátor Vnitřní 8 MHz z výroby upravené RC Vnitřní 40 khz RC s kalibrací 32 khz oscilátor pro RTC s kalibrací Low power módy Sleep, Stop a Standby VBAT zdroj pro RTC a backup registy A/D 2 x 12b převodník (16 kanálů) D/A 2 x 12b převodník DMA 12 kanálů Debug módy SWD & JTAG Cortex -M3 Embedded Trace Macrocell I/O 80 Časovače 10 s možností přemapování pinů 4 16-bitové časovače 2 x watch dog časovače SysTick časovač 2 x 16-bit základní časovač pro řízení DAC 1 x 16-bit motor control PWM časovač s dead-time generací a emergency stop Komunikační 14 s možností přemapování pinů rozhraní 2 x I2C 5 x USART 3 x SPI, 2 s I2S 2 x CAN USB 2.0 OTG 10/100 Ethernet 14
15 Obr. 1.1: Blokový diagram vnitřního uspořádání STM32f105/107, [2, s. 12] 15
16 1.2 Použité vývojové kity Pro zhotovení této práce byly použity dva vývojové kity. První je stm3210c-eval board od STM a druhý MCBSTM32C od ARMu. Hlavní důvod pro použití těchto desek byla jejich dostupnost na fakultě. MCBSTM32C je používán při výuce předmětů na fakultě elektrotechnické a stm3210c-eval si je možné zapůjčit při tvorbě semestrálních prací. Důležitou vlastností obou desek je, že pracují s mikrokontrolérem STM32F107VC MCBSTM32C MCBSTM32C je vývojový kit od společnosti ARM založený na mikrokontroléru STM32F107VC. Jeho hlavními parametry jsou: 72MHz STM32F107VC ARM Cortex -M3 procesor Paměť na čipu: 256KB Flash & 64KB RAM Externí paměť: 8KB I2C Flash Dotykový barevný QVGA TFT LCD displej 10/100 Ethernet Port USB 2.0 Full Speed - USB, USB-OTG, & USB Host 2 x CAN Interface Serial/UART Port MicroSD Card Interface 5-poziční Joystick a push-tlačítka 3-osý senzor pohybu/akcelerometer Analog Voltage Control pro ADC vstup Audio CODEC s Line-In/Out a reproduktorem 80 GPIO pinů Debugovací Interface konektory: o 20-pin JTAG (0.1" Connector) o 10-pin Cortex debug (0.05" Connector) o 20-pin Cortex debug + ETM Trace (0.05" Connector) 16
17 Obr. 1.2: MCBSTM32C [4] Napájení je možné prostřednictvím mikro USB konektoru nebo VIN konektoru připojeného na napájení 5 až 5.5V DC. V případě využívání USB v režimu USB host nebo USB OTG je nutné kit napájet přes VIN konektor napětím 5.5V. [4] 17
18 1.2.2 STM3210C-eval Stm3210c-eval je kit od společnosti STM. Veškeré vlastnosti lze vyčíst z blokového diagramu desky. Obr. 1.3: Blokový diagram stm3210c-eval, [5, s. 7] Možnosti napájení: Power jack, USB konektor nebo daughterboard 18
19 1.3 ULINK-ME Použití: Ulink-me je debugovací adaptér od společnosti ARM. tzv. On-chip Debugging Flash Memory Programovaní Parametry: JTAG rychlost do 10MHz SWD pro zařízení s ARM Cortex-M SWV pro Cortex-M3 (M4) Podporované Keil µvision IDE & Debugger USB napájení Plug-and-play instalace 10-pin (0.05") - Cortex Debug Connector 20-pin (0.10") - ARM Standard JTAG Connector Obr. 1.4: ULINK-ME [6] [6] 19
20 2 Příklad na využití SD karty V této kapitole bude popsán způsob komunikace mikrokontroléru s SD kartou a veškeré nutné kroky k provedení této komunikace. 2.1 Hardwarové řešení SD konektorů Jak lze vidět ze schémat zapojení, jsou řešení u jednotlivých desek rozdílná. U MCBSTM32C jsou pull-up rezistory zapojeny přímo u konektoru, a navíc si zde programátor musí dávat pozor na neosazené cesty u jednotlivých vývodů. U stm3210c-eval boardu je přes vnější pull-up rezistor připojen pouze MicroSDCard_CS pin a pro připojení k čipu je zde použita jen jedna cesta. Obr. 2.1: SD konektor stm3210c-eval [5, s. 47] Obr. 2.2: SD konektor MCBSTM32C [7] 20
21 2.2 Komunikace SD karty s procesorem Komunikace s SD kartou probíhá přes rozhraní SPI. Podrobné informace k nastavení SPI lze nalézt v [3]. Pro oba kity lze použít knihovnu stm32_eval_spi_sd.c, kde jsou funkce pro práci s SD kartou a která dále využívá stm3210c_eval.c, v němž lze najít funkce pro nastavení SPI periférií. MCBSTM32C využívá pro komunikaci SPI1 a stm3210ceval SPI3. Proto tyto knihovny lze použít pro obě desky, ale v případě MCBSTM32C je nutné provést změnu SPI a jeho pinů v stm3210c_eval.h. 2.3 FatFs - generic File system FatTs je volně použitelný file systém pro malé embedded systémy, který je napsán v souladu s ANSI C a je kompletně oddělen od Disk I/O vrstvy. Díky tomu není závislý na hardwaru. Veškeré informace o tomto file systému lze najít v [8]. Mezi nejdůležitější patří aplikační informace, tedy informace o systémové organizaci, limitech systému atd., fórum a v neposlední řadě možnost stáhnout si různé verze systému a jejich ukázkové aplikace, což velmi ulehčuje implementaci. Pro samotné programování jsou nejdůležitější limitující faktory systému a seznam funkcí, které může programátor použít, s kompletním popisem jejich vlastností. Nastavení file systému se provádí v souboru ffconf.h a ovlivňuje funkčnost jak jednotlivých funkcí, tak celého systému. Při používání funkcí je tedy vždy nutno zkontrolovat požadavky na nastavení tohoto souboru. 2.4 Disk I/O Tato low-level vrstva není s file systémem dodávána. Na internetu lze stáhnout prázdnou kostru diskio.c a dále záleží na vývojáři, jak ji upraví pro potřeby konkrétní aplikace. Pro aplikace s STM32 lze využít zdrojové soubory pro low-level vrstvy z ukázkových příkladů poskytovaných přímo STM a dle potřeby je kombinovat. 21
22 2.5 Aplikace práce s SD kartou Tato aplikace má za úkol ukázat nejjednodušším možným způsobem práci s SD kartou, to jest v konkrétním případě nastavení komunikace s SD kartou přes SPI, detekovaní SD karty, namountovaní, vytvoření složky, odmountování a zrušení SPI komunikace. Na začátku programu je volána funkce SD_Init(), která nastaví SD_SPI, to jest povolí hodiny, v nutnosti přemapování přemapuje SPI piny, nastaví piny MISO, MOSI, SCK, CS a detect pin a provede samotné nastavení SPI komunikace. Podrobné informace o SPI a jeho nastavení lze nalézt v [3]. Je zde nutné zmínit, že veškeré funkce z stm32_eval_spi_sd.c mají návratové hodnoty signalizující stav provedení funkce. V našem případě je uživatel informován o bezchybném provedení na LCD displeji a v případě chyby je vypsán její kód, jehož znění lze nalézt v stm32_eval_spi_sd.h. Dalším krokem je zjištění detekce SD karty, což je provedeno funkcí SD_Detect(), která kontroluje stav na SD detect pinu. Nyní je již možné využívat funkce file systému, které opět mají návratové hodnoty a v případě chyby lze najít daný kód v knihovně ff.h. Jako první je nutné zavolat funkci f_mount(), kterou přiřadíme pracovní oblast file systému. Dále je pro ukázku vytvořena složka a provedeno odmountování a deinicializace SD SPI komunikace. Všechny použité funkce pro práci s FatFs lze najít v ff.c a, jak již bylo zmíněno, low level funkce, které jsou těmito funkcemi využívány, v diskio.c. 22
23 3 USB USB je využíváno v mnoha typech aplikací. Proto STM poskytuje širokou podporu v podobě STM32Fxx USB On-The-Go Host and Device knihovny, kde lze nalézt příklady, ať už pro USB-host, USB-device, tak USB-host-device. První příklad na USB pouze upravuje příklad na USB-device mass storage pro MCBSTM32C. Druhý příklad ukazuje přenos dat mezi SD kartou a flash diskem připojeným přes USB. 3.1 Základní vlastnosti USB V následující kapitole budou popsány nejdůležitější vlastnosti USB USB rychlosti přenosu USB dle typu podporuje několik rychlostí přenosu: USB 1.1 o Low Speed 1,5Mbit/s o Full Speed 12Mbit/s USB 2.0 o High Speed 480Mbit/s USB 3.0 o Super Speed 5Gbit/s USB 3.1 o Super Speed 10Gbit/s [9] Výše zmiňovanou USB On-The-Go Host and Device knihovnou jsou podporované Full Speed a High speed přenosy. Typ rychlosti přenosu je softwarovou záležitostí, nikoliv hardwarovou. 23
24 3.1.2 USB typy přenosů USB má celkem čtyři typy přenosů, každý z nich je určen rozdílnými vlastnostmi komunikačního přenosu, to jest: formát dat, směr komunikačního toku, velikost paketu, přístup na sběrnici, zpoždění, sekvence požadavku o data, řešení chyb. USB definuje čtyři typy přenosu: Hromadný (bulk) - Přenos určený pro velký objem dat. Je zde zajištěno doručení dat, ale nikoliv doba doručení. Izochronní (isochronous) - V tomto typu přenosu je zajištěna plynulost přenosu dat o definované rychlosti. V případě selhání doručení se neprovádí opětovné vyslání. Přenos při přerušení (interrupt) - Určen pro zařízení, která příležitostně posílají nebo přijímají data. Tento přenos má zaručenou dobu obsluhy a v případě selhání je zde opětovný pokus o doručení. Řídící přenos (control) - Používaný pro řízení, konfiguraci a získávání statusů USB zařízení. [10] USB typy paketů USB komunikace obsahuje čtyři druhy paketů : Token paket - definuje typ přenosu na USB Datový paket - obsahuje data přenosu Handshake paket - tzv. potvrzovací paket Preamble - určen k přepínaní mezi full a hihg speed [10] 24
25 3.1.4 USB deskriptory Vlastnosti USB zařízení jsou uloženy v tzv. deskriptorech. Ty mají přesně definovanou strukturu a jsou využívány při enumeraci. Deskriptor zařízení - udává vlastnosti celého zařízení. Z tohoto důvodu má každé zařízení pouze jeden tento deskriptor. Tab. 3.1: Deskriptor zařízení Offset Název Velikost Hodnota Popis 0 blength 1 number velikost deskriptoru 1 bdescriptortype 1 constant typ deskriptoru, device (0x01) 2 bcdusb 2 BCD verze USB, se kterou je zařízení kompatibilní 4 bdeviceclass 1 class kód třídy zařízení 5 bdevicesubclass 1 subclass kód podtřídy 6 bdeviceprotocol 1 protocol kód protokolu 7 bmaxpacketsize 1 number maximální velikost paketu pro endpoint 0 8 idvendor 2 ID vendor ID 10 idproduct 2 ID product ID 12 bcddevice 2 BCD číslo verze zařízení 14 imanufacturer 1 index index string deskriptoru popisující výrobce 15 iproduct 1 index index string deskriptoru popisující výrobek 16 iserialnumber 1 index index string deskriptoru popisující sériové číslo 17 bnumconfigurations 1 integer počet možných konfigurací 25
26 konfigurační deskriptor - udává popis konfiguračního nastavení USB zařízení, které může mít těchto nastavení několik. Tab. 3.2: Konfigurační deskriptor Offset Název Velikost Hodnota Popis 0 blength 1 number velikost deskriptoru 1 bdescriptortype 1 constant typ deskriptoru, configuration (0x02) 2 wtotallength 2 number délka všech deskriptorů této konfigurace. Obsahuje délku konfiguračního deskriptoru, deskriptoru rozhraní a deskriptorů koncových bodů. 4 bnuminterfaces 1 number počet rozhraní 5 bconfigurationvalue 1 number hodnota používaná jako argument k výběru této konfigurace 6 iconfiguration 1 index index string deskriptoru popisující toto nastavení 7 bmattributes 1 bitmap D7 rezervováno, nastaveno do 1 D6 napájení ze sběrnice/vlastní napájení D5 vzdálené probuzení D4..0 rezervováno, nastaveno do 0 8 bmaxpower 1 ma maximální odběr ze sběrnice. Jednotkou jsou 2 ma. 26
27 Deskriptor rozhraní - popisuje nastavení daného rozhraní. Tab. 3.3: Deskriptor rozhraní Offset Název Velikost Hodnota Popis 0 blength 1 number velikost deskriptoru 1 bdescriptortype 1 constant typ deskriptoru, interface (0x04) 2 bnuminterfaces 1 number číslo rozhraní 3 balternatesetting 1 number hodnota použitá k výběru alternativního nastavení 4 bnumendpoints 1 number počet koncových bodů (bez koncového bodu nula) tohoto rozhraní; je-li hodnota nulová, používá se pouze koncový bod nula 5 binterfaceclass 1 class kód třídy 6 binterfacesubclass 1 subclass kód podtřídy 7 binterfaceprotocol 1 protocol kód protokolu 8 iinterface 1 index index string deskriptoru popisující toto rozhraní Deskriptor koncového bodu - informace z tohoto deskriptoru jsou používány hostitelem pro určení šířky pásma. Tab. 3.4: Deskriptor koncového bodu Offset Název Velikost Hodnota Popis 0 blength 1 number velikost deskriptoru 1 bdescriptortype 1 constant typ deskriptoru, endpoint (0x05) 2 bendpointaddress 1 endpoint adresa koncového bodu bity 0..3b číslo koncového bodu bity 4..6b rezervováno, nastaveno do 0 bity 7 směr přenosu 0 = Out, 1 = In 3 bmattributes 1 bitmap typ a vlastnosti přenosu 4 wmaxpacketsize 2 number maximální velikost paketu 6 binterval 1 number interval pro polling 27
28 Řetězcový deskriptor - není povinný. Jestliže zařízení nepodporuje řetězcové deskriptory, všechny odkazy na ně uvnitř deskriptorů zařízení, konfiguračních a rozhraní, musí být nastaveny na null. Tab. 3.5: Řetězcový deskriptor Offset Název Velikost Hodnota Popis 0 blength 1 number velikost deskriptoru 1 bdescriptortype 1 constant typ deskriptoru, string (0x03) 2 bstring n unicode řetězec v UNICODE [11] 3.2 USB On-The-Go Host and Device library Tato knihovna je určena pro mikrokontroléry řad STM32F105xx, STM32F107xx, STM32F2xx a STM32F4xx. Jejím cílem je poskytnout ukázkové aplikace pro full speed a high speed přenosy všech typů. V následujícím textu budou popsány součásti používané v aplikaci s USB host módem. 3.3 USB OTG low level driver Low level soubory knihovny se dělí do tří kategorií. Obecné, host a device. Usb_core.c /.h a usb_bsp.c /.h jsou obecné a zbylé dva soubory patří k host módu. usb_core.c /.h - soubor obsahující hardwarově abstraktní vrstvu a komunikační operace usb_bsp.c /.h - soubor obsahuje low level inicializaci usb_hcd.c /.h - soubor obsahující host interface vrstvu, používanou knihovnou pro přístup k jádru usb_hcd_int.c /.h - soubor obsahující interuptní procesy pro host mode 3.4 STM32_USB_HOST_Library Tato knihovna je rozdělena na dvě podsložky. První, class, obsahuje soubory vztahující se k implementaci používané třídy, v našem případě MSC. Druhá, core, obsahuje USB Host library procesy definované v USB specifikaci rev
29 3.4.1 Stavový automat USB host knihovny Běh USB host knihovny je řízen dle stavového automatu, který lze vidět na obr Obr. 3.1: Stavový automat USB host knihovny [12, s.77] Jádro může nabývat devíti stavů: HOST_IDLE - do tohoto stavu se jádro dostane po inicializaci host a následně čeká na připojení zařízení. Přejde do něj taktéž, jestliže je indikováno odpojení zařízení, a nebo když se objeví nepokrytá chyba. HOST_ISSUE_CORE_RESET - přechod do tohoto stavu nastane v okamžiku, kdy je připojeno zařízení za účelem vytvoření resetu USB sběrnice. HOST_DEV_ATTACHED - jádro přejde do tohoto stavu, když je připojeno zařízení. Jestliže je zařízení detekováno, stavový automat přejde do stavu enumerace. HOST_ENUMERATION - v tomto stavu probíhá enumerace, která bude podrobněji popsána dále. HOST_USR_INPUT - tento stav následuje po enumeraci a zahrnuje čekání na uživatelský vstup, aby se zahájil provoz třídy USB. HOST_CLASS_REQUEST - v tomto stavu přebírá řízení ovladač třídy a je zavolán 29
30 stavový automat požadavků třídy, aby vyřešil všechny původní požadavky třídy. Po dokončení všech požadavků se přechází do stavu HOST_CLASS. HOST_CLASS - v tomto stavu je zavolán stavový automat třídy pro operace dané třídy. HOST_CTRL_XFER - do tohoto stavu se přechází, kdykoliv je nutno provést kontrolní přenos. HOST_ERROR_STATE - do tohoto stavu se přechází, kdykoliv se vyskytne nepokrytá chyba ve stavovém automatu knihovny Enumerace zařízení Po rozpoznání zařízení následuje enumerace. Postup je ukázán v následujícím obrázku. Obr. 3.2: Enumerace zařízení [12, s.78] Stavový automat enumerace je implementován ve funkci USBH_HandleEnum(). Ta je volána stavovým automatem jádra a využívá funkce z usbh_stdreq.c. Na konci enumerace je volán uživatelský callback, aby umožnil uživateli využít informace z deskriptorů. 30
31 3.4.3 USB host - Mass storage class Tato podsložka je tvořena soubory sloužícími k implementaci MSC ovladače podporujícího BOT (Bulk-Only Transport) a SCSI příkazy. Tvoří ji následující soubory: usbh_msc_core.c /.h - implementace stavového automatu jádra MSC usbh_msc_bot.c /.h - implementace BOT usbh_msc_scsi.c /.h - SCSI implementace usbh_msc_fatfs.c /.h - funkce pro komunikace s FatFs USB host - core Všeobecný význam souborů v této složce byl popsán výše. Nyní bude uveden konkrétnější popis jednotlivých souborů. usbh_core.c /.h - soubory obsahující funkce pro řízení USB komunikace a stavového automatu usbh_stdreq.c /.h - soubory obsahující implementaci žádostí z kapitoly 9 USB specifikace usbh_hcs.c /.h - soubory obsluhující alokaci host kanálu a spouštěcí procesy usbh_ioreq.c /.h - soubory obsluhující generování USB transakcí usbh_conf.h - soubory obsahující konfiguraci interface čísla zařízení a velikosti paketu [12] 3.5 Aplikace s USB host módem Tato aplikace je postavena na MSC USB host příkladu z STM32F105/7XX and STM32Fxx USB On-The-Go Host and Device Library V2.0.0 / 22-July Cílem je ukázat další možné využití módu USB host, a to přenos dat z SD karty do flash disku připojeného prostřednictvím USB. Tento příklad je k dispozici pouze pro stm3210c-eval, jelikož kit MCBSTM32C by musel mít externí napájení. Z činnosti programu zůstal výpis základních informací o flash disku po připojení k stm3210c-eval. Dále je uživatel tázán, jestli si přeje přehrát předem daný dokument, a jestliže akci potvrdí, proběhne přenos souboru. 31
32 3.5.1 Úpravy MSC USB host příkladu Hlavní úprava programu spočívala v implementaci low level vrstvy pro komunikaci s SD kartou a přechodu z FAT file system module R0.07e na FAT file system module R0.10a. Low level vrstva byla implementována do usbh_msc_fatfs.c, kde se pomocí funkce switch() a vstupní proměnné drv řeší ve funkcích obsluha pro SD nebo USB. Pro změnu file systému byly aktualizovány soubory ff.h, ff.c a ffconf.h Běh programu V main.c se nacházejí dvě základní funkce programu. USBH_Init() slouží k nastavení USB host knihovny a hardwaru. Druhou funkcí je periodicky volaná funkce USBH_Process(), ve které je implementován stavový automat jádra. Jelikož využíváme MSC, je po provedení inicializace třídy MSC stavovým automatem volána funkce USBH_USR_MSC_Application(). V ní je zprostředkováno veškeré uživatelské chování funkce. Část programu řešící kopírování dat probíhá ve dvou fázích. V první se kontroluje detekce SD karty. Poté je vytvořen file systém, otevřen soubor na SD kartě v režimu pro čtení pomocí funkce f_open() a funkcí f_read(&filesd, buffer, sizeof buffer, &br) je přečten, obsah je uložen do buffer a počet přečtených bytů je uložen do proměnné br. Následuje uzavření souboru a odmountování file systému. V druhé fázi je vytvořen file systém pro USB a je vytvořen soubor pro zápis na flash disk. Funkcí f_write(&file, buffer, br, &bw) je zapsán obsah buffer do souboru, velikost zapisovaných dat je určená proměnnou br. Následuje opět uzavření souboru a odmountování file systému. Průběh funkcí je pro kontrolu logován na LCD displej. Na displej je pro kontrolu vypsán i stav inicializace SD karty, která probíhá ve funkci USBH_USR_Init(). 32
33 Obr. 3.3: USB host aplikace na stm3210c-eval 3.6 Aplikace s USB device módem Pro tento mód byl opět vybrán ukázkový příklad z třídy MSC od STM pro stm3210ceval a byl překonfigurován pro MCBSTM3210C. Příklad ukazuje nastavení desky, která se po připojení k PC tváří jako flash disk. Nastavení jiného názvu zařízení po připojení k PC je možné změnou deskriptorů v souboru usb_desc.c. 33
34 4 Ethernet Tato kapitola má za cíl ukázat implementaci ethernetu na stm3210c-eval nebo MCBSTM32C. STM pro své aplikace používá tři ethernetové stacky. NicheLite, uip stack nebo lwip stack. Aplikace obsahuje komunikaci mikrokontroléru prostřednictvím lwip stacku s webserverem. Program na STM32 je založen na STM32F107 LwIP demonstration package V /20/2009 a webový server je naprogramován pomocí jquery a jquery-ui. 4.1 lwip stack LwIP (lightweight IP) je opensource stack a je následovníkem uip stacku. Původně byl vyvinut Adamsem Duklesem a nyní je jeho vývoj umístěn na Savannahu, kde se na něm může podílet kdokoliv. Jeho hlavními přednostmi jsou implementační nezávislost a malá velikost, přes kterou poskytuje plný rozsah TCP, a proto je vhodný pro embedded systémy. Vlastnosti a protokoly v lwip stacku: IP (Internet Protocol) ICMP (Internet Control Message Protocol) IGMP (Internet Group Management Protocol) UDP (User Datagram Protocol) TCP (Transmission Control Protocol) DNS (Domain names resolver) SNMP (Simple Network Management Protocol) DHCP (Dynamic Host Configuration Protocol) AUTOIP PPP (Point-to-Point Protocol) ARP (Address Resolution Protocol) [13] 34
35 4.2 Webová aplikace a server Nejpoužívanější způsob, jak udělat webovou aplikaci pro komunikaci s vývojovými deskami, je udělat webové stránky, přeložit je do hexa kódu a uložit je buď do paměti mikrokontroléru nebo např. na SD kartu. Při komunikaci a obnově dat by se pak pouze měnily námi požadované položky. Pro tuto aplikaci byla webová aplikace uložena mimo kit. Webové stránky poskytují několik možností. V prvé řadě je na nich řídící sloupec check boxů, prostřednictvím kterých lze ovládat led diody. Vedle je tzv. informační sloupec check boxů, který ukazuje jejich stav. Jestli je check box zaškrtnut, je led dioda aktivní a naopak. Progressbar graficky znázorňuje hodnotu ADC, která je pod ním navíc číselně vypisována. Dále je sledován stav komunikace mezi serverem a deskou, který je zobrazován v levém horním rohu aplikace. Webový server se skládá ze tří funkcí, které řídí chování celé webové aplikace. Funkce Main() obsahuje řídící algoritmy pro volání obslužných funkcí. Jestliže dojde k zaškrtnutí kontrolních check boxů ve webové aplikaci, je volána funkce SendCmd(). Dále je zde provedeno nastavení progressbaru, to jest jeho maximální hodnoty a hodnoty po inicializaci, a čítače, který každou sekundu vyvolá funkci zjišťující stav led diod a ADC, tím je zajištěno automatické získávání dat pro aplikaci po této době. Funkce SendCmd() je volána pokaždé, když je zaškrtnut jakýkoliv řídící check box na webové stránce. Na začátku funkce je vytvořena proměnná pro každý check box, ve které bude stav daného check boxu, a je defalutně nastavena na nulovou hodnotu. V další části programu se provede kontrola zaškrtnutí všech check boxů a v případě zaškrtnutí se odpovídající proměnná nastaví do jedničky. Získané informace se odešlou ve tvaru " + boardip + "/method=get", { "led1": led1, "led2": led2, "led3": led3, "led4": led4, "led5": led5, "led6": led6, "led7": led7, "led8": led8 })". Stav odeslaní je logován pomocí consol.log(). Funkcí SendRequest() se odešle " + boardip + "/STM32F107AD", "le"". Jestliže běžící aplikace na mikrokontroléru rozpozná správný příkaz, pošle zpět data v JSON formátu. Přijatá data jsou logována a následuje vyčtení stavu led diod z obdržených dat a jeho zobrazení v informačních check boxech. Stav a hodnota ADC se ukáže v progressbaru. V této funkci je navíc kontrolován stav komunikace. 35
36 Obr. 4.1: Ukázka webové aplikace AJAX cross domain Jak již bylo zmíněno, webový server je umístěn mimo vývojový kit. To s sebou přináší problém v podobě AJAX cross domain. Pro vyřešení tohoto problému je nutné použít např. Google Chrome a spouštět jej s vypnutím webového zabezpečení. To jest kliknout pravým tlačítkem na spouštěcí ikonu Google Chromu, dát Properties a v kolonce Target přidat na konec --disable-web-security Sledování chodu komunikace Pro sledování komunikace byl použit program Wireshark, který umožňuje rozsáhlé možnosti v sledování síťové komunikace. Jednoduchost použití tohoto programu odpadá v případě, kdy komunikace neprochází přes síťovou kartu, tedy například jestliže si uživatel naprogramuje chování serveru a zkouší činnost webové aplikace. Pro ladění aplikace byl zprvu použit Nástroj vývojáře ve FireFoxu. Po zjištění problému s ajax cross domain byl nakonec zvolen Google Chrome v režimu omezení zabezpečení a pro sledování komunikace použity nástroje pro vývojáře. 36
37 4.3 Program mikrokontroléru Program běžící na mikrokontroléru vychází z výše zmiňovaného STM32F107 LwIP demonstration package. Na začátku programu je nutné v souboru stm32f107.c definovat, jestli se bude používat RMII nebo MII. Inicializace probíhá ve třech základních krocích. Nejprve je volána funkce System_Setup(), prostřednictvím které se nastaví hodiny, ethernet, GPIO, NVIC, ADC a dle vývojového kitu LCD a led diody. Tím je provedeno nastavení samotných kitů. Dále je provedeno nastavení lwip funkcí LwIP_Init(). V posledním kroku se nastaví TCP voláním funkce httpd_init(). V té se nejprve vytvoří nová TCP struktura. Dále se provede nastavení IP adres, se kterými se bude pracovat, a číslo lokálního portu. Nakonec se nastaví TCP do listening módu a nastaví se funkce, která proběhne po vytvoření TCP spojení. Chování aplikace je dáno funkcí http_recv(), která se nachází v httpd.c. V ní se po provedení kontroly správného příjmu a nenulových dat dělí program dle obsahu doručených dat. Ty se pomocí funkce strncmp() porovnávají s "GET /STM32F107AD" a "GET /method=get". Jestliže je obdržen řetězec GET /STM32F107AD, provede se vyčtení hodnoty z ADC. Ta je následně převedena na řetězec a vypsána na LCD displej. Po vynulování pole, prostřednictvím kterého se odesílá odpověď serveru, je do něj zapsána hlavička odpovědí ve tvaru JSON: HTTP/1.1 GET\r\nContent-type: application/json\r\n\r\n. V cyklu for je funkcí STM_EVAL_LEDStatus() kontrolován stav GPIO, na kterých jsou led diody, a tento stav je přidáván do odpovědi pomocí funkce strcat() v JSON formě a ještě zobrazován na displeji. Po zkontrolování všech led diod je následně do odpovědi ještě přidán stav ADC a celková odpověď je poslána funkcí send_data(). V případě obdržení "GET /method=get" se postupně kontrolují další části doručené zprávy, kde jsou informace z webové aplikace o zaškrtnutí check boxů, a dle těchto informací je řízen stav led diod na desce. 37
38 Na následujícím obrázku lze vidět vzhled aplikace na vývojovém kitu dle nastavení ve webové aplikaci, obr Obr. 4.2: Vzhled aplikace na MCBSTM32C 38
39 5 Aplikace I2C Tento typ sběrnice je velmi často používaný v oblasti senzorů a akčních členů. Hlavní výhodou je jednoduchost a snadná implementace. Ve vzorovém příkladu je ukázána komunikace prostřednictvím I2C mezi stm3210c-eval a BMP I2C komunikace I2C je standardizovaná sběrnice využívající 2 vodiče, datový SDA a hodinový SCL. Základní charakteristika: adresa stanic 7-bitová nebo 10-bitová počet stanic omezen celkovou kapacitní zátěží sběrnice (do 400pF) možná kombinace TTL a CMOS obvodů frekvence hodinových impulsů dána použitým módem (100kHz, 400kHz, 3,4MHz) [14] I2C využívá budiče s otevřeným kolektorem, a to umožňuje nedestruktivní konflikty na sběrnici. Kolektory jsou připojeny k Ucc přes pull-up rezistory. V klidovém stavu jsou vodiče v takzvaném recesivním stavu, kdy je na nich log. 1. Obr. 5.1: I2C sběrnice 39
40 Před započetím I2C komunikace každá stanice kontroluje, jestli je sběrnice v klidovém stavu. Každá stanice při vysílání porovnává vyslaná data se stavem sběrnice. Při konfliktu mezi těmito daty, tedy v situaci, kdy na sběrnici vstoupila jiná stanice, nastává arbitráž. Arbitráž se provádí dle obsahu adresového pole. Jestliže jsou pole totožná, je oslovována stejná stanice a nelze konflikt rozpoznat. V případě, že stanice vysílá H a na sběrnici zjistí stav L, odstupuje. 7-bitová adresa MSB LSB A 6 A 5 A 4 A 3 A 2 A 1 A 0 R/W 10-bitová adresa MSB LSB MSB LSB A 9 A 8 R/W A 7 A 6 A 5 A 4 A 3 A 2 A 1 R/W=0, přenos master -> slave R/W=1, přenos slave -> master Začátek vysílání je zahájen start sekvencí, kdy nejdříve přejde do dominantního stavu SDA a následně SCL. Poté je poslána adresa. Tvar adresy, tedy prvního, případně prvních dvou bytů, byl popsán výše. Přijímací stanice vyšle vždy po přijetí jednoho bytu dat ACK, a tím je zařízena kontrola příjmu celého bytu. Následuje vyslání dat a ukončovací sekvence. Důležitou vlastností slavů je možnost pozdržet hodinový signál, vnutit na SCL stav L, a to v případě, kdy příjemce nestačí zpracovávat data. Grafické znázornění průběhu lze vidět na následujícím obrázku. 40
41 Obr. 5.2: Časové průběhy na I2C sběrnici [15] V [3, s.723] lze najít konkrétní sekvence pro vysílání a příjem dat v různých módech provozu. V dalším popisu budou popsány dvě nejdůležitější sekvence. 7-bitová adr., master vysílání dat S Address A Data1 A Data2 A... DataN A P EV5 EV6 EV8_1 EV8 EV8 EV8 EV8_2 S= Start, P= Stop, A= Acknowledge EV5: SB=1, vynulováno přečtením SR1 reg. následované zapsáním adresy do DR reg. EV6: ADDR=1, vynulováno přečtením SR1 reg. následované přečtením SR2 EV8_1: TxE=1, shift a data reg. jsou prázdné, DATA1 zapsané v DR EV8: TxE=1, shift reg. není prázdný, data reg. je prázdný, vynulování zapsáním do DR reg. EV8_2: TxE=1, BTF=1, programová STOP žádost, TxE a BTF jsou vynulovány hardwarově STOP podmínkou EV5, EV6, EV8_1, EV8_2 pozdrží hodiny do ukončení příslušné softwarové sekvence EV8 softwarová sekvence musí být ukončena před koncem přenosu aktuálního bytu. V případě, že tuto podmínku nelze splnit, je doporučeno použít BTF místo TxE na úkor zpomalení komunikace 41
42 7-bitová adr., master příjem dat S Address A Data1 A Data2 A... DataN NA P EV5 EV6 EV6_1 EV7 EV7 EV7_1 EV7 S= Start, P= Stop, A= Acknowledge, NA= Non-acknowledge EV6_1: Pouze pro přenos 1 bytu. Zakázání ACK a STOP podmínka jsou generovány po EV6, to jest po vynulování ADDR EV7: RxNE=1, vynulování přečtením DR reg. EV7_1: RxNE=1, vynulování přečtením DR reg., ACK=0, a STOP žádost 5.2 Senzor BMP085 BMP085 je digitální senzor tlaku od firmy Bosch. Dále je s ním možné měřit teplotu, a tedy výpočtem ze získaných dat určit i nadmořskou výšku. Obsahuje piezoelektrický senzor, AD převodník, řídící jednotku s EEPROM a I2C interface. V EEPROM jsou uložena kompenzační data vždy pro konkrétní senzor, a to o celkové velikosti 176b, pro výpočet skutečných hodnot z nekompenzovaných dat získaných ze senzoru Parametry senzoru V následujících tabulkách jsou uvedeny základní a maximální parametry senzoru. Zbylé parametry, jako např. hodnoty různých veličin pro jednotlivé módy senzoru, lze najít v datasheetu. Tab. 5.1: Základní parametry BMP085 Parametr Symbol Stav Min. Typ. Max. Jednotka Provozní teplota Ta C Napájecí napětí Vdd V Rozlišení tlak 0.01 hpa výstupních dat teplota 0.1 C 42
43 Tab. 5.2: Mezní parametry BMP085 Parametr Podmínky Min. Max. Jednotka Skladovací teplota C Max. napájecí napětí všechny piny V ESD zatížitelnost HBM, R=1.5kΩ, C=100pf ± 2 kv Max. tlak hpa [16] Zapojení senzoru Typické zapojení senzoru lze vidět na následujícím obrázku. Nezbytné piny pro funkci jsou SCL, SDA a napájecí piny. Obr. 5.3: Zapojení BMP085 43
44 5.3 Výpočetní cyklus Při získávání hodnot je nutné dodržet přesný postup výpočtu. Diagram ukazující algoritmus výpočetního programu je na Obr Před samotným začátkem výpočetního cyklu je nutno získat již zmíněná kalibrační data z EEPROM. Ta je rozdělena do 11 slov o 16b. Rozložení a názvy jednotlivých slov a bytů lze opět vidět na Obr Čekání před čtením UP je závislé na aplikačním módu senzoru (ultra low power, standart, high resolution, ultra high resolution), vlastnosti daných módů jsou uvedeny v datasheetu. Po provedení výpočetního algoritmu je již možno zobrazit T jako skutečnou teplotu, p jako skutečný tlak a dále případně z těchto hodnot ještě vypočítat nadmořskou výšku.[16] Obr. 5.4: Výpočetní cyklus u BMP085[16] 44
45 5.4 Ukázkový program Pro tento program jsou využívány standardní knihovny pro stm32. Dále byl vytvořen soubor BMP085.c, kde lze nalézt veškeré potřebné funkce pro inicializaci komunikace, komunikaci a vlastní výpočet teploty a tlaku. V první fázi programu je provedena inicializace LCD displeje. Dále je volána funkce BMP085_Init(), v níž se pomocí I2C_LowLevel_Init() provede povolení hodin do IC2 periférií a nastaví se piny I2C_SCL_PIN a I2C_SDA_PIN. Následně jsou registry funkcí I2C_DeInit() nastaveny do jejich defalutních hodnot, je nastavena vlastní struktura I2C, povoleno přerušení od I2C a povoleno samotné I2C. V následujících funkcích jsou získány vlastní hodnoty ze senzoru a vypočítány skutečné hodnoty. Během těchto kroků je využito funkcí I2C_WriteReg() a I2C_ReadReg(), které budou nyní podrobně vysvětleny, jelikož pro bezchybný běh I2C komunikace je potřebný přesný sled instrukcí I2C_WriteReg() V našem případě má tato funkce pouze jeden vstupní parametr, a to je hodnota, kterou chceme v průběhu funkce poslat. Na začátku funkce je tedy vytvořen buffer, do kterého je vstupní hodnota uložena, a následně testován I2C_FLAG_BUSY. Jestliže je busy_flag neaktivní, je nastaveno DMA a generována startovací podmínka I2C komunikace. Ta je ověřena kontrolou I2C_FLAG_SB. Po poslání adresy, tedy 0xEE pro zápis, se kontroluje EV6 a jsou poslána data. Následuje kontrola TXE FLagu. Vlastní přenos je uskutečněn pomocí DMA, proto je nutné povolit žádost o DMA přenos daného I2C a povolit DMA TX kanál. Ukončení DMA přenosu signalizuje I2C_DMA_TX_TCFLAG. Před generováním STOP podmínky je ještě nutné zkontrolovat stav I2C_FLAG_BTF. Následně je zakázán DMA TX kanál, žádosti o DMA od I2C a vynulován I2C_DMA_TX_TCFLAG. 45
46 5.4.2 I2C_ReadReg() Na začátku funkce se inicializuje přijímací buffer a proměnné funkce. V první části funkce, po kontrole I2C_FLAG_BUSY, se nakonfiguruje DMA a povoluje automatická generace DMA NACK. Po generaci I2C startovací podmínky a testování I2C_FLAG_SB je vyslána adresa 0xEE, tedy pro zápis. Následuje kontrola ADDR flagu, vyslání 0xF6 a je kontrolován TXE Flag. Následuje opět startovací podmínka, kontrola I2C_FLAG_SB a poslání adresy 0xEF, tedy pro čtení. Po kontrole ADDR Flagu je povolena žádost o DMA, povolen DMA RX kanál a čeká se na ukončení DMA přenosu. Po ukončení je poslána STOP podmínka a je zakázán DMA RX kanál a žádost o DMA. Na závěr je vynulován I2C_DMA_RX_TCFLAG. Na konci se funkce dělí dle toho, jestli je využívána pro získání UP nebo UT. To se zjistí dle velikosti vstupní proměnné funkce - BufferSize. Obr. 5.5: I2C aplikace s BMP085 46
47 6 Implementace příkladů Všechny příklady jsou k dispozici na přiloženém CD, kde jsou dle typu vytvořeny složky SD, USB, Ethernet, I2C a složka Materiály, kde lze nalézt všechny potřebné datasheety. Nejjednodušší způsob implementace spočívá v přidání potřebných částí kódu do již hotových projektů. Druhý, náročnější, spočívá v převzetí potřebných částí kódů a jejich následné implementaci. Projekty mají nastavené relativní cesty inkludovaných složek. Jestliže se tedy změní pozice k projektovému souboru, je třeba změnit i tyto cesty. V uvision to tedy znamená udělat změnu v Project - Options for Target - C/C++ - Include paths. V této záložce, konkrétně v Prepocessor symbols - Define, lze udělat i globální definice pro projekt. Dále je vhodné v Project - Options for Target -Utilities - Settings - Flash Donwload - Download Function zaškrtnout Reset and run. 47
48 Závěr V diplomové práci byly dle zadání zhotoveny ukázky příkladů na využití SD karty, USB, Ethernetu a I2C. Příklad s SD kartou ukazuje minimální potřebné kroky k funkčnosti této periférie. To znamená nastavení SPI na vývojovém kitu, přes které probíhá komunikace, práci s file systémem a low level vrstvou. SD karta je následně využita i v USB příkladech, kde lze vidět další možné využití a implementaci ve složitějších projektech. Příklady na USB obsahují práci s USB periférií v host a device módu. Oba příklady jsou zaměřeny na třídu MSC. V device módu je pouze předělán příklad od STM pro funkčnost na MCBSTM32C. Příklad na host mód je udělán pro stm3210c-eval z důvodu nutného externího napájení pro MCBSTM32C v tomto režimu a obsahuje ukázku přenosu dat mezi SD kartou a flash diskem připojeným k desce prostřednictvím USB. Ten spočívá ve vytvoření file systému pro SD kartu, přenosu dat do bufferu, zrušení SD file systému, vytvoření file systému pro USB a přenosu dat na flash disk. Aplikace s Ethernetem je postavena na lwip stacku a ukazuje komunikaci mezi MCBSTM32C a webovým serverem. Prostřednictvím webové aplikace lze ovládat led diody a vyčítat data z ADC a status led diod. V aplikaci na desce je vytvořena TCP struktura, která čeká na příchozí TCP spojení na všech IP adresách a portu 80. Jestliže jsou obdržena data v požadovaném formátu, provede se buď obsluha led diod nebo vyčtení jejich statusu a hodnoty ADC a tyto hodnoty jsou následně poslány v JSON formátu zpět do webové aplikace, kde jsou zobrazeny. Webová aplikace se na tato data dotazuje v pravidelných intervalech v závislosti na nastavení časovače. I2C aplikace ukazuje komunikaci se senzorem BMP085 prostřednictvím I2C. Jsou zde tedy názorně vidět potřebné kroky k nastavení I2C a postup při komunikaci. 48
49 Použitá literatura [1] Flstm32. STMICROELECTRONICS. [online]. February 2014 [cit ]. Dostupné z: lstm32.pdf [2] CD STMICROELECTRONICS. [online]. [cit ]. Dostupné z: [3] CD STMICROELECTRONICS. [online]. [cit ]. Dostupné z: 90.pdf [4] Mcbstm32c. ARM LTD AND ARM GERMANY GMBH. [online]. [cit ]. Dostupné z: [5] CD : UM0600 User manual. STMICROELECTRONICS. [online]. [cit ]. Dostupné z: [6] ULINK-ME Debug Adapter. ARM LTD AND ARM GERMANY GMBH. [online]. [cit ]. Dostupné z: [7] Mcbstm32c base board schematics. ARM LTD AND ARM GERMANY GMBH. [online]. [cit ]. Dostupné z: [8] FatFs - Generic FAT File System Module. [online]. [cit ]. Dostupné z: [9] Universal Serial Bus. USB-IF. [online]. [cit ]. Dostupné z: [10] Universal Serial Bus Specification Revision 2.0. [online]. [cit ]. Dostupné z: [11] Beyondlogic: USB Descriptors. [online]. [cit ]. Dostupné z: 49
50 [12] CD : UM1021. STMICROELECTRONICS. [online]. 08-Mar-2012 [cit ]. Dostupné z: [13] LwIP Wiki. [online]. [cit ]. Dostupné z: [14] UM10204: I 2 C-bus specificatio n and user manual. [online]. 4 April 2014 [cit ]. Dostupné z: [15] 9 - Doplněk IIC: Sériová sběrnice IIC. KAE/MPP - Mikroprocesory a počítače [online]. [cit ]. Dostupné z: [16] BMP085 Data sheet. [online]. 15 Oct 2009 [cit ]. Dostupné z: 50
Universal Serial Bus. Téma 12: USB. Komunikační principy Enumerace Standardní třídy zařízení
Universal Serial Bus Téma 12: USB Komunikační principy Enumerace Standardní třídy zařízení Obecné charakteristiky distribuovaná datová pro připojení počítačových periferií klávesnice, myš, Flash disk,
Distribuované systémy a počítačové sítě
Distribuované systémy a počítačové sítě Universal Serial Bus - USB Komunikační principy Enumerace Standardní třídy zařízení Obecné charakteristiky distribuovaná datová pro připojení počítačových periferií
Rozhraní mikrořadiče, SPI, IIC bus,..
Rozhraní mikrořadiče, SPI, IIC bus,.. Přednáška A3B38MMP 2013 kat. měření, ČVUT - FEL, Praha J. Fischer A3B38MMP, 2013, J.Fischer, kat. měření, ČVUT - FEL, Praha 1 Rozhraní SPI Rozhraní SPI ( Serial Peripheral
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ Fakulta informačních technologií
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ Fakulta informačních technologií Autor: Tomáš Válek, xvalek02@stud.fit.vutbr.cz Login: xvalek02 Datum: 21.listopadu 2012 Obsah 1 Úvod do rozhraní I 2 C (IIC) 1 2 Popis funkčnosti
Vestavné systémy BI-VES Přednáška 5
Vestavné systémy BI-VES Přednáška 5 Ing. Miroslav Skrbek, Ph.D. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze Miroslav Skrbek 2010,2011 ZS2010/11 Evropský
IPZ laboratoře. Analýza komunikace na sběrnici USB L305. Cvičící: Straka Martin, Šimek Václav, Kaštil Jan. Cvičení 2
IPZ laboratoře Analýza komunikace na sběrnici USB L305 Cvičení 2 2008 Cvičící: Straka Martin, Šimek Václav, Kaštil Jan Obsah cvičení Fyzická struktura sběrnice USB Rozhraní, konektory, topologie, základní
Přednáška A3B38MMP. Bloky mikropočítače vestavné aplikace, dohlížecí obvody. 2015, kat. měření, ČVUT - FEL, Praha J. Fischer
Přednáška A3B38MMP Bloky mikropočítače vestavné aplikace, dohlížecí obvody 2015, kat. měření, ČVUT - FEL, Praha J. Fischer A3B38MMP, 2015, J.Fischer, kat. měření, ČVUT - FEL Praha 1 Hlavní bloky procesoru
Praktické úlohy- 2.oblast zaměření
Praktické úlohy- 2.oblast zaměření Realizace praktických úloh zaměřených na dovednosti v oblastech: Měření specializovanými přístroji, jejich obsluha a parametrizace; Diagnostika a specifikace závad, měření
Metody připojování periferií
Metody připojování periferií BI-MPP Přednáška 5 Ing. Miroslav Skrbek, Ph.D. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze Miroslav Skrbek 2010,2011
FVZ K13138-TACR-V004-G-TRIGGER_BOX
TriggerBox Souhrn hlavních funkcí Synchronizace přes Ethernetový protokol IEEE 1588 v2 PTP Automatické určení možnosti, zda SyncCore zastává roli PTP master nebo PTP slave dle mechanizmů standardu PTP
A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL. Rozhraní mikrořadiče, SPI, IIC bus,.. A438NVS, kat. měření, ČVUT - FEL, Praha. J.
Rozhraní mikrořadiče, SPI, IIC bus,.. A438NVS, kat. měření, ČVUT - FEL, Praha J. Fischer 1 Náplň přednášky Druhá část. přednášky 12 Sériové rozhraní SPI, Sériové rozhraní IIC A4B38NVS, 2011, kat. měření,
Rozhraní mikrořadiče, SPI, IIC bus,.. Přednáška 11 (12)
Rozhraní mikrořadiče, SPI, IIC bus,.. Přednáška 11 (12) A438NVS, kat. měření, ČVUT - FEL, Praha J. Fischer A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 1 Náplň přednášky Sériová rozhraní rozhraní
Rozhraní USB. Rozhraní USB. Specifikace USB. Doplnění (upřesnění) 1.0. Rychlosti Low Speed (1.5 Mb/sec) a Full Speed (12 Mb/sec).
1 Specifikace USB USB 1.0 Původní specifikace. USB 1.1 Doplnění (upřesnění) 1.0. Rychlosti Low Speed (1.5 Mb/sec) a Full Speed (12 Mb/sec). USB 2.0 Doplněno o High Speed (480 Mb/sec.) a další rozšíření
Metody připojování periferií
Metody připojování periferií BI-MPP Přednáška 8 Ing. Miroslav Skrbek, Ph.D. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze Miroslav Skrbek 2010,2011
PŘÍLOHY. PRESTO USB programátor
PŘÍLOHY PRESTO USB programátor 1. Příručka PRESTO USB programátor Popis indikátorů a ovládacích prvků Zelená LED (ON-LINE) - PRESTO úspěšně komunikuje s PC Žlutá LED (ACTIVE) - právě se komunikuje s uživatelskou
Software pro vzdálenou laboratoř
Software pro vzdálenou laboratoř Autor: Vladimír Hamada, Petr Sadovský Typ: Software Rok: 2012 Samostatnou část vzdálených laboratoří tvoří programové vybavené, které je oživuje HW část vzdáleného experimentu
Metody připojování periferií
Metody připojování periferií BI-MPP Přednáška 6 Ing. Miroslav Skrbek, Ph.D. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze Miroslav Skrbek 2010,2011
CAL (CAN Application Layer) a CANopen
CAL (CAN Application Layer) a CANopen J. Novák České vysoké učení technické v Praze Fakulta elektrotechnická Katedra měření Průmyslový distribuovaný systém na bázi sběrnice CAN Pressure sensor Stepper
Vývojové kity Mega48,
Vývojové kity Mega48, Mega48 Mega48X a Mega328 Ucelená řada ada vývojových kitů s obvody ATmega48 a ATmega328 je vhodná jak pro výukové účely ely a seznámení se s funkcemi mikrokontrolér mikrokontrolérů,
ZAŘÍZENÍ PRO VZDÁLENÝ SBĚR A PŘENOS DAT FIRMWARE
2011 Technická univerzita v Liberci Ing. Přemysl Svoboda ZAŘÍZENÍ PRO VZDÁLENÝ SBĚR A PŘENOS DAT FIRMWARE V Liberci dne 16. 12. 2011 Obsah Obsah... 1 Úvod... 2 Funkce zařízení... 3 Režim sběru dat s jejich
Rozhraní mikrořadiče, SPI, IIC bus,..
Rozhraní mikrořadiče, SPI, IIC bus,.. Přednáška 14 - X38MIP -2009, kat. měření, ČVUT - FEL, Praha J. Fischer 1 Rozhraní SPI Rozhraní SPI ( Serial Peripheral Interface) - původ firma Motorola SPI není typ
MSP 430F1611. Jiří Kašpar. Charakteristika
MSP 430F1611 Charakteristika Mikroprocesor MSP430F1611 je 16 bitový, RISC struktura s von-neumannovou architekturou. Na mikroprocesor má neuvěřitelně velkou RAM paměť 10KB, 48KB + 256B FLASH paměť. Takže
Firmware řídící jednotky stejnosměrného generátoru
Firmware řídící jednotky stejnosměrného generátoru Zdeněk KOLKA Projekt FR-TI1/184 - Výzkum a vývoj systému řízení a regulace pozemního letištního zdroje Popis Řídicí jednotka GCU 400SG je elektronické
Microchip. PICmicro Microcontrollers
Microchip PICmicro Microcontrollers 8-bit 16-bit dspic Digital Signal Controllers Analog & Interface Products Serial EEPROMS Battery Management Radio Frequency Device KEELOQ Authentication Products Návrh
Jízda po čáře pro reklamní robot
Jízda po čáře pro reklamní robot Předmět: BROB Vypracoval: Michal Bílek ID:125369 Datum: 25.4.2012 Zadání: Implementujte modul do podvozku robotu, který umožňuje jízdu robotu po předem definované trase.
Universal Serial Bus (USB)
Universal Serial Bus (USB) Terminologie V sestavách se zařízeními USB se používá architektura master slave. Počítač je master. Oba konce kabelu nejsou kompatibilní downstream/upstream. počítač upstream
Displej DT20-6. Update firmware řadiče. Simulační systémy Řídicí systémy Zpracování a přenos dat TM 2012_10_10 10. 10. 2012
Simulační systémy Řídicí systémy Zpracování a přenos dat Displej DT20-6 Autor: Ing. Jan Tupý TM 2012_10_10 10. 10. 2012 OSC, a. s. tel: +420 (5) 416 43 111 Staňkova 557/18a fax: +420 (5) 416 43 109 602
Fakulta informačních technologií VUT v Brně Ústav počítačových systémů Periferní zařízení, cvičení IPZ Analýza komunikace na sběrnici USB
Fakulta informačních technologií VUT v Brně Ústav počítačových systémů Periferní zařízení, cvičení IPZ Analýza komunikace na sběrnici USB Úloha č. 2. Zadání: 1. Seznamte se s principy komunikace na sériovém
Návrh konstrukce odchovny 2. dil
1 Portál pre odborné publikovanie ISSN 1338-0087 Návrh konstrukce odchovny 2. dil Pikner Michal Elektrotechnika 19.01.2011 V minulem dile jsme si popsali návrh konstrukce odchovny. senzamili jsme se s
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ ÚSTAV AUTOMATIZACE A MĚŘICÍ TECHNIKY ŘÍZENÍ KROKOVÝCH MOTORKŮ ZÁKLADY ROBOTIKY - SEMESTRÁLNÍ PROJEKT AUTOR PRÁCE VEDOUCÍ
ŘÍDÍCÍ DESKA SYSTÉMU ZAT-DV
ŘÍDÍCÍ DESKA SYSTÉMU ZAT-DV DV300 ZÁKLADNÍ CHARAKTERISTIKA Procesor PowerQUICC II MPC8270 (jádro PowerPC 603E s integrovanými moduly FPU, CPM, PCI a paměťového řadiče) na frekvenci 266MHz 6kB datové cache,
Arduino Martin Friedl
Arduino Martin Friedl 1 Obsah Materiály Vlastnosti Programování Aplikace 2 Co je to Arduino? Arduino je otevřená elektronická platforma, založená na uživatelsky jednoduchém hardware a software. Arduino
Local Interconnect Network - LIN
J. Novák Czech Technical University in Prague Faculty of Electrical Engineering Dept. Of Measurement Distributed Systems in Vehicles CAN LIN MOST K-line Ethernet FlexRay Základní charakteristiky nízká
Přednáška. Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012
Přednáška Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012 Příprava studijního programu Informatika je podporována projektem financovaným z Evropského
Novinky u zařízení pro sériovou komunikaci. Michal Kahánek 25. 5. 2011
Novinky u zařízení pro sériovou komunikaci Michal Kahánek 25. 5. 2011 Program Komunikační brány pro sběrnici Modbus Funkce ProCOM Vestavné sériové servery Uživatelské webové rozhraní EZPage Síťové servery
Architekura mikroprocesoru AVR ATMega ( Pokročilé architektury počítačů )
Vysoká škola báňská Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Architekura mikroprocesoru AVR ATMega ( Pokročilé architektury počítačů ) Führer Ondřej, FUH002 1. AVR procesory obecně
JUMO LOGOSCREEN 600. Dotyková budoucnost záznamu: Obrazovkový zapisovač
JUMO LOGOSCREEN 600 Dotyková budoucnost záznamu: Obrazovkový zapisovač Nová generace Obrazovkový zapisovač JUMO LOGOSCREEN 600 je nový úvodní model řady LOGOSCREEN, který je určen pro skutečný provoz na
Výuková laboratorní sestava seminář pro učitele
Výuková laboratorní sestava seminář pro učitele Programování kitů v ARM MBED Bc. Petr Kůrka (kurkape6@fel.cvut.cz) Katedra měření Fakulta elektrotechnická České vysoké učení technické v Praze Možnosti
Mikrokontroléry. Doplňující text pro POS K. D. 2001
Mikrokontroléry Doplňující text pro POS K. D. 2001 Úvod Mikrokontroléry, jinak též označované jako jednočipové mikropočítače, obsahují v jediném pouzdře všechny podstatné části mikropočítače: Řadič a aritmetickou
Uživatelský modul. DF1 Ethernet
Uživatelský modul DF1 Ethernet APLIKAC NÍ PR ÍRUC KA POUŽITÉ SYMBOLY Použité symboly Nebezpečí Důležité upozornění, jež může mít vliv na bezpečí osoby či funkčnost přístroje. Pozor Upozornění na možné
SEMESTRÁLNÍ PROJEKT Y38PRO
SEMESTRÁLNÍ PROJEKT Y38PRO Závěrečná zpráva Jiří Pomije Cíl projektu Propojení regulátoru s PC a vytvoření knihovny funkcí pro práci s regulátorem TLK43. Regulátor TLK43 je mikroprocesorový regulátor s
Použití UART a radia na platformě micro:bit
Použití UART a radia na platformě micro:bit Jakub Vodsed álek Katedra měření Fakulta elektrotechnická České vysoké učení v Praze 25. června 2017 Obsah 1 Úvod 2 UART UART - úvod UART - výstup Prostý výpis
Uživatelský manuál. KNXgw232
KNXgw232 Uživatelský manuál verze 1.5 KNXgw232 slouží pro ovládání a vyčítání stavů ze sběrnice KNX RS232 s ASCII protokolem signalizace komunikace galvanické oddělení KNX - RS232 možnost napájení z KNX
Vývojový kit osazený procesorem ARM - Cookie
Vývojový kit osazený procesorem ARM - Cookie Pro edici NuMicro 1.0 Web: www.coocox.org Fórum: forum.coocox.org Technická podpora: master@coocox.com Marketing: market&coocox.com 1. Úvod Cookie je open-source
Řídicí a monitorovací systém pro akvária. Lukáš Kratina
Řídicí a monitorovací systém pro akvária Lukáš Kratina Freescale Technology Application 2013-2014 1 Úvod Na to jak je akvaristika rozmanitá, kolik faktorů ovlivňuje správný chod akvária a zejména kolik
VINCULUM VNC1L-A. Semestrální práce z 31SCS Josef Kubiš
VINCULUM VNC1L-A Semestrální práce z 31SCS Josef Kubiš Osnova Úvod Základní specifikace obvodu Blokové schéma Firmware Aplikace Příklady příkazů firmwaru Moduly s VNC1L-A Co to je? Vinculum je nová rodina
PRESTO. USB programátor. Uživatelská příručka
PRESTO USB programátor Uživatelská příručka OBSAH 1. PRESTO 3 1.1. Použití 3 2. Obsah dodávky 3 3. Instalace 3 3.1. Instalace ovladačů 3 3.2. Instalace programu UP 4 4. Popis programovacího konektoru 5
Siemens (3V) Ericsson (5V) Alcatel (3.6V) C10, C35, C45, C55 T10s 501 S10, S25, S35 T20e (3V) M35, M50, MT50 T18s A60
1. Popis zařízení UPS monitor UPS monitor je jednoduché zařízení sloužící ke sledování stavu UPS (Uninterruptible Power Supply) záložních napájecích zdroj ů. Zařízení má vestavěný generátor času a kalendá
PK Design. MB-ATmega16/32 v2.0. Uživatelský manuál. Základová deska modulárního vývojového systému MVS. Verze dokumentu 1.0 (21.12.
MB-ATmega16/32 v2.0 Základová deska modulárního vývojového systému MVS Uživatelský manuál Verze dokumentu 1.0 (21.12.2004) Obsah 1 Upozornění... 3 2 Úvod... 4 2.1 Vlastnosti základové desky...4 2.2 Vlastnosti
PŘÍSTUP. Docházkový terminál itouch. Produktový list : DT - itouch
Docházkový terminál itouch Vlastní hardware terminálu obsahuje čtyř jádrový procesor a 1GB RAM a má tedy velkou výkonovou rezervu pro pozdější aktualizace softwaru a integrace nových funkcí. Pro ukládání
Přerušovací systém s prioritním řetězem
Přerušovací systém s prioritním řetězem Doplňující text pro přednášky z POT Úvod Přerušovací systém mikropočítače může být koncipován několika způsoby. Jednou z možností je přerušovací systém s prioritním
Návod pro použití snímače tlaku s rozhraním IO-Link
Návod pro použití snímače tlaku Vytvořil: Ing. Ondřej Čožík Datum: 12. 2. 2015 Rev: 1.0 Obsah OBSAH... 1 ÚVOD... 2 1. POŽADAVKY PRO MOŽNOST ZAPOJENÍ SNÍMAČE DO PRŮMYSLOVÉ SÍTĚ... 2 1.1. STRUKTURA SÍTĚ...
7. Aplikační vrstva. Aplikační vrstva. Počítačové sítě I. 1 (5) KST/IPS1. Studijní cíl. Představíme si funkci aplikační vrstvy a jednotlivé protokoly.
7. Aplikační vrstva Studijní cíl Představíme si funkci aplikační vrstvy a jednotlivé protokoly. Doba nutná k nastudování 2 hodiny Aplikační vrstva Účelem aplikační vrstvy je poskytnout aplikačním procesům
Uživatelská příručka
Rele Control Elektronické ovládání výstupů Uživatelská příručka ver. 1.36 (09/02/2006) revize 07.10.2006 HW PROGRESS Milan Jaroš OBSAH: 1 Seznámení... 3 1.1 Určení... 3 1.2 Základní údaje... 3 1.3 Složení
TEMPO průmyslový panelový počítač
TEMPO průmyslový panelový počítač ELSACO, Jaselská 177, 280 00 Kolín, CZ http://www.elsaco.cz mail: elsaco@elsaco.cz stručné představení struktura toku informací v technologických sítích prezentace dat
Učební text pro programování PLC S7 314C-2DP
Učební text pro programování PLC S7 314C-2DP Strana 1 z 33 1. Uspořádání PLC Simatic S7-300...3 Spektrum stavebních jednotek:...3 Důležité prvky napájecího zdroje a CPU:...3 MPI- rozhráni :...3 2. Pokyny
Mikropočítačová vstupně/výstupní jednotka pro řízení tepelných modelů. Zdeněk Oborný
Mikropočítačová vstupně/výstupní jednotka pro řízení tepelných modelů Zdeněk Oborný Freescale 2013 1. Obecné vlastnosti Cílem bylo vytvořit zařízení, které by sloužilo jako modernizovaná náhrada stávající
Displej DT20-6. Update firmware. Simulační systémy Řídicí systémy Zpracování a přenos dat TM 2011_07_19 19. 7. 2011
Simulační systémy Řídicí systémy Zpracování a přenos dat Displej DT20-6 Autor: Spolupracovníci: Ing. Jan Tupý Ing. Ivo Henych Vedoucí odd. : Ing. Jan Tupý TM 2011_07_19 19. 7. 2011 OSC, a. s. tel: +420
SIMATIC S IT. Micro Automation. Promoters Meeting October Představení CP IT SPIDER CONTROL TELESERVIS. TESTOVACÍ server.
SIMATIC S7-200 243-1 2005, Page 1 Program workshopu Začátek: 9.00 GPRS - aplikace pro GPRS, základy - jak nastavit vzdálenou stanici, knihovna instrukcí pro GPRS - jak nastavit server (SINAUT MICRO SC,
Seznámení s Quidy. vstupní a výstupní moduly řízené z PC. 2. srpna 2007 w w w. p a p o u c h. c o m
vstupní a výstupní moduly řízené z PC 2. srpna 2007 w w w. p a p o u c h. c o m Seznámení s Quidy Katalogový list Vytvořen: 1.8.2007 Poslední aktualizace: 2.8 2007 12:16 Počet stran: 16 2007 Adresa: Strašnická
UDAQ-1216A UDAQ-1416A. multifunkèní modul pro rozhraní USB
UDAQ-1216A UDAQ-1416A multifunkèní modul pro rozhraní USB Záruèní a pozáruèní servis, technická podpora: adresa: TEDIA spol. s r. o., Zábìlská 12, 31211 Plzeò telefon: +420 377 478 168 fax: +420 377 478
Manuál přípravku FPGA University Board (FUB)
Manuál přípravku FPGA University Board (FUB) Rozmístění prvků na přípravku Obr. 1: Rozmístění prvků na přípravku Na obrázku (Obr. 1) je osazený přípravek s FPGA obvodem Altera Cyclone III EP3C5E144C8 a
Uživatelský manuál. KNXgal. řízení zabezpečovacích ústředen. Galaxy ze sběrnice KNX. napájeno ze sběrnice KNX. indikace komunikace na KNX
KNXgal Uživatelský manuál verze 1.2 řízení zabezpečovacích ústředen Galaxy ze sběrnice KNX napájeno ze sběrnice KNX indikace komunikace na KNX a s ústřednou Galaxy montáž na DIN lištu (1 modul) nastavitelné
1. Připojení analogových senzorů
Z minulých lekcí víme, jak k našemu systému připojit základní prvky uživatelského rozhraní (tlačítka, LED, LCD displej, sériová linka), jak detekovat přiblížení uživatele, měřit úroveň osvětlení a jak
Úvod do mobilní robotiky AIL028
md at robotika.cz http://robotika.cz/guide/umor07/cs 11. října 2007 1 Definice Historie Charakteristiky 2 MCU (microcontroller unit) ATmega8 Programování Blikání LEDkou 3 Kdo s kým Seriový port (UART)
Úvod do mobilní robotiky NAIL028
md at robotika.cz http://robotika.cz/guide/umor08/cs 6. října 2008 1 2 Kdo s kým Seriový port (UART) I2C CAN BUS Podpora jednočipu Jednočip... prostě jenom dráty, čti byte/bit, piš byte/bit moduly : podpora
ETC Embedded Technology Club setkání 3, 3B zahájení třetího ročníku
ETC Embedded Technology Club setkání 3, 3B 9.10. 2018 zahájení třetího ročníku Katedra měření, Katedra telekomunikací,, ČVUT- FEL, Praha doc. Ing. Jan Fischer, CSc. ETC club, 3, 3B 23.10.2018, ČVUT- FEL,
Témata profilové maturitní zkoušky
Obor: 18-20-M/01 Informační technologie Předmět: Databázové systémy Forma: praktická 1. Datový model. 2. Dotazovací jazyk SQL. 3. Aplikační logika v PL/SQL. 4. Webová aplikace. Obor vzdělání: 18-20-M/01
Principy komunikace s adaptéry periferních zařízení (PZ)
Principy komunikace s adaptéry periferních zařízení (PZ) Několik možností kategorizace principů komunikace s externími adaptéry, např.: 1. Podle způsobu adresace registrů, které jsou součástí adaptérů.
Vestavné systémy. BI-VES Přednáška 9. Ing. Miroslav Skrbek, Ph.D.
Vestavné systémy BI-VES Přednáška 9 Ing. Miroslav Skrbek, Ph.D. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze Miroslav Skrbek 2010,2011 ZS2010/11 Evropský
CA21 PŘÍRUČKA UŽIVATELE
CA21 PŘÍRUČKA UŽIVATELE CA21 je komunikační adaptér umožňující propojení sítí automatů a periferií MICROPEL s PC pomocí rozhraní USB příručka uživatele edice 03.2009 2. verze dokumentu pro firmware 1.080
EduKit84. Výuková deska s programátorem pro mikrokontroléry PIC16F84A firmy Microchip. Uživatelská příručka
EduKit84 Výuková deska s programátorem pro mikrokontroléry PIC16F84A firmy Microchip Uživatelská příručka OBSAH 1. EduKit84 3 2. Popis zařízení 3 3. Provozní režimy 3 4. Mikrokontrolér PIC16F84A 4 5. Tabulka
Sériové komunikace KIV/PD Přenos dat Martin Šimek
Sériové komunikace KIV/PD Přenos dat Martin Šimek O čem přednáška je? 2 Konfigurace datového spoje Sériová rozhraní RS-232, RS-485 USB FireWire Konfigurace datového spoje 3 Topologie datového spoje 4 Rozhraní
TW15 KONCOVÝ PRVEK MSKP. Popis výrobku Technická data Návod k obsluze. Technologie 2000 s.r.o., Jablonec nad Nisou
TW15 KONCOVÝ PRVEK MSKP Popis výrobku Technická data Návod k obsluze Technologie 2000 s.r.o., Jablonec nad Nisou Obsah: 1. CHARAKTERISTIKA... 3 2. TECHNICKÉ PARAMETRY... 4 2.1 VÝROBCE:... 4 3. POPIS TW15ADAM...
Činnost CPU. IMTEE Přednáška č. 2. Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus
Činnost CPU Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus Hodinový cyklus CPU je synchronní obvod nutné hodiny (f CLK ) Instrukční cyklus IF = doba potřebná
UniPi 1.1 Lite Technologická dokumentace
UniPi 1.1 Lite Technologická dokumentace Obsah 1 Úvodní představení produktu... 3 2 Popis produktu... 4 2.1 Využití GPIO pinů... 5 2.2 GPIO konektor... 5 2.3 Napájení... 6 2.4 Montáž Raspberry Pi k UniPi
USB. Universal Serial Bus. www.usb.org. revize 2.0 z 27.dubna 200
USB Universal Serial Bus www.usb.org revize 2.0 z 27.dubna 200 Proč vznikla? Základní charakteristika USB bylo třeba vytvořit nové univerzální a dostatečně rychlé rozhraní pro vícenásobné připojení různých
Programování mikropočítačů platforma Arduino
Programování mikropočítačů platforma Arduino Obsah Arduino... 1 Digitální výstupy a vstupy... 2 Připojení LED k Arduinu... 2 Co je to LED?... 3 Výpočet hodnoty předřadného rezistoru pro LED... 3 Barevné
Modbus TCP. integrovaný ethernet přepínač umožňuje liniovou topologii 2x konektor M12, 4pinový, kódování D pro připojení na ethernet
programování dle IEC 61131-3 pomocí CODESYS V3 Ethernet a USB rozhraní stupeň krytí IP67 s integrovaným napájením LED pro indikaci stavu PLC, napájecího napětí, poruch signálů a sběrnice multiprotokolová
1. MIKROPROCESOR ATMEGA A/D PŘEVODNÍK MÓDY PŘEVODNÍKU Single Conversion Mode Auto Triggering Start...
1. MIKROPROCESOR ATMEGA 8535... 2 1.1 A/D PŘEVODNÍK... 2 1.2 MÓDY PŘEVODNÍKU... 3 1.2.1 Single Conversion Mode... 3 1.2.2 Auto Triggering Start... 4 1.2.3 Free Running Mode... 4 1.3 VÝBĚR MĚŘENÉHO KANÁLU...
Návrh konstrukce odchovny 3. dil
1 Portál pre odborné publikovanie ISSN 1338-0087 Návrh konstrukce odchovny 3. dil Pikner Michal Elektrotechnika 16.02.2011 V minulém díle jsme se seznámily s elektronickým zapojením. Popsali jsme si principy
Střední průmyslová škola a Vyšší odborná škola, Hrabákova 271, Příbram. III / 2 = Inovace a zkvalitnění výuky prostřednictvím ICT
Škola Číslo projektu Číslo a název šablony klíčové aktivity Tematická oblast Název sady Téma Anotace Autor Střední průmyslová škola a Vyšší odborná škola, Hrabákova 271, Příbram CZ.1.07/1.5.00/34.0556
Laboratorní cvičení z předmětu Elektrická měření 2. ročník KMT
MĚŘENÍ S LOGICKÝM ANALYZÁTOREM Jména: Jiří Paar, Zdeněk Nepraš Datum: 2. 1. 2008 Pracovní skupina: 4 Úkol: 1. Seznamte se s ovládáním logického analyzátoru M611 2. Dle postupu měření zapojte pracoviště
Metody připojování periferií BI-MPP Přednáška 1
Metody připojování periferií BI-MPP Přednáška 1 Ing. Miroslav Skrbek, Ph.D. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze Miroslav Skrbek 2010,2011
Gymnázium Vysoké Mýto nám. Vaňorného 163, 566 01 Vysoké Mýto
Gymnázium Vysoké Mýto nám. Vaňorného 163, 566 01 Vysoké Mýto Registrační číslo projektu Šablona Autor Název materiálu CZ.1.07/1.5.00/34.0951 III/2 INOVACE A ZKVALITNĚNÍ VÝUKY PROSTŘEDNICTVÍM ICT Mgr. Petr
Modul univerzálních analogových vstupů R560. Shrnutí
R560 Modul univerzálních analogových vstupů Shrnutí Modul analogových vstupů R560 je mikroprocesorem řízený, komunikativní modul s osmi vstupy s volitelným rozsahem (napětí, odpor, teplota, proudová smyčka).
AD4RS. měřící převodník. 4x vstup pro měření unifikovaného signálu 0 10 V, 0 20 ma, 4 20 ma. komunikace linkami RS232 nebo RS485
měřící převodník 4x vstup pro měření unifikovaného signálu 0 10 V, 0 20 ma, 4 20 ma komunikace linkami RS232 nebo RS485. Katalogový list Vytvořen: 4.5.2007 Poslední aktualizace: 15.6 2009 09:58 Počet stran:
Převodník DCPSE. Komunikační protokol
Převodník DCPSE Komunikační protokol EGMedical, s.r.o. Křenová 19, 602 00 Brno CZ www.strasil.net 2013 Obsah 1. Úvod... 3 2. Komunikační protokol... 3 3. Nastavení z výroby... 3 4. Adresace zařízení...
Komunikační protokol EX Bus. Komunikační protokol EX Bus. Topologie. Fyzická vrstva. Přístup ke sdílenému přenosovému mediu (sběrnici)
Komunikační protokol EX Bus EX Bus je standard sériového přenosu dat, primárně určený pro přenos provozních informací mezi přijímačem a ostatními zařízeními k němu připojenými. Nahrazuje standard přenosu
Knihovna RecDBXLib ZÁZNAMY V DATABOXU TXV 003 49.01
PROGRAMOVATELNÉ AUTOMATY Knihovna RecDBXLib ZÁZNAMY V DATABOXU TXV 003 49.01 KNIHOVNA RecDBXLib DATABÁZE V DATABOXU 2. vydání řijen 2008 OBSAH 1. ÚVOD...3 2. KNIHOVNA RecDBXLib DATABÁZE V DATABOXU...4
NÁVOD K OBSLUZE konfigurační SW CS-484
NÁVOD K OBSLUZE konfigurační SW CS-484 OBSAH 1. Popis 2. Propojení modulu s PC 3. Instalace a spuštění programu CS-484 4. POPIS JEDNOTLIVÝCH ZÁLOŽEK 4.1. Připojení 4.1.1 Připojení modulu 4.2. Nastavení
PŘÍRUČKA SÍŤOVÝCH APLIKACÍ
PŘÍRUČKA SÍŤOVÝCH APLIKACÍ Uložení protokolu tisku na síť Verze 0 CZE Definice poznámek V celé Příručce uživatele používáme následující ikony: Poznámky uvádějí, jak reagovat na situaci, která může nastat,
Stručný návod pro software dodávaný jako příslušenství k NetMini adaptéru. Komunikace UPS \ NetAgent Mini DK532, DP532. O.K.SERVIS Plus s.r.o.
Komunikace UPS \ NetAgent Mini DK532, DP532 O.K.SERVIS Plus s.r.o. 1/6 Popis adaptéru Do UPC Status LED Do LAN (LAN Port LED) Do DC adaptéru NetAgent Mini External Stručný přehled dodávaného software k
Uživatelský manuál. KNXgal
gal Uživatelský manuál verze 1.2 řízení zabezpečovacích ústředen Galaxy ze sběrnice napájeno ze sběrnice indikace komunikace na a s ústřednou Galaxy montáž na DIN lištu (1 modul) nastavitelné adresy na
Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost
Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 CZ.1.07 Vzděláním pro konkurenceschopnost Projekt je realizován v rámci Operačního programu Vzdělávání pro konkurence schopnost, který je spolufinancován
MIDAM Verze 1.1. Hlavní okno :
MIDAM Verze 1.1 Podporuje moduly Midam 100, Midam 200, Midam 300, Midam 400, Midam 401, Midam 410, Midam 411, Midam 500, Midam 600, Ghc 2x. Umožňuje nastavení parametrů, sledování výstupních nebo vstupních
Semestrální práce z předmětu Speciální číslicové systémy X31SCS
Semestrální práce z předmětu Speciální číslicové systémy X31SCS Katedra obvodů DSP16411 ZPRACOVAL: Roman Holubec Školní rok: 2006/2007 Úvod DSP16411 patří do rodiny DSP16411 rozšiřuje DSP16410 o vyšší
Komunikační protokol
Komunikační protokol verze dokumentu 8, pro firmware od verze 3.3 DALI232, DALI232e, DALInet, DALI2net y DALI RS232 / Ethernet ASCII protokol podpora MULTIMASTER signalizace připojení DALI sběrnice podpora
4x vstup pro měření unifikovaného signálu 0 10 V, 0 20 ma, 4 20 ma. komunikace linkami RS232 nebo RS485
měřící převodník 4x vstup pro měření unifikovaného signálu 0 10 V, 0 20 ma, 4 20 ma komunikace linkami RS232 nebo RS485 13. ledna 2017 w w w. p a p o u c h. c o m 0294.01.02 Katalogový list Vytvořen: 4.5.2007
Uživatelský manuál WEB SERVICE V3.0 IP kamer Dahua
WEB SERVICE V3.0 IP kamer Dahua Obsah 1. Úvod...1 2. Přihlášení...1 3 Nastavení (Setup)...3 3.1.1. Kamera Obraz (Conditions)...3 3.1.2.1 Kamera Video Video...3 3.1.2.2. Kamera Video snímek (Snapshot)...4