Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
statnice:bakalar:b4b38nvs [2026/05/17 08:49] – [Typické řady log. obvodů CMOS používaných ve vestavných systémech (VS), jejich základní vlastnosti; dynamický proudový odběr MCU a logických obvodů CMOS. Blokování napájení MCU a log. obvodů - způsob, důvod, použité součástky.] mates1nstatnice:bakalar:b4b38nvs [2026/06/06 18:31] (current) – [Obvyklé vstupní a výstupní napěťové úrovně] mates1n
Line 1: Line 1:
 ====== Návrh vestavných systémů ====== ====== Návrh vestavných systémů ======
- 
  
  
Line 152: Line 151:
 V embedded systémech se operační zesilovače používají nejčastěji s jedním (a tedy nesymetrickým) napájecím napětím (+3 nebo +5V). V embedded systémech se operační zesilovače používají nejčastěji s jedním (a tedy nesymetrickým) napájecím napětím (+3 nebo +5V).
  
-**Virtuální nula** (Virtual Ground): pro zapojení ve zpětné vazbě (tj. invertující vstup je z obvodu za OZ) nemá invertující vstup přímou referenci na 0, tj. 0 je rozdíl napětí mezi vstupy ($U_{-} = U_{+}$). Díky tomu lze, při dostatečném napětí zátěže, udělat např. emitorový sledovač NPN, který reguluje proud na zátěži (na kolektoru) pouze přes napětí na vstupu a rezistor na emitoru (a díky velkému zesílení vyloučí působení napětí $U_{BE}).  +**Virtuální nula** (Virtual Ground): pro zapojení ve zpětné vazbě (tj. invertující vstup je z obvodu za OZ) nemá invertující vstup přímou referenci na 0, tj. 0 je rozdíl napětí mezi vstupy ($U_{-} = U_{+}$). Díky tomu lze, při dostatečném napětí zátěže, udělat např. emitorový sledovač NPN, který reguluje proud na zátěži (na kolektoru) pouze přes napětí na vstupu a rezistor na emitoru (a díky velkému zesílení vyloučí působení napětí $U_{BE}$).  
  
 === Neinvertující zesilovač s OZ. === === Neinvertující zesilovač s OZ. ===
Line 165: Line 164:
 == Vstup == == Vstup ==
 Typicky 0-3.3V, někdy 5V tolerantní (v datasheetu pin označen **FT**) Typicky 0-3.3V, někdy 5V tolerantní (v datasheetu pin označen **FT**)
-  * log 0 -  $U_{in} < 0.3 * U_{cc} +  * log 0 -  $U_{in} < 0.3 * U_{cc}$ 
-  * log 1 -  $U_{in} > 0.7 * U_{cc}+  * log 1 -  $U_{in} > 0.7 * U_{cc}$
   * má ochrané diody (většinou)   * má ochrané diody (většinou)
  
Line 180: Line 179:
  
   * **Floating** (Plovoucí) - bez připojeného potenciálu - napětí se volně pohybuje vlivem šumu, nepředvídatelná logická úroveň   * **Floating** (Plovoucí) - bez připojeného potenciálu - napětí se volně pohybuje vlivem šumu, nepředvídatelná logická úroveň
-  * **PULL-UP** - rezistor na ${U_{dd}$, pokud je pin bez signálu → HIGH+  * **PULL-UP** - rezistor na $U_{dd}$, pokud je pin bez signálu → HIGH
   * **PULL-DOWN** - rezistor na GND, pokud je pin bez signálu → LOW   * **PULL-DOWN** - rezistor na GND, pokud je pin bez signálu → LOW
  
 ==Výstup== ==Výstup==
  
-  * **PUSH-PULL** - používá dva tranzistory na přepínání mezi GND a ${U_{dd}$ +  * **PUSH-PULL** - používá dva tranzistory na přepínání mezi GND a $U_{dd}$ 
-  * **OPEN-DRAIN** - tranzistor na GND - tranz. sepnut→ LOW, rozepnut→ undefined, připnuto GND - pro log. 1 potřebuje pull-up rezistor na ${U_{dd}$+  * **OPEN-DRAIN** - tranzistor na GND - tranz. sepnut→ LOW, rozepnut→ undefined, připnuto GND - pro log. 1 potřebuje pull-up rezistor na ${U_{dd}}$
  
 U výstupu lze zvolit rychlost: low, medium, high, very high - tvrdost buzení výstupu. Pokud je zbytečně vysoká, vznikají napěťové špičky přes indukčnost cesty na PCB nebo kabelu. U výstupu lze zvolit rychlost: low, medium, high, very high - tvrdost buzení výstupu. Pokud je zbytečně vysoká, vznikají napěťové špičky přes indukčnost cesty na PCB nebo kabelu.
Line 235: Line 234:
  
 === Typické řady log. obvodů CMOS používaných ve vestavných systémech === === Typické řady log. obvodů CMOS používaných ve vestavných systémech ===
-== 4000 (např. 4011, 4040, 4093)==+== 4000 series (např. 4011, 4040, 4093)==
       * Starší řada, vhodná pro široký rozsah napájení (3–15 V).       * Starší řada, vhodná pro široký rozsah napájení (3–15 V).
       * Nízký statický odběr, vhodné pro bateriová zařízení.       * Nízký statický odběr, vhodné pro bateriová zařízení.
       * Pomalejší než řady 74xx.       * Pomalejší než řady 74xx.
 +
 ==74HCxxx (High-speed CMOS)== ==74HCxxx (High-speed CMOS)==
       * Napájení: typicky 2–6 V.       * Napájení: typicky 2–6 V.
 +        * log. $0 - V_{IL} \le 0,3 \cdot V_{in}$
 +        * log. $1 - V_{IH} \ge 0,7 \cdot V_{in}$
       * Rychlejší než 4000, kompatibilní s TTL logikou.       * Rychlejší než 4000, kompatibilní s TTL logikou.
       * Nízký proudový odběr, ideální pro spojení s MCU.       * Nízký proudový odběr, ideální pro spojení s MCU.
 +
 ==74HCTxxx (High-speed CMOS, TTL compatible)== ==74HCTxxx (High-speed CMOS, TTL compatible)==
-      * Stejné jako 74HC, ale vstupní úrovně přizpůsobeny TTL (log. 1 od cca 2 V)+      * Použití tam, kde je potřeba **propojení CMOS a TTL**. 
-      Použití tam, kde je potřeba propojení CMOS a TTL.+      * Stejné jako 74HC, **vstupní úrovně přizpůsobeny TTL** 
 +        * log. 0 - max0,8V 
 +        log1 - min. 2V 
 ==74AC / 74ACT (Advanced CMOS / TTL Compatible)== ==74AC / 74ACT (Advanced CMOS / TTL Compatible)==
       * Ještě rychlejší, větší odběr.       * Ještě rychlejší, větší odběr.
Line 253: Line 259:
  
 Spotřeba MCU se odvíjí hlavně od: Spotřeba MCU se odvíjí hlavně od:
-    * frekvence hodinového signálu (CPU, sběrnice, periferií), +    * **frekvence** hodinového signálu (CPU, sběrnice, periferií), 
-    * aktivních periferií (např. ADC, USART), +    * aktivních **periferií** (např. ADC, USART), 
-    * neoptimalizovaného kódu (např. polling místo přerušení),  +    * neoptimalizovaného **kódu** (např. polling místo přerušení),  
-    * použití spánkových režimů (sleep, stop, standby). +    * použití **spánkových režimů** (sleep, stop, standby). 
  
 ==Statický odběr (v klidu)== ==Statický odběr (v klidu)==
Line 262: Line 268:
     * Vhodné pro nízkopříkonové aplikace.     * Vhodné pro nízkopříkonové aplikace.
 ==Dynamický odběr== ==Dynamický odběr==
-Proud teče hlavně při přechodu logických stavů (0 ↔ 1) +Proud teče hlavně **při přechodu logických stavů** (0 ↔ 1) 
  
 Napájecí proud CMOS - $I_{CC} = f\cdot U_{CC}\cdot \sum{C}$ Napájecí proud CMOS - $I_{CC} = f\cdot U_{CC}\cdot \sum{C}$
Line 275: Line 281:
 == Blokování napájení MCU a logických obvodů == == Blokování napájení MCU a logických obvodů ==
  
-Blokování napájení je klíčové pro stabilní a spolehlivý chod mikrořadiče a připojených digitálních obvodů.+Blokování napájení je klíčové pro **stabilní a spolehlivý chod** mikrořadiče a připojených digitálních obvodů.
  
 Hlavní účel blokování je zajistit: Hlavní účel blokování je zajistit:
Line 300: Line 306:
 === Hodinové signály === === Hodinové signály ===
  
-  * Slouží k taktování CPU a periferií. +Slouží k taktování CPU a periferií, generovány pomocí oscilátorů (RC nebo krystalických).  
-  * Typy: +  * Interní RC oscilátor – levný, nízký odběr, méně přesný. 
-    * Interní RC oscilátor – levný, nízký odběr, méně přesný. +  * Externí krystal (XTAL) – vysoká přesnost, např. 8 MHz. 
-    * Externí krystal (XTAL) – vysoká přesnost, např. 8 MHz. + 
-    * Krystal pro RTC – 32.768 kHz (2¹⁵ Hz → snadné lení na 1 Hz). +V MCU je Real Time Clock (RTC) blok, který slouží k měření reálného časuJeho krystal generuje frekvenci 32,768 Hz (2$^{15}$), dá se tak snadno lit na 1 Hz. Mikrokontrolery obsahují také Phase-Locked Loop (PLLobvod, který násobí nižší frekvenci racionálním číslem (např. 8 MHz → 72 MHz). Více o PLL na stránce [[statnice:bakalar:b0b35lsp|LSP]].
-    * PLL (Phase-Locked Loop) – násobí frekvenci (např. 8 MHz → 72 MHz).+
  
 === RESET === === RESET ===
  
-  *     Může být vyvolán tlačítkem (manuálně), nebo automaticky jiným obvodem. +Může být vyvolán RESET tlačítkem (manuálně), nebo automaticky jiným obvodem. Po resetu se mikrořadič vrátí do výchozího stavu (spustí se inicializace a start programu od začátku). 
-  *     Výsledek: mikrořadič se vrátí do výchozího stavu (spustí se inicializace a start programu od začátku). + 
-      Reset může být aktivován:+Reset může být aktivován:
     * tlačítkem „RESET“,     * tlačítkem „RESET“,
     * watchdogem,     * watchdogem,
Line 319: Line 324:
  
 === POR – Power-On Reset === === POR – Power-On Reset ===
-  * Aktivuje se automaticky při zapnutí napájení+Aktivuje se automaticky při zapnutí napájeníMCU zůstává ve stavu „držení v resetu“, dokud se napájecí napětí dostatečně neustálí. Zabrání rozběhnutí procesoru v nestabilních podmínkách (např. napětí roste pomalu → procesor by mohl začít běžet s chybami). U STM32 se aktivuje, když VDD překročí definovanou mez.
-  * MCU zůstává ve stavu „držení v resetu“, dokud se napájecí napětí dostatečně neustálí. +
-  * Zabrání rozběhnutí procesoru v nestabilních podmínkách (např. napětí roste pomalu → procesor by mohl začít běžet s chybami). +
-  * U STM32 se aktivuje, když VDD překročí definovanou mez.+
  
  
 === BOR – Brown-Out Reset === === BOR – Brown-Out Reset ===
 +Automatický reset v případě, že napětí během běhu programu klesne pod bezpečnou (předem konfigurovanou) hranici (např. 2.0V). 
  
-  * Sleduje, zda napětí neklesne pod bezpečnou hranici během běhu. +Chrání před
-  * Pokud ano → provede automatický reset, aby se zabránilo+    * neplatnými zápisy do paměti 
-    * neplatnému zápisu do paměti, +    * chybnými výpočty 
-    * chybnému výpočtu, +    * zablokování systému 
-    * zablokování systému. + 
-  * U STM32 může být aktivován například pod 2.0 V (hodnota závisí na konfiguraci). +Typicky se používá v systémech s mechanickými akčními členy – tam je bezpečnost kritická.
-  Typicky se používá v systémech s mechanickými akčními členy – tam je bezpečnost kritická. +
-  *      +
-    +
          
 === Watchdog (WDT – Watchdog Timer) === === Watchdog (WDT – Watchdog Timer) ===
-  * Dohlíží na běh programu – pokud se program zacyklí/zasekne a neobnoví watchdog, provede reset. +Dohlíží na běh programu – pokud se program zacyklí/zasekne a neobnoví watchdog, provede reset. 
-  Použití:+Použití:
     * Zabezpečení proti zamrznutí aplikace.     * Zabezpečení proti zamrznutí aplikace.
     * Obnovení systému po chybě.     * Obnovení systému po chybě.
-  * Dva druhy:+Druhy:
     * Interní (součást MCU) – často připojen na systémové hodiny.     * Interní (součást MCU) – často připojen na systémové hodiny.
     * Externí – připojený k MCU zvenčí, spolehlivější.     * Externí – připojený k MCU zvenčí, spolehlivější.
-  * Signály:+Signály:
     * WDI – vstupní impuls, kterým se watchdog „krmí“.     * WDI – vstupní impuls, kterým se watchdog „krmí“.
     * WDO – výstup reset, pokud impuls dlouho nepřijde.     * WDO – výstup reset, pokud impuls dlouho nepřijde.
Line 353: Line 353:
 ==== Čítačové jednotky v mikrořadiči (MCU) ==== ==== Čítačové jednotky v mikrořadiči (MCU) ====
  
-== Režimy čítače ==+=== Režimy čítače ===
  
-**Input Capture** +==Input Capture== 
-    Při příchodu určité události (např. hrany na pinu) se aktuální hodnota čítače uloží do registru+Při **příchodu** určité **události** (např. hrany na pinu) se aktuální **hodnota čítače uloží do registru**.
-    Využití: +
-      měření délky pulsu, +
-      * zaznamenání času události, +
-      * určování střídy (duty cycle). +
-    * Možnosti: náběžná/spádová/jakákoli hrana. +
-    * Přenos hodnoty: +
-      * programově, +
-      * pomocí DMA. +
-    * Analogie: Stopky – když někdo běží, zmáčkneš tlačítko → uloží se čas mezičasu, ale stopky běží dál.+
  
 +Využití:
 +    * měření délky pulsu,
 +    * zaznamenání času události,
 +    * určování střídy (duty cycle).
  
-**Output Compare** +Možnosti: náběžná/spádová/jakákoli hrana. 
-    * Čítač běží a porovnává se s hodnotou v registru+ 
-    Při shodě: výstupní pin změní stav: +Přenos hodnoty buď **programově**, nebo pomocí **DMA**. 
-      * SET – nastaví na 1, + 
-      * RESET – vynuluje, +Analogie: Stopky – když někdo běží, zmáčkneš tlačítko → uloží se čas mezičasu, ale stopky běží dál. 
-      * TOGGLE – překlopí (změní stav). + 
-    * Možné i přerušení nebo událost pro jinou jednotku (např. DMA, ADC...). +==Output Compare== 
-    Využití: + 
-      * generování signálu (např. PWM), +**Čítač** běží a **porovnává se s hodnotou v registru**, při shodě změní výstupní pin stav, nebo vygeneruje přerušení či událost (DMA, ADC,...) 
-      * řízení výkonových prvků (IGBT, tyristory), +    * SET – nastaví na 1 
-      * pulzní řízení motorů. +    * RESET – vynuluje 
-  *  +    * TOGGLE – překlopí (změní stav) 
-** PWM – Pulse Width Modulation** + 
-    Speciální režim čítače, kde+Využití: 
-      nastavená hodnota duty cycle (střída), +      * generování signálu (např. PWM) 
-      * čítač opakuje cyklicky pulzy+      * řízení výkonových prvků (IGBT, tyristory) 
-    Využití: +      * pulzní řízení motorů 
-      * řízení servomotorů, +      periodické události v kódu 
-      * stmívání LED, + 
-      * řízení rychlosti motorů (např. BLDC).+==Pulse Width Modulation (PWM)== 
 +Speciální režim čítače, kde **čítač opakuje cyklické pulzy** podle nastavené hodnoty **duty cycle** (střída). Střída je podíl z délky cyklukdy je pin v log1 (0-100 %) 
 + 
 +Využití: 
 +    * řízení servomotorů 
 +    * stmívání LED 
 +    * řízení rychlosti motorů (např. BLDC)
  
  
Navigation

Playground

QR Code
QR Code statnice:bakalar:b4b38nvs (generated for current page)