Co je program Embedded C a jeho struktura pro začátečníky

Vyzkoušejte Náš Nástroj Pro Odstranění Problémů





Dříve bylo mnoho vestavěných aplikací vyvinuto pomocí programování na úrovni sestavení. Neposkytovali však přenositelnost. Tato nevýhoda byla překonána příchodem různých jazyků na vysoké úrovni, jako jsou C, Pascal a COBOL. Byl to však jazyk C, který získal široké přijetí pro vestavěné systémy, a pokračuje v tom. Napsaný kód C je spolehlivější, škálovatelnější a přenosnější a ve skutečnosti mnohem snáze srozumitelný. Embedded C Programming je duší procesoru fungujícího uvnitř každého vestavěný systém narazíme v našem každodenním životě, jako jsou mobilní telefony, pračky a digitální fotoaparáty. Každý procesor je spojen s integrovaným softwarem. První a nejdůležitější věcí je vestavěný software, který se rozhodne fungovat vestavěný systém. Jazyk Embedded C se nejčastěji používá naprogramujte mikrokontrolér .

Co je to jazyk C?

Jazyk C vyvinul Dennis Ritchie v roce 1969. Jedná se o kolekci jedné nebo více funkcí a každá funkce je kolekcí příkazů provádějících konkrétní úkol.
Jazyk C je jazyk střední úrovně, protože podporuje aplikace na vysoké úrovni a aplikace na nízké úrovni. Než se pustíme do podrobností integrovaného programování C, měli bychom vědět o organizaci paměti RAM.




Mezi hlavní rysy jazyka C patří následující.

  • Jazyk C je software navržený s různými klíčovými slovy, datovými typy, proměnnými, konstantami atd.
  • Embedded C je obecný termín určený pro programovací jazyk napsaný v jazyce C, který je spojen s konkrétní architekturou hardwaru.
  • Embedded C je rozšíření jazyka C s několika dalšími hlavičkovými soubory. Tyto soubory záhlaví se mohou od řadiče k řadiči měnit.
  • The mikrokontrolér 8051 Je použito #include.

Co je to vestavěné C programování

V každém projektu založeném na integrovaném systému hraje programování Embedded C klíčovou roli, aby byl mikrokontrolér spuštěn a provedl preferované akce. V současné době běžně používáme několik elektronických zařízení, jako jsou mobilní telefony, pračky, bezpečnostní systémy, ledničky, digitální fotoaparáty atd. Ovládání těchto vestavěných zařízení lze provádět pomocí zabudovaného programu C. Například v digitálním fotoaparátu, pokud stiskneme tlačítko fotoaparátu pro pořízení fotografie, mikrokontrolér provede požadovanou funkci, aby klikl na obrázek a také jej uložil.



Integrované programování C.

Integrované programování C.

Programování Embedded C je sestaveno se sadou funkcí, kde každá funkce je sada příkazů, které se používají k provádění některých konkrétních úkolů. Oba vložené jazyky C a C jsou stejné a jsou implementovány prostřednictvím některých základních prvků, jako je proměnná, znaková sada, klíčová slova, datové typy, deklarace proměnných, výrazy, příkazy. Všechny tyto prvky hrají klíčovou roli při psaní vloženého programu C.

Návrháři vestavěných systémů musí vědět o architektuře hardwaru, aby mohli psát programy. Tyto programy hrají významnou roli při monitorování a ovládání externích zařízení. Rovněž přímo ovládají a používají vnitřní architekturu mikrokontroléru, jako je zpracování přerušení, časovače, sériová komunikace a další dostupné funkce.


Programování vestavěného systému

Jak jsme již dříve diskutovali, návrh vestavěného systému lze provést pomocí hardwaru a softwaru. Například v jednoduchém vestavěném systému je procesor hlavním modulem, který funguje jako srdce systému. Procesor zde není nic jiného než mikroprocesor, DSP, mikrokontrolér, CPLD a FPGA. Všechny tyto procesory jsou programovatelné tak, aby definovaly fungování zařízení.

Program vestavěného systému umožňuje hardwaru odpovídajícím způsobem kontrolovat vstupy a řídicí výstupy. V tomto postupu bude možná muset vestavěný program řídit vnitřní architekturu procesoru přímo, jako jsou časovače, zpracování přerušení, I / O porty, sériové komunikační rozhraní atd.

Programování vestavěného systému je tedy pro procesor velmi důležité. Pro vestavěné systémy jsou k dispozici různé programovací jazyky, jako je C, C ++, montážní jazyk, JAVA, skript JAVA, Visual Basic atd. Tento programovací jazyk tedy hraje klíčovou roli při vytváření vestavěného systému, ale výběr jazyka je velmi důležitý.

Kroky k vytvoření integrovaného programu C.

Při navrhování vloženého programu c jsou různé kroky, jako je následující.

  • Komentáře
  • Směrnice procesoru
  • Konfigurace portu
  • Globální proměnné
  • Základní funkce / hlavní funkce
  • Prohlášení o proměnné
  • Logika programu

Komentáře

V programovacích jazycích jsou komentáře velmi důležité k popisu funkce programu. Kód komentářů je nespustitelný, ale slouží k poskytnutí programové dokumentace. Abychom porozuměli funkci programu, bude to jednoduchá metoda k pochopení funkce programu. Ve vloženém C jsou komentáře k dispozici ve dvou typech, jmenovitě jednořádkový a hlavní řádek.

V integrovaném programovacím jazyce C můžeme do našeho kódu umístit komentáře, které čtenáři pomohou kódu snadno porozumět.

C = a + b / * přidat dvě proměnné, jejichž hodnota je uložena v jiné proměnné C * /

Jednořádkový komentář

Obecně platí, že pro programovací jazyky jsou jednořádkové komentáře velmi užitečné k objasnění zlomku programu. Tyto komentáře začínají dvojitým lomítkem (//) a lze je umístit kdekoli v programovacím jazyce. Tímto způsobem lze v rámci programu ignorovat celý řádek.

Víceřádkový komentář

Víceřádkové komentáře začínají v programovacích jazycích jednou lomítkem (/) a hvězdičkou (/ *), což vysvětluje blok kódu. Tyto typy komentářů lze uspořádat kdekoli v programovacím jazyce a používají se hlavně k ignorování celého bloku kódu v programu.

Směrnice procesoru

Řádky obsažené v programovém kódu se nazývají direktivy preprocesoru, které lze sledovat pomocí hash symbolu (#). Tyto řádky jsou direktivy preprocesoru, ale nejsou naprogramovanými příkazy.
Kód lze zkontrolovat pomocí preprocesoru před spuštěním kompilace skutečného kódu a vyřešením těchto směrnic před vygenerováním kódu pomocí běžných příkazů. Existuje několik speciálních směrnic preprocesoru, ačkoli dvě směrnice jsou v programovacím jazyce velmi užitečné

jako následující.

#zahrnout
#zahrnout
Sbit LED = P2 ^ 3
Hlavní()
{
LED = 0x0ff
Zpoždění()
LED = 0x00
}
#definovat
#zahrnout
#define LED P0
Hlavní()
{
LED = 0x0ff
Zpoždění()
LED = 0x00
}

Ve výše uvedeném programu se směrnice #include obvykle používá k zahrnutí standardních knihoven, jako jsou studie a. h se používá k povolení I / O funkcí pomocí knihovny „C“. Direktiva #define se obvykle používá k popisu řady proměnných a přiděluje hodnoty spuštěním procesu v rámci konkrétní instrukce, jako jsou makra.

Konfigurace portu

Mikrokontrolér obsahuje několik portů, kde každý port má jiné piny. Tyto piny lze použít k ovládání propojovacích zařízení. Deklaraci těchto pinů lze provést v rámci programu pomocí klíčových slov. Klíčová slova ve vestavěném programu c jsou standardní i předdefinovaná jako bit, sbit, SFR, která se používají k uvedení bitů a jednoho pinu v programu.

Existují určitá slova, která jsou vyhrazena pro provádění konkrétních úkolů. Tato slova jsou známá jako klíčová slova. Jsou standardní a předdefinované v Embedded C. Klíčová slova jsou vždy psána malými písmeny. Tato klíčová slova musí být definována před napsáním hlavního programu. Mezi hlavní funkce klíčových slov patří následující.

#zahrnout
Sbit a = P 2 ^ 2
SFR 0x00 = PoRT0
Bit C.
hlavní()
{
…………… ..
…………… ..
}

sbit

Jedná se o jeden druh datového typu, který se používá pro přístup k jednomu bitu v registru SFR.

Syntaxe pro tento datový typ je: název proměnné sbit = bit SFR

Příklad: sbit a = P2 ^ 1

Pokud přiřadíme p2.1 jako proměnnou „a“, můžeme místo „p2.1“ kdekoli v programu použít „a“, což snižuje složitost programu.

Bit

Tento typ datového typu se používá hlavně pro umožnění bitové adresovatelné paměti paměti s náhodným přístupem, například 20h až 2fh.

Syntaxe tohoto datového typu je: název bitové proměnné

Příklad: bit c

Jedná se o nastavení bitové řady v malé oblasti dat, které se používá hlavně pomocí programu k zapamatování něčeho.

SFR

Tento druh datového typu se používá k získání periferních portů registru SFR prostřednictvím dalšího názvu. Deklaraci všech registrů SFR lze tedy provádět velkými písmeny.

Syntaxe tohoto datového typu je: Název proměnné SFR = adresa SFR pro registr SFR

Příklad: SFR port0 = 0 × 80

Pokud přidělíme 0 × 80 jako „port0“, pak můžeme použít 0 × 80 místo port0 kdekoli v programovacím jazyce, abychom snížili obtížnost programu.

Registr SFR

SFR znamená Special Function Register. V mikrokontroléru 8051 obsahuje paměť RAM s 256 bajty, která je rozdělena na dva hlavní prvky: první prvek 128 bajtů se používá hlavně pro ukládání dat, zatímco druhý prvek 128 bajtů se používá hlavně pro registry SFR. Všechna periferní zařízení, jako jsou časovače, čítače a I / O porty, jsou uložena v registru SFR a každý prvek obsahuje jednu adresu.

Globální proměnné

Když je proměnná deklarována před klíčovou funkcí známou jako globální proměnná. Tuto proměnnou lze povolit u jakékoli funkce v programu. Životnost globální proměnné závisí hlavně na programování, dokud nedojde ke konci.

#zahrnout
Nepodepsané int a, c = 10
Hlavní()
{
……………
………… ..
}

Základní funkce / hlavní funkce

Hlavní funkce je centrální část při provádění libovolného programu a začíná hlavní funkcí jednoduše. Každý program využívá pouze jednu hlavní funkci, protože pokud program obsahuje více než jednu hlavní funkci, bude kompilátor při zahájení provádění programu zmaten.

#zahrnout
Hlavní()
{
……………
………… ..
}

Prohlášení o proměnné

Název jako proměnná se používá k ukládání hodnot, ale tato proměnná by měla být nejprve deklarována, než bude použita v programu. Deklarace proměnné uvádí její název i datový typ. Datový typ zde není nic jiného než reprezentace dat úložiště. V integrovaném programování C používá pro ukládání dat v paměti čtyři základní datové typy, jako je celé číslo, float, znak. Velikost datového typu, stejně jako rozsah, lze definovat v závislosti na kompilátoru.

Datový typ označuje rozsáhlý systém pro deklaraci proměnných různých typů, jako je celé číslo, znak, float atd. Integrovaný software C používá čtyři datové typy, které se používají k ukládání dat do paměti.

Znak „char“ se používá k uložení libovolného jednoho znaku „int“ se používá k uložení celočíselné hodnoty a „float“ se používá k uložení jakékoli přesné hodnoty s plovoucí desetinnou čárkou. Velikost a rozsah různých datových typů na 32bitovém počítači jsou uvedeny v následující tabulce. Velikost a rozsah se mohou u strojů s různými velikostmi slov lišit.

  • Velikost datového typu char / signed char je 1 bajt a její rozsah je od -128 do +128
  • Velikost nepodepsaného char datového typu je 1 bajt a jeho rozsah je od 0 do 255
  • Velikost datového typu Int / signed int je 2 bajty a jeho rozsah je od -32768 do 32767
  • Velikost nepodepsaného int datového typu je 2 bajty a jeho rozsah je od 0 do 65535

Hlavní()
{
Nepodepsané int a, b, c
}

Struktura vloženého C programu je uvedena níže.

  • komentáře
  • direktivy preprocesoru
  • globální proměnné
  • hlavní funkce

{

  • lokální proměnné
  • prohlášení
  • ………… ..
  • ………… ..

}

  • zábava (1)

{

  • lokální proměnné
  • prohlášení
  • ………… ..
  • ………… ..

}

Logika programu

Logikou programu je plán dráhy, která se objevuje v teorii za & předvídatelnými výstupy akcí programu. Vysvětluje teorii jinak, pokud jde o to, proč bude vestavěný program fungovat, a ukazuje rozpoznané účinky akcí, jinak zdrojů.

Hlavní
{
LED = 0x0f
zpoždění (100)
LED = 0x00
zpoždění (100)
}

Hlavní faktory vloženého programu C.

Mezi hlavní faktory, které je třeba vzít v úvahu při výběru programovacího jazyka pro vývoj vestavěného systému, patří následující.

Velikost programu

Každý programovací jazyk zabírá určitou paměť, kde vestavěný procesor, jako je mikrokontrolér, obsahuje extrémně menší množství paměti s náhodným přístupem.

Rychlost programu

Programovací jazyk by měl být velmi rychlý, měl by tedy běžet co nejrychleji. Rychlost zabudovaného hardwaru by neměla být snížena kvůli pomalu běžícímu softwaru.

Přenosnost

Pro různé vestavěné procesory lze provést kompilaci podobných programů.

  • Jednoduchá implementace
  • Jednoduchá údržba
  • Čitelnost

Rozdíly mezi programem C a vloženým programem C.

Rozdíl mezi vestavěným programováním C a C se ve skutečnosti příliš neliší od operačního prostředí a některých rozšíření. Tyto programovací jazyky jsou standardy ISO a mají také přibližně podobnou syntaxi, funkce, datové typy atd. Hlavní rozdíly mezi programováním v jazyce C a integrovaným programováním v jazyce c zahrnují následující.

Jazyk C

Integrovaný jazyk C.

Obecně se tento jazyk používá k vývoji desktopových aplikací

Jazyk Embedded C se používá k vývoji aplikací založených na mikrokontrolérech.
Jazyk C není rozšířením žádného programovacího jazyka, ale univerzálním programovacím jazykemEmbedded C je rozšíření programovacího jazyka C včetně různých funkcí, jako je adresování I / O, aritmetika s pevným bodem, adresování více pamětí atd.

Zpracovává nativní vývoj v příroděZpracovává křížový vývoj v přírodě
Je nezávislý na hardwarové architektuřeZávisí to na hardwarové architektuře mikrokontroléru a dalších zařízení
Překladače jazyka C závisí na operačním systémuIntegrované kompilátory C jsou nezávislé na operačním systému
V jazyce C se ke spuštění programu používají standardní překladačeV integrovaném jazyce C se používají konkrétní překladače.
Populární překladače používané v tomto jazyce jsou GCC, Borland turbo C, Intel C ++ atdPopulární kompilátory používané v tomto jazyce jsou Keil, BiPOM Electronics a green hill
Formát jazyka C je ve volném formátuJeho formát závisí hlavně na druhu použitého mikroprocesoru.
Optimalizace tohoto jazyka je normálníOptimalizace tohoto jazyka je na vysoké úrovni
Je velmi snadné jej upravovat a čístNení snadné jej upravovat a číst
Oprava chyby je snadnáOprava chyb v tomto jazyce je komplikovaná

Příklady vloženého programu C.

Následuje několik jednoduchých programů Embedded C používaných pro projekty založené na mikrokontrolérech .

Příklad-1

Příklad-1

Příklad-2

Příklad-2

Příklad-3

Příklad-3

Příklad-4

Příklad-4

Výhody

The výhody vloženého programu c g zahrnují následující.

  • Je to velmi jednoduché pochopit.
  • Průběžně provádí podobný úkol, takže není třeba měnit hardware, jako je přídavná paměť, jinak úložný prostor.
  • Vykonává jednoduše jeden úkol najednou
  • Cena hardwaru použitého v integrovaném c je obvykle tak nízká.
  • Aplikace embedded jsou v průmyslových odvětvích extrémně vhodné.
  • Vývoj aplikačního programu zabere méně času.
  • Snižuje to složitost programu.
  • Je snadné jej ověřit a pochopit.
  • Je přenosný z jednoho řadiče do druhého.

Nevýhody

The nevýhody vloženého c programování zahrnout následující.

  • Současně provádí pouze jeden úkol, ale nemůže provádět více úkolů
  • Pokud změníme program, bude třeba změnit také hardware
  • Podporuje pouze hardwarový systém.
  • Má problém se škálovatelností
  • Má omezení, jako je omezená paměť, jinak kompatibilita počítače.

Aplikace programu Embedded C.

The aplikace vestavěného c programování zahrnout následující.

  • Programování Embedded C se používá v průmyslových odvětvích pro různé účely
  • Programovacím jazykem používaným v aplikacích je kontrola rychlosti na dálnici, ovládání semaforů, řízení pouličních světel, sledování vozidla, umělá inteligence, domácí automatizace a automatické řízení intenzity.

Doufáme, že jsme byli úspěšní v poskytování snadné a přístupné cesty pro začátečníky Integrované programování C. . Porozumění programování Embedded C je nejdůležitějším předpokladem pro navrhování projektů založených na embedded. Kromě toho lepší porozumění a správné znalosti o vestavěném programování C studentům nesmírně pomáhají při výběru odměňující se kariéry.

Doporučujeme a vítáme dotazy, návrhy a komentáře našich čtenářů. Proto můžete své dotazy a zpětnou vazbu k tomuto článku zveřejnit v níže uvedené sekci komentářů. Postupujte podle níže uvedeného odkazu pro Nepájené projekty