Čeština
Čas: 2026/08/25
Prohlížet: 884

Obrázek 1. Mikroprocesor PIC16F877A

Obrázek 2. Vývodové schéma mikroprocesoru PIC16F877A
| Pin |
Název pinu |
Hlavní funkce |
| 1 |
MCLR/VPP |
Aktivní nízký vstup pro resetování a vstup programovacího napětí. |
| 2 |
RA0/AN0 |
Digitální I/O portu A a analogový vstupní kanál ADC 0. |
| 3 |
RA1/AN1 |
Digitální I/O portu A a analogový vstupní kanál ADC 1. |
| 4 |
RA2/AN2/VREF−/CVREF |
Digitální I/O, ADC kanál 2, nízký referenční vstup ADC a výstup referenčního komparátoru. |
| 5 |
RA3/AN3/VREF+ |
Digitální I/O, ADC kanál 3 a vysoký referenční vstup ADC. |
| 6 |
RA4/T0CKI/C1OUT |
Digitální I/O, externí hodinový vstup Timer0 a výstup komparátoru 1. RA4 používá výstup s otevřeným kolektorem. |
| 7 |
RA5/AN4/SS/C2OUT |
Digitální I/O, ADC kanál 4, aktivně nízký vstup pro výběr SPI Slave a výstup komparátoru 2. |
| 8 |
RE0/RD/AN5 |
Digitální I/O portu E, aktivně nízké ovládání čtení paralelního slave portu a ADC kanál 5. |
| 9 |
RE1/WR/AN6 |
Digitální I/O portu E, aktivně nízké ovládání zápisu paralelního slave portu a ADC kanál 6. |
| 10 |
RE2/CS/AN7 |
Digitální I/O portu E, aktivně nízký výběr čipu paralelního slave portu a ADC kanál 7. |
| 11 |
VDD |
Konektivita pozitivního napájení. |
| 12 |
VSS |
Konektivita uzemnění. |
| 13 |
OSC1/CLKI |
Vstup pro krystal, rezonátor nebo externí hodiny. |
| 14 |
OSC2/CLKO |
Výstup pro krystal nebo rezonátor. V režimu RC vychází z CLKO čtvrtina frekvence oscilátoru. |
| 15 |
RC0/T1OSO/T1CKI |
Digitální I/O portu C, výstup oscilátoru Timer1 a externí vstup hodin Timer1. |
| 16 |
RC1/T1OSI/CCP2 |
Digitální I/O, vstup oscilátoru Timer1 a připojení pro CCP2 zachytávání, porovnávání nebo PWM. |
| 17 |
RC2/CCP1 |
Digitální I/O a připojení pro CCP1 zachytávání, porovnávání nebo PWM. |
| 18 |
RC3/SCK/SCL |
Digitální I/O, SPI vstup/výstup hodin a I²C vstup/výstup hodin. |
| 19 |
RD0/PSP0 |
Digitální I/O portu D a datový bit 0 paralelního slave portu. |
| 20 |
RD1/PSP1 |
Digitální I/O portu D a datový bit 1 paralelního slave portu. |
| 21 |
RD2/PSP2 |
Digitální I/O portu D a datový bit 2 paralelního slave portu. |
| 22 |
RD3/PSP3 |
Digitální I/O portu D a datový bit 3 paralelního slave portu. |
| 23 |
RC4/SDI/SDA |
Digitální I/O, SPI vstup dat a I²C vstup/výstup dat. |
| 24 |
RC5/SDO |
Digitální I/O a SPI výstup dat. |
| 25 |
RC6/TX/CK |
Digitální I/O, USART asynchronní přenos a synchronní vstup/výstup hodin. |
| 26 |
RC7/RX/DT |
Digitální I/O, USART asynchronní příjem a synchronní vstup/výstup dat. |
| 27 |
RD4/PSP4 |
Digitální I/O portu D a datový bit 4 paralelního slave portu. |
| 28 |
RD5/PSP5 |
Digitální I/O portu D a datový bit 5 paralelního slave portu. |
| 29 |
RD6/PSP6 |
Digitální I/O portu D a datový bit 6 paralelního slave portu. |
| 30 |
RD7/PSP7 |
Digitální I/O portu D a datový bit 7 paralelního slave portu. |
| 31 |
VSS |
Zemní připojení. |
| 32 |
VDD |
Připojení kladného napájení. |
| 33 |
RB0/INT |
Digitální I/O portu B a externí vstup přerušení. |
| 34 |
RB1 |
Digitální I/O portu B. |
| 35 |
RB2 |
Digitální I/O portu B. |
| 36 |
RB3/PGM |
Digitální I/O a vstup pro povolení programování ICSP s nízkým napětím. |
| 37 |
RB4 |
Digitální I/O s možností přerušení při změně. |
| 38 |
RB5 |
Digitální I/O s možností přerušení při změně. |
| 39 |
RB6/PGC |
Digitální I/O, přerušení při změně, hodiny programování ICSP a hodiny ladění. |
| 40 |
RB7/PGD |
Digitální I/O, přerušení při změně, data pro programování ICSP a data pro ladění. |
Obě piny VDD a obě piny VSS musí být připojeny. Piny PORTB podporují softwarově řízené slabé pull-up rezistory, zatímco RB4–RB7 podporují přerušení při změně. Piny schopné analogového vstupu musí být před použitím jako digitální I/O správně nakonfigurovány.
Přípona teploty identifikuje provozní rozsah: I znamená průmyslové, zatímco E znamená rozšířené. Kód balení za lomítkem identifikuje P pro PDIP nebo PT pro TQFP.
| Objednatelné číslo dílu |
Typ balení |
Počet pinů |
Provozní teplota |
| PIC16F877A-I/P |
PDIP |
40 |
−40 °C až +85 °C, průmyslové |
| PIC16F877A-I/PT |
TQFP |
44 |
−40 °C až +85 °C, průmyslové |
| PIC16F877A-E/P |
PDIP |
40 |
−40 °C až +125 °C, rozšířené |
| PIC16F877A-E/PT |
TQFP |
44 |
−40 °C až +125 °C, rozšířené |
Všechny čtyři verze poskytují stejnou 8K × 14-slabičnou programovou paměť, 368 bajtů SRAM, 256 bajtů EEPROM a 33 I/O pinů. Tyto specifikace jsou tedy uvedeny jednou místo opakování v tabulce.
PIC16F877A používá 8-bitový RISC CPU s Harvardovou architekturou. Jeho 14-bitová programová sběrnice a 8-bitová datová sběrnice jsou oddělené, což umožňuje CPU načítat instrukce při přístupu k datům. Obsahuje 8K × 14-bitovou Flash programovou paměť, 368 bajtů RAM a 256 bajtů EEPROM dat.
13-bitový programový čítač vybírá instrukce, zatímco osmibodový hardwarový zásobník ukládá adresy návratu pro podprogramy a přerušení. ALU, W registr a STATUS registr zpracovávají data. PORTA až PORTE poskytují 33 I/O pinů.

Obrázek 3. Blokový diagram architektury PIC16F877A
Oscilační hodiny jsou rozděleny do čtyř fází, Q1 až Q4. Proto hodiny instrukcí běží na , a jeden cyklus instrukce trvá. Při 20 MHz to odpovídá 200 ns. Dvoufázová trubka načítá další instrukci během provádění předchozí. Většina instrukcí trvá jeden cyklus, zatímco větve vyžadují dva cykly, protože trubka musí být vymazána.

Obrázek 4. Cyklus instrukcí PIC16F877A
Když dojde k povolenému přerušení, CPU uloží návratovou adresu na hardwarovou zásobník, vymaže globální bit povolení přerušení a skočí na adresu 0004h. Přerušovací rutina zkontroluje a vymaže relevantní příznak před tím, než RETFIE obnoví normální vykonávání. Firmware musí uložit důležité registry, jako jsou W, STATUS a PCLATH, když je to potřeba.
Taktovací obvody, ADC, CCP/PWM, USART, SPI, I²C, komparátory a paralelní slave port jsou řízeny pomocí registrů speciálních funkcí. Tyto periférie mohou pracovat po boku CPU, nastavovat stavy příznaků a generovat přerušení, když jsou povoleny.
| Specifikace |
PIC16F877A |
| Architektura CPU |
8-bit RISC |
| Maximální frekvence hodin |
20 MHz |
| Maximální výkon |
5 MIPS |
| Programová paměť |
8K × 14-bit slova |
| SRAM |
368 bytů |
| Data EEPROM |
256 bytů |
| I/O piny |
33 |
| Prevádzková napětí |
4.0–5.5 V |
| ADC |
10-bit, 8 kanálů |
| Taktovací obvody |
Dva 8-bitové a jeden 16-bitový |
| Moduly CCP/PWM |
2 moduly, rozlišení PWM až 10 bitů |
| Komunikační rozhraní |
USART, SPI a I²C |
| Zdroje přerušení |
15 |
| Komparátory |
2 |
| Možnosti balení |
40-pin PDIP a 44-pin povrchové balení |
| Prevádzková teplota |
−40°C až +85°C nebo −40°C až +125°C, v závislosti na modelu |

Obrázek 5. Minimální provozní obvod PIC16F877A, ICSP konektor a testovací LED RB0
Obrázek 5 ukazuje minimální připojení potřebná k provozu a programování 40-pinu PIC16F877A. Oba piny VDD, 11 a 32, se připojují k regulované +5 V větvi, zatímco piny VSS 12 a 31 se připojují k zemi. Samostatný 100 nF keramický kondenzátor musí být umístěn blízko každé dvojice VDD–VSS. Volitelný kondenzátor 4.7–10 μF u J2 poskytuje dodatečné filtrování napájení. Testovací LED RB0 odpovídá programovému příkladu v C6.
Pin MCLR/VPP je tažen na +5 V přes rezistor 10 kΩ. Křišťál s frekvencí 20 MHz je připojen mezi OSC1 na pinu 13 a OSC2 na pinu 14. Každý pin oscilátoru je připojen k zemi přes zátěžový kondenzátor. Ilustrované hodnoty 22 pF jsou počáteční hodnoty; konečné hodnoty by měly odpovídat specifikaci zatížení kondenzátoru výrobce křišťálu. Konfigurace oscilátoru musí být nastavena na HS.
Konektor ICSP se připojuje následovně:
| ICSP signál |
Připojení PIC16F877A |
| MCLR/VPP |
Pin 1 |
| VDD Target/Sense |
+5 V větvi |
| VSS |
Zem |
| PGD |
RB7, pin 40 |
| PGC |
RB6, pin 39 |
| PGM/AUX |
RB3, pin 36 |
Pro vysoké napětí ICSP jsou použity piny 1–5 a bit konfigurace LVP by měl být zakázán. Pokud je použito programování s nízkým napětím, RB3/PGM musí zůstat připojen a nemůže být použit jako běžný výstup. Pouze jeden zdroj by měl napájet obvod současně: buď J2, nebo PICkit.
RB0 na pinu 33 ovládá testovací LED přes rezistor pro omezování proudu 470 Ω. Připojte RB0 k rezistoru, připojte rezistor k anodě LED a připojte katodu LED k VSS. LED se rozsvítí, když je RB0 vysoký.
• Při odpojení napájení zkontrolujte zapojení, připojení kondenzátorů, křišťál, polaritu LED a orientaci IC.
• Zkontrolujte, že +5 V větev není zkrácena na zem.
• Aplikujte regulované, proudově omezené napájení +5 V. Potvrďte, že obě dvojice VDD–VSS dostávají správné napětí.
• Připojte ICSP programátor a vyberte PIC16F877A. Nastavte FOSC = HS a pro vysoké napětí ICSP LVP = VYP.
• Programujte a ověřte příklad C6, který konfiguruje RB0 jako výstup a mění jeho stav každých 500 ms.
• Aplikujte napájení a sledujte LED. Opakovaný záblesk je očekávaným znakem, že napájení, reset, oscilátor, programování a výstupní obvody RB0 pracují společně.
Poznámka: Toto je pouze navrhovaný ověřovací postup. Nebylo uvedeno žádné fyzické testování nebo měřený výsledek. Jakýkoli hlášený test by měl identifikovat desku, firmware, napájení, přístroje, nastavení sondy a měřené hodnoty.
PIC16F877A může být programován v C pomocí MPLAB X IDE a kompilátoru MPLAB XC8. MPLAB X spravuje projekt a programovací nástroj, zatímco XC8 generuje HEX soubor.
Tento příklad cílí na MPLAB X IDE v6.35 a MPLAB XC8 v4.00. Při přípravě tohoto příkladu nebyla provedena žádná místní kompilace ani testování hardwaru, takže se nečiní žádné nároky na úspěšnou kompilaci nebo naměřené výsledky. Toto byly aktuální oficiální verze k srpnu 2026. Pokud je použit PICkit 3, mějte na paměti, že MPLAB X v6.20 je jeho poslední podporovaná verze.
• Nainstalujte MPLAB X IDE a MPLAB XC8.
• Vyberte Soubor > Nový projekt > Mikrochip Embedded > Samostatný projekt.
• Vyberte PIC16F877A, připojený programátor a XC8.
• Vytvořte soubor main.c a zadejte následující program.
• Sestavte projekt, poté vyberte Uložit a naprogramovat zařízení.
Připojte testovací LED následujícím způsobem:
RB0 (pin 33) → 330 Ω–1 kΩ rezistor → anoda LED → katoda LED → VSS
#include
#define _XTAL_FREQ 20000000UL
#pragma config FOSC = HS
#pragma config WDTE = OFF
#pragma config PWRTE = ON
#pragma config BOREN = ON
#pragma config LVP = OFF
#pragma config CPD = OFF
#pragma config WRT = OFF
#pragma config CP = OFF
void main(void)
{
PORTBbits.RB0 = 0;
TRISBbits.TRISB0 = 0;
while (1)
{
PORTBbits.RB0 = 1;
__delay_ms(500);
PORTBbits.RB0 = 0;
__delay_ms(500);
}
}
Pro ICSP programování připojte MCLR/VPP, RB6/PGC, RB7/PGD, VDD a VSS. Nastavení FOSC = HS a hodnota _XTAL_FREQ musí odpovídat nainstalovanému krystalu o frekvenci 20 MHz.
Informace o verzi: Microchip Technology Inc., MPLAB X IDE, v6.35, vydáno 24. července 2026; a MPLAB XC8 Compiler, v4.00, vydáno 8. července 2026. Přístup k 24. srpnu 2026.
Následující případové studie shrnují výsledky hlášené nezávislými výzkumníky.
Manju a Katoch (2014) vyvinuli jednostranný sledovač slunce PIC16F877A se třemi LDR, krokovým motorem s převodem, měřením napětí a proudu, LCD a komunikací RS-232.
Během jednodenního testu na NIT Hamirpur dne 19. února 2014 výzkumníci zaznamenali devět hodinových srovnání při úrovních osvětlení 96,423–810,295 W/m². Součet naměřených hodnot výkonu byl 4,6388 W pro pevnou desku a 5,5071 W pro sledovač, což představuje zlepšení o 18,7167%.
Tento výsledek třetí strany byl založen na jednom dni a nezohledňoval nejistotu, opakované testování během dne ani provozní energii sledovače. Protože byly přidávány okamžité hodnoty výkonu namísto toho, aby byla měřena energie ve watthodinách, zprávu o zlepšení by nebylo možné interpretovat jako univerzální denní nárůst energie.
Gharghan (2017) vyvinul systém monitorování teploty PIC16F877A s použitím senzoru LM35, LCD, bzučáku a GSM modemu SmartG100. Univerzální ovladač pravidelně měřil teplotu a posílal SMS upozornění na urgentní podmínky.
Publikované srovnání s digitálním teploměrem vykázalo průměrnou absolutní chybu 0,205 °C a hodnotu R² 0,987. Pomocí měřených aktivních a spánkových proudů studie vypočítala průměrný proud 3,087 mA se svým algoritmem spánku/probuzení, ve srovnání se 315,138 mA během nepřetržitého provozu. U baterie 1 000 mAh odhadl výzkumník přibližně 324 hodin provozu namísto tří hodin.
Tato zjištění třetí strany zde nebyla reprodukována. Práce jasně nehlásila počet pacientů nebo pokusů o doručení SMS a odhadovaná životnost baterie byla vypočítána spíše než potvrzena kompletním testem vybíjení. Prototyp demonstruje technickou proveditelnost, ale nepředstavuje klinickou validaci.
• Analogové snímání: Osmikanálový 10bitový ADC může sledovat teplotu, světlo, tlak, napětí a další analogové signály.
• PWM a řízení motoru: Dva moduly CCP/PWM mohou regulovat rychlost motoru, jas LED, čerpadla, ventilátory a ventily prostřednictvím vhodných řídicích obvodů.
• Sériová komunikace: Rozhraní USART, SPI a I²C podporují komunikaci s počítači, senzory, GSM nebo GPS moduly, EEPROM a hodinami reálného času.
• Připojení displeje: Jeho 33 sdílených funkčních I/O pinů lze připojit k LCD, sedmisegmentovým displejům, klávesnicím, přepínačům, LED a bzučákům.
• Úložiště dat: 256bajtová EEPROM uchovává nastavení, kalibrace a malé záznamy po odstranění napájení.
• Časování: Tři hardwarové časovače a funkce přerušení podporují zpoždění, měření pulsů, počítání událostí a rychlé reakce na externí události.
• Ochrana systému: Časovač watchdog, reset při poklesu napětí, časovač při zapnutí a vstup MCLR pomáhají ovladači zotavit se z chyb programů nebo napájecího napětí.
Tyto funkce jsou vhodné pro měřiče hladiny vody, alarmy, datové loggery, teplotní regulátory a malé automatizační systémy. Motory, relé a další zatížení s vysokým proudem vyžadují externí ovladače. PIC16F877A také nemá vestavěné Wi-Fi, Bluetooth ani USB.
| Problém |
Pravděpodobná příčina |
Doporučené řešení |
| Mikrokontroler se nespouští |
Nesprávné napájení, plovoucí MCLR nebo chybějící hodinový signál |
Zkontrolujte oba páry VDD–VSS, použijte regulované napájení, přidejte 10 kΩ MCLR pull-up a ověřte externí oscilátor |
| Programátor nemůže detekovat IC |
Nesprávné zapojení ICSP nebo silně zatížené programovací piny |
Zkontrolujte připojení MCLR/VPP, RB6/PGC, RB7/PGD, VDD a VSS |
| Program běží na nesprávné rychlosti |
Nastavení oscilátoru neodpovídá hardwaru |
Vyberte správnou konfiguraci oscilátoru a nastavte _XTAL_FREQ na skutečnou frekvenci hodinového signálu |
| PORTA nebo PORTE nefunguje digitálně |
Piny zůstávají nastaveny jako analogové vstupy |
Nakonfigurujte registr ADCON1 pro požadované digitální nebo analogové funkce |
| RB3 nefunguje jako GPIO |
Programování s nízkým napětím je povoleno |
Zakážete konfiguraci LVP, když je RB3/PGM potřebný jako běžné GPIO |
| RA4 nevytváří vysoký výstup |
RA4 používá strukturu otevřeného výstupu |
Přidejte externí pull-up rezistor k RA4 |
| ADC měření jsou nestabilní |
Hlučné napájení, špatné uzemnění nebo nedostatečný čas pro akvizici |
Přidejte odrušovací kondenzátory, použijte stabilní referenci, snižte impedanci zdroje a nechte dostatek času na akvizici |
| UART data jsou poškozena |
Nesprávná rychlost přenosu nebo nastavení oscilátoru |
Přepočítejte SPBRG pomocí skutečné frekvence hodinového signálu a potvrďte odpovídající rychlosti přenosu |
| I²C komunikace selhává |
Chybějící pull-up rezistory nebo nesprávný směr pinu |
Přidejte pull-up rezistory k RC3/SCL a RC4/SDA a správně nakonfigurujte oba piny |
| PWM výstup chybí |
CCP nebo Timer2 není správně nakonfigurován |
Nakonfigurujte modul CCP, PR2, před děličem Timer2 a pin PWM výstupu |
| Dochází k náhodným resetům |
Poklesy napájení, elektrický šum, časovač watchdog nebo nestabilní MCLR |
Zlepšete odrušení, zkontrolujte nastavení resetu a chraňte MCLR před šumem |
| Motor nebo relé způsobuje resety |
Zatížení je připojeno přímo k GPIO pinu |
Použijte tranzistor nebo MOSFET ovladač a přidejte flyback diodu napříč induktivními zatíženími |
| Spací proud je příliš vysoký |
Externí zatížení, plovoucí vstupy nebo programátor zůstává připojen |
Odpojte nepotřebná zatížení, nastavte nepoužívané piny na definované úrovně a odpojte programátor během měření |
| Funkce |
PIC16F877A |
PIC16F887 |
PIC16F18877 |
ATmega328P |
| Architektura |
Klasický střední rozsah 8bitový PIC |
Klasický střední rozsah 8bitový PIC |
Vylepšený střední rozsah 8bitový PIC |
8bitový AVR |
| Maximální frekvence a rychlost instrukcí |
20 MHz, 5 MIPS při 4,0–5,5 V |
20 MHz, 5 MIPS při 4,5–5,5 V; nižší napájecí napětí vyžaduje nižší frekvence |
32 MHz, 8 MIPS při 2,5–5,5 V; až 16 MHz při 2,3–5,5 V |
20 MHz, až 20 MIPS při 4,5–5,5 V; 10 MHz při 2,7–5,5 V; 4 MHz při 1,8–5,5 V |
| Paměť programu |
8K × 14bitových slov |
8K × 14bitových slov |
32K × 14bitových slov |
32 KB |
| SRAM |
368 bytů |
368 bytů |
4 096 bytů |
2 048 bytů |
| EEPROM |
256 bytů |
256 bytů |
256 bytů |
1 024 bytů |
| I/O piny |
33 |
35 |
Až 36 |
23 |
| ADC |
10bitový, 8 kanálů |
10bitový, 14 kanálů |
10bitový ADC s výpočtem, až 35 kanálů |
10bitový, 6 kanálů v PDIP nebo 8 v TQFP/QFN |
| Interní hlavní oscilátor |
Ne |
Ano, až 8 MHz |
Ano, až 32 MHz |
Ano, 8 MHz |
| Provozní napětí |
4,0–5,5 V |
2,0–5,5 V |
2,3–5,5 V |
1,8–5,5 V |
| Komunikace |
USART, SPI a I²C |
EUSART, SPI a I²C |
EUSART, dva SPI a dva I²C moduly |
USART, SPI a TWI/I²C |
| Hlavní výhoda |
Jednoduchý a široce zdokumentovaný |
Více ADC kanálů a interní oscilátor |
Více paměti a moderní periferie |
Rozsáhlá podpora Arduino a AVR |
| Hlavní omezení |
Velmi omezená RAM a žádný interní hlavní oscilátor |
Omezená paměť a starší architektura |
Not a direct replacement for PIC16F877A designs |
Not recommended for new designs |
| Best suited to |
Existing boards and learning projects |
Simple 40-pin control projects |
New PIC-based products |
Existing Arduino or AVR projects |
Microchip identifies PIC16F18877 as the newer device for PIC16F877A, but migration requires firmware, peripheral and pinout verification.
• Microchip Technology Inc. (2013). PIC16F87XA Data Sheet (DS39582C).
• Microchip Technology Inc. (2026). MPLAB XC8 C Compiler User’s Guide for PIC MCU (DS50002737L).
• Microchip Technology Inc. (2021). PIC16(L)F18857/77 Data Sheet (DS40001825F).
• Microchip PIC16F87XA Data Sheet, DS39582C; PIC16F87XA Flash Programming Specification, DS39589B.
• Manju, S., and Katoch, S. S. (2014). “Design of Photo-voltaic Solar Tracking System Based on Peripheral Interface Controller.” International Journal of Current Engineering and Technology, 4(3), 1800–1805.
• Gharghan, S. K. (2017). “Energy-Efficient Remote Temperature Monitoring System for Patients Based on GSM Modem and Microcontroller.” Journal of Communications, 12(8), 433–442.
The PIC16F877A stores instructions in 14-bit words. It provides 8,192 instruction words, equivalent to approximately 14.3 KB of physical Flash storage. It should not be described simply as 8 KB.
Yes, but a compatible bootloader must first be installed through ICSP. The bootloader can then receive new firmware through USART, although it uses part of the available program memory.
With a 5.0 V reference, the ideal ADC step size is approximately 4.88 mV. Actual accuracy also depends on reference stability, electrical noise, source impedance, acquisition time and calibration.
Not directly. Use a correctly calculated voltage divider, buffer or signal-conditioning circuit to keep the ADC input within its reference-voltage range. Input protection may also be required.
A small scheduler is possible, but its 368-byte RAM and eight-level hardware stack make a full RTOS impractical. Timer interrupts and cooperative task scheduling are usually more suitable.
The internal 256-byte EEPROM is suitable only for small settings and records. Use external EEPROM, FRAM or an SD card for larger logs, and apply wear leveling when data is written frequently.
Yes, especially for relatively slow systems such as temperature, speed and level control. Fixed-point arithmetic is usually preferable because floating-point calculations require more processing time and program memory.
The CP and CPD configuration bits block normal program and data-memory reading through standard programming tools. However, they do not guarantee protection against advanced physical extraction methods.
CAP CER 0.15UF 50V X5R 0805
CAP CER 3.6PF 100V C0G/NP0 0201
CAP CER 2.2UF 16V X6S 0805
IC REG CHARG PUMP INV 40MA SOT23
IC MCU 8BIT 8KB FLASH 44LQFP
RES SMD 390 OHM 0.5% 1/8W 0805
CYPREES BGA
BA6790FP-T1 ROHM
S1D13716B02C100 EPSON
FREESCALE BGA
EWIXP425BBT INTEL
TI TQFP



