Přeskočit na hlavní obsah
Přeskočit hlavičku
Terminated in academic year 2020/2021

Základy programování řídicích systémů

Typ studia bakalářské
Jazyk výuky angličtina
Kód 450-2041/03
Zkratka ZPŘS
Název předmětu česky Základy programování řídicích systémů
Název předmětu anglicky Programming Basics for Control Systems
Kreditů 4
Garantující katedra Katedra kybernetiky a biomedicínského inženýrství
Garant předmětu prof. Ing. Michal Prauzek, Ph.D.

Subject syllabus

Osnovy přednášek
1. Algoritmus, algoritmizace, Základní algoritmické konstrukce. Typy a proměnné.
2. Základní programové konstrukce: instrukce, řídicí příkazy, podprogramy. Program, strojový jazyk,
strojový kód, binární soustava, programovací jazyky.
3. Struktura programu v jazyce C. Jednoduché vstupy a výstupy.Základní typy dat. Větvení a cykly.
4. Pole, přístup k prvkům pole.
5. Reprezentace dat, základní specifikace formátu. Funkce s parametry a s návratovými hodnotami
6. Komentáře , hlavičkové soubory - info, základní syntaxe, klíčová slova, návratové hodnoty, tělo main, použití funkcí
7. Struktura počítače, centrální jednotka, registry, operační paměť, adresa, externí paměť, čítač instrukcí, cyklus fetch-execute, aynchronní události. Vstupy a výstupy. Dotazování a přerušení , sběrnice.
8. Využití PC periferií pro řešení jednoduchých úloh měření.
9. Struktury, uniony, výčtové typy, práce s bity.
10. Ukazatele. Soubory. Použití souborů v úlohách měření.
11. Makra, dynamická alokace, výjimky. Moduly. Hlavičkové soubory. Význam dynamické alokace a mechanismu výjimek pro bezpečné programování řídicích systémů.
12. Standardní knihovny
13.Uživatelské knihovny

Osnovy cvičení
1. Základy algoritmizace - příklady na rozvoj "algoritmického" myšlení

2. Kompilátor jazyka C. Seznámení s vývojovým prostředím. První programy v jazyce C. Základní terminálový I/O.
- Hello world!
- Jednoduchá kalkulačka

3. Terminálový vstup/výstup. Základní datové typy a konstanty. Operátory. Konverze typů.
- Další příklady na IO
- Rozšířená kalkulačka (nepodmíněný výpočet všech operací)

4. Větvení (if, ternární operátor, switch).
- Příklady na větvení
- Rozšíření kalkulkačky (podmíněný výběr typu a operací)

5. Cykly. Příkazy break, continue.
- Příklady na součet řady čísel

6. Pole.
- Načtení prvků do pole
- Výpis pole
- Hledání minima
- Hledání maxima
- Třídění (bubble sort)

7. Funkce. Prototyp funkce. Hlavičkový soubor.
- Vytvoření funkcí pro práci s polem.
- Další příklady na funkce.

8. Práce s periferiemi. Komunikace s okolním světem.
- příklad na propojení dvou PC nebo PC s vestavným systémem

9. Ukazatele.
- příklady na přístup do paměti pomocí ukazatelů

10. Struktury. Výčtový datový typ. Union. Bitová pole.
- příklady použití

11. Soubory.
- příklady použití textového souboru
- příklady použití binárního souboru

12. Knihovny standardních funkcí
Příklady na:
- práci s řetězci
- matematické funkce
- generování náhodných čísel
- převody řetězec <-> číslo
- funkce pro práci s časem

Literature

Herout, P. Učebnice jazyka C. Praha: [Středisko pro podporu studentů se specifickými potřebami ELSA ČVUT], 2015. ISBN 978-80-7232-383-8 .

Advised literature

Richta, K., Šaloun, P.: Programovací jazyk C, skriptum ČVUT, Praha 1998
Wirth, N.: Algoritmy a štruktúry údajov, Alfa, Bratislava 1989
Šaloun, P.: Programovací jazyk C. Skriptum FEI VŠB-TU Ostrava 1994
Šnorek, M. Richta K.: Připojování periferií k PC, Grada, 1996
Horák, J: Učebnice hardware, Computer Press, 2000