Kniha je zaměřena na popis pokročilejších periferií mikrokontrolérů PIC16F628A a pokročilejších možností programování v jazyce C. Navazuje na knihu Mikrokontroléry PIC bez předchozích znalostí, ve které byly popsány základní periferie společně se základy jazyka C.
První kapitola je věnována popisu komunikace řádkového LCD modulu včetně výkladu realizace řídicích funkcí, sestavení knihovny těchto funkcí označené jako MLCD (používá se v dalších příkladech) a použití funkce printf pro výstup na LCD modul.
Druhá kapitola popisuje jednotku Timer0. Tato jednotka je použita pro měření kmitočtu, jsou ukázány možnosti automatického přepínání předděličky a pomocného počítadla přetečení pro dynamickou úpravu měřicího rozsahu. Též je předvedeno měření odporu mezipřevodem na kmitočet.
Třetí kapitola ukazuje použití jednotek Timer1 a CCP1. Příklady používají jednotku Timer1 jako časovač pro odměr intervalu 0,5 s, generátor PWM signálu a speciální událostní spouštěč (režim compare).
Čtvrtá kapitola představuje softwarovou implementaci sběrnice I2C. Po úvodním popisu sběrnice I2C a použitého obvodu MCP23008 (expandér pro 8 vývodů) je zařazen výklad práce s ukazateli, který je nutný pro pochopení realizace funkcí s výstupními parametry. Následně je realizována knihovna funkcí pro sběrnici I2C označená jako I2C. Pomocí této knihovny a expandéru MI2CEXP je nejdříve ovládán přípravek M8LED a poté přípravek MLEDSW. Nakonec je knihovna I2C použita pro řízení přípravku MLCD, což je klíčovým úkolem celé této kapitoly. Na závěr je pak ukázáno použití jednotky CCP1 v režimu Capture.
Pátá kapitola popisuje omezení funkce vývodů portů daná zabudovanými periferiemi mikrokontroléru. Dále je popsáno praktické řešení ovládání maticové klávesnice realizované přípravkem MMATKBD a rotačního spínače EC11 připojeného na přípravek MSVORKY. Jsou diskutovány vstupy vnějšího přerušení INT0/RB0 a Input Change (RB7 až RB4). Příklady použití vstupů vnějšího přerušení jsou zaměřeny na obsluhu rotačního spínače a počítačové klávesnice s konektorem PS/2 (mini DIN 6). Vzhledem k rozdílným rychlostem komunikace mikrokontroléru s počítačovou klávesnicí a LCD displejem připojeným přes I2C je též pozornost věnována výkladu implementace datové struktury fronta.
Šestá kapitola probírá pokročilé možnosti programování v jazyce C. Probrány jsou datové typy struct, bitové pole, union. Jsou též zařazeny pokročilejší příklady obsluhy počítačové klávesnice s konektorem PS/2 pro editaci údaje na LCD. Dále je vysvětleno použití operátoru sizeof(), příkazů switch a break a funkce atoi. Kapitola končí ukázkou automatického generování souboru s nastavením konfiguračních bitů mikrokontroléru.
Sedmá kapitola je věnována pokročilým možnostem mikrokontroléru PIC16F628A. Jedná se o doplnění popisu konfiguračních bitů a konfigurace oscilátoru z [1], popis zdrojů resetu a přidružených jednotek (POR, PWRT, OST, BOR), popis jednotky WDT, režimu Sleep a datové paměti E2PROM. Příklady ukazují použití dvourychlostního režimu interního RC oscilátoru, použití režimu Sleep společně s jednotkou WDT a použití datové paměti E2PROM.
V příloze jsou uvedeny podklady pro výrobu upravené verze přípravku MLCD pod označením MLCDXL.