\documentclass[10pt,a4paper]{article} % Packages \usepackage{fancyhdr} % For header and footer \usepackage{multicol} % Allows multicols in tables \usepackage{tabularx} % Intelligent column widths \usepackage{tabulary} % Used in header and footer \usepackage{hhline} % Border under tables \usepackage{graphicx} % For images \usepackage{xcolor} % For hex colours %\usepackage[utf8x]{inputenc} % For unicode character support \usepackage[T1]{fontenc} % Without this we get weird character replacements \usepackage{colortbl} % For coloured tables \usepackage{setspace} % For line height \usepackage{lastpage} % Needed for total page number \usepackage{seqsplit} % Splits long words. %\usepackage{opensans} % Can't make this work so far. Shame. Would be lovely. \usepackage[normalem]{ulem} % For underlining links % Most of the following are not required for the majority % of cheat sheets but are needed for some symbol support. \usepackage{amsmath} % Symbols \usepackage{MnSymbol} % Symbols \usepackage{wasysym} % Symbols %\usepackage[english,german,french,spanish,italian]{babel} % Languages % Document Info \author{racheleva} \pdfinfo{ /Title (eiot-1.pdf) /Creator (Cheatography) /Author (racheleva) /Subject (EIOT 1 Cheat Sheet) } % Lengths and widths \addtolength{\textwidth}{6cm} \addtolength{\textheight}{-1cm} \addtolength{\hoffset}{-3cm} \addtolength{\voffset}{-2cm} \setlength{\tabcolsep}{0.2cm} % Space between columns \setlength{\headsep}{-12pt} % Reduce space between header and content \setlength{\headheight}{85pt} % If less, LaTeX automatically increases it \renewcommand{\footrulewidth}{0pt} % Remove footer line \renewcommand{\headrulewidth}{0pt} % Remove header line \renewcommand{\seqinsert}{\ifmmode\allowbreak\else\-\fi} % Hyphens in seqsplit % This two commands together give roughly % the right line height in the tables \renewcommand{\arraystretch}{1.3} \onehalfspacing % Commands \newcommand{\SetRowColor}[1]{\noalign{\gdef\RowColorName{#1}}\rowcolor{\RowColorName}} % Shortcut for row colour \newcommand{\mymulticolumn}[3]{\multicolumn{#1}{>{\columncolor{\RowColorName}}#2}{#3}} % For coloured multi-cols \newcolumntype{x}[1]{>{\raggedright}p{#1}} % New column types for ragged-right paragraph columns \newcommand{\tn}{\tabularnewline} % Required as custom column type in use % Font and Colours \definecolor{HeadBackground}{HTML}{333333} \definecolor{FootBackground}{HTML}{666666} \definecolor{TextColor}{HTML}{333333} \definecolor{DarkBackground}{HTML}{A36F2A} \definecolor{LightBackground}{HTML}{F9F6F1} \renewcommand{\familydefault}{\sfdefault} \color{TextColor} % Header and Footer \pagestyle{fancy} \fancyhead{} % Set header to blank \fancyfoot{} % Set footer to blank \fancyhead[L]{ \noindent \begin{multicols}{3} \begin{tabulary}{5.8cm}{C} \SetRowColor{DarkBackground} \vspace{-7pt} {\parbox{\dimexpr\textwidth-2\fboxsep\relax}{\noindent \hspace*{-6pt}\includegraphics[width=5.8cm]{/web/www.cheatography.com/public/images/cheatography_logo.pdf}} } \end{tabulary} \columnbreak \begin{tabulary}{11cm}{L} \vspace{-2pt}\large{\bf{\textcolor{DarkBackground}{\textrm{EIOT 1 Cheat Sheet}}}} \\ \normalsize{by \textcolor{DarkBackground}{racheleva} via \textcolor{DarkBackground}{\uline{cheatography.com/217931/cs/48022/}}} \end{tabulary} \end{multicols}} \fancyfoot[L]{ \footnotesize \noindent \begin{multicols}{3} \begin{tabulary}{5.8cm}{LL} \SetRowColor{FootBackground} \mymulticolumn{2}{p{5.377cm}}{\bf\textcolor{white}{Cheatographer}} \\ \vspace{-2pt}racheleva \\ \uline{cheatography.com/racheleva} \\ \end{tabulary} \vfill \columnbreak \begin{tabulary}{5.8cm}{L} \SetRowColor{FootBackground} \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Cheat Sheet}} \\ \vspace{-2pt}Not Yet Published.\\ Updated 28th April, 2026.\\ Page {\thepage} of \pageref{LastPage}. \end{tabulary} \vfill \columnbreak \begin{tabulary}{5.8cm}{L} \SetRowColor{FootBackground} \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Sponsor}} \\ \SetRowColor{white} \vspace{-5pt} %\includegraphics[width=48px,height=48px]{dave.jpeg} Measure your website readability!\\ www.readability-score.com \end{tabulary} \end{multicols}} \begin{document} \raggedright \raggedcolumns % Set font size to small. Switch to any value % from this page to resize cheat sheet text: % www.emerson.emory.edu/services/latex/latex_169.html \footnotesize % Small font. \begin{multicols*}{3} \begin{tabularx}{5.377cm}{p{0.4977 cm} p{0.4977 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Embedded System}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{specialized computer system; specific function; combining hardware and software} \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{Washing Machine (wash cycles, water levels), Automobile Airbag System (detect collision and deploy airbag)} \tn % Row Count 5 (+ 3) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{p{0.4977 cm} p{0.4977 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Assembly language}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{direct control over hardware and registers} \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{highly efficient + compact code} \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{precise timing + real-time control} \tn % Row Count 3 (+ 1) % Row 3 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{low-level device drivers; ISR routines} \tn % Row Count 4 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{x{2.53827 cm} x{2.43873 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{RISC vs. CISC}} \tn % Row 0 \SetRowColor{LightBackground} {\bf{RISC}} & {\bf{CISC}} \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} small set of simple instructions & large set of complex instructions \tn % Row Count 3 (+ 2) % Row 2 \SetRowColor{LightBackground} fixed-length & variable-length \tn % Row Count 4 (+ 1) % Row 3 \SetRowColor{white} one instruction in one clock cycle & instructions take multiple cycles \tn % Row Count 6 (+ 2) % Row 4 \SetRowColor{LightBackground} software optimization & hardware optimization \tn % Row Count 8 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{x{2.4885 cm} x{2.4885 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Harvard vs. Von Neumann}} \tn % Row 0 \SetRowColor{LightBackground} {\bf{Harvard }} & {\bf{ Von Neumann }} \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} modern architecture based on Harvard Mark I relay based model. & ancient computer architecture based on stored program computer concept \tn % Row Count 5 (+ 4) % Row 2 \SetRowColor{LightBackground} instructions + data → different memory; buses & instructions + data → same physical memory; common bus \tn % Row Count 8 (+ 3) % Row 3 \SetRowColor{white} an instruction in single cycle & two clock cycles for single instruction \tn % Row Count 10 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{p{0.4977 cm} p{0.4977 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{parallel port programming}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{control multiple data lines simultaneously} \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{send + receive data in parallel} \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{configure + access I/O port registers} \tn % Row Count 3 (+ 1) % Row 3 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{Faster data transfer} \tn % Row Count 4 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{data transfer instructions}} \tn \SetRowColor{white} \mymulticolumn{1}{x{5.377cm}}{Move data between registers, memory, and I/O ports% Row Count 1 (+ 1) } \tn \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{x{2.83689 cm} x{2.14011 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Microprocessor vs. Microcontroller}} \tn % Row 0 \SetRowColor{LightBackground} {\bf{Microprocessor}} & {\bf{Microcontroller}} \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} single CPU on chip & CPU, I/O, memory on chip \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} requires external RAM, ROM and I.O devices & all internal \tn % Row Count 6 (+ 2) % Row 3 \SetRowColor{white} general-purpose & specific embedded applications \tn % Row Count 8 (+ 2) % Row 4 \SetRowColor{LightBackground} higher processing power & moderate \tn % Row Count 10 (+ 2) % Row 5 \SetRowColor{white} higher power consumption & low \tn % Row Count 12 (+ 2) % Row 6 \SetRowColor{LightBackground} more expensive & cost effective \tn % Row Count 13 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{x{2.18988 cm} x{2.78712 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Instruction Set}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{interface between hardware and software} \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{Controls data movement (I/O and peripheral), arithmetic, and logic operations} \tn % Row Count 3 (+ 2) % Row 2 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{program flow control (branching, looping)} \tn % Row Count 4 (+ 1) % Row 3 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{{\bf{Instructions supported by 8051}}} \tn % Row Count 5 (+ 1) % Row 4 \SetRowColor{LightBackground} {\bf{Data Transfer Instructions }} & MOV, MOVC, and MOVX (internal/external, code memory) \{\{nl\}\}PUSH and POP (stack)\{\{nl\}\}XCH and XCHD (between accumulator \& registers /memory) \tn % Row Count 12 (+ 7) % Row 5 \SetRowColor{white} {\bf{1. Arithmetic }} & ADD, ADDC, SUBB, INC, and DEC; MUL AB and DIV AB (8 bit numbers) \tn % Row Count 15 (+ 3) % Row 6 \SetRowColor{LightBackground} {\bf{2. Logical }} & AND, OR, XOR, complement, rotate, NOT\{\{nl\}\}ANL, ORL, XRL, CLR, CPL, RL, and RRC \tn % Row Count 19 (+ 4) % Row 7 \SetRowColor{white} {\bf{3. Bit Manipulation }} & SETB, CLR, JB, JNB, and JBC \{\{nl\}\}Set, clear, complement, and test bits \tn % Row Count 23 (+ 4) % Row 8 \SetRowColor{LightBackground} {\bf{Control Instructions}} & Branching; subroutine calls (ACALL, LCALL), returns (RET, RETI), Boolean operations, and NOP for no operation \tn % Row Count 28 (+ 5) % Row 9 \SetRowColor{white} {\bf{4. Branching }} & SJMP, LJMP, DJNZ\{\{nl\}\}Jump, call, return, and loop control \tn % Row Count 31 (+ 3) \end{tabularx} \par\addvspace{1.3em} \vfill \columnbreak \begin{tabularx}{5.377cm}{x{2.18988 cm} x{2.78712 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Instruction Set (cont)}} \tn % Row 10 \SetRowColor{LightBackground} {\bf{5. Boolean }} & single-bit variables and carry flag \tn % Row Count 2 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{Arithmetic instructions affect Carry (CY), Auxiliary Carry (AC), and Overflow (OV) flags.} \tn \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{x{2.18988 cm} x{2.78712 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Microcontroller architecture (8051)}} \tn % Row 0 \SetRowColor{LightBackground} 1. CPU (Central Processing Unit) & 8-bit (arithmetic+logical)\{\{nl\}\}ALU; internal registers; program counter \tn % Row Count 4 (+ 4) % Row 1 \SetRowColor{white} 2. Program Memory (ROM / Flash) & 4KB; program storage (cannot be modified) \tn % Row Count 6 (+ 2) % Row 2 \SetRowColor{LightBackground} 3. Data Memory (RAM) & 128 bytes (temporary); 4 register banks (8 registers each) \tn % Row Count 9 (+ 3) % Row 3 \SetRowColor{white} 4. Input/Output (I/O) Ports & four 8 bit (32 pins); bidirectional \tn % Row Count 11 (+ 2) % Row 4 \SetRowColor{LightBackground} 5. Timers and Counters & two 16 bit (for 8051); hardware based delay \tn % Row Count 13 (+ 2) % Row 5 \SetRowColor{white} {\bf{1. Select Timer Mode}} & 16-bit or 8-bit \tn % Row Count 15 (+ 2) % Row 6 \SetRowColor{LightBackground} {\bf{2. Load Timer Register }} & initial value so timer overflows after desired time \tn % Row Count 18 (+ 3) % Row 7 \SetRowColor{white} {\bf{3. Start Timer }} & set control bits (counting) \tn % Row Count 20 (+ 2) % Row 8 \SetRowColor{LightBackground} {\bf{4. Wait for Overflow Flag }} & monitor overflow flag (TFx) \tn % Row Count 22 (+ 2) % Row 9 \SetRowColor{white} {\bf{5. Stop Timer \& Clear Flag }} & Reset for next use \tn % Row Count 24 (+ 2) % Row 10 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{6. Interrupt Control} \tn % Row Count 25 (+ 1) % Row 11 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{{\bf{Interrupt}} - temporarily halt normal execution. \{\{nl\}\} execute a specific interrupt service routine (ISR)} \tn % Row Count 28 (+ 3) % Row 12 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{immediate response to external or internal events; real-time} \tn % Row Count 30 (+ 2) \end{tabularx} \par\addvspace{1.3em} \vfill \columnbreak \begin{tabularx}{5.377cm}{x{2.18988 cm} x{2.78712 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Microcontroller architecture (8051) (cont)}} \tn % Row 13 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{7. Serial Communication Interfaces} \tn % Row Count 1 (+ 1) % Row 14 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{8. Clock / Oscillator} \tn % Row Count 2 (+ 1) % Row 15 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{9. Power Supply and Reset Circuit} \tn % Row Count 3 (+ 1) % Row 16 \SetRowColor{white} {\bf{Program Status word}} & 8-bit wide; 6 active flags; 2 user-defined bits \tn % Row Count 6 (+ 3) % Row 17 \SetRowColor{LightBackground} {\bf{Accumulator }} & Stores operands and results of arithmetic and logic operations \tn % Row Count 9 (+ 3) % Row 18 \SetRowColor{white} {\bf{Program Counter }} & holds address of next instruction to be executed \tn % Row Count 12 (+ 3) % Row 19 \SetRowColor{LightBackground} {\bf{Stack Pointer }} & point to top of the stack \tn % Row Count 14 (+ 2) % Row 20 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{{\bf{Special Function Registers}} 8051} \tn % Row Count 15 (+ 1) % Row 21 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{control + configure peripherals (/O ports, timers/counters, serial communication, and interrupts)\{\{nl\}\}CPU control and status information\{\{nl\}\}direct access to hardware\{\{nl\}\}special operations beyond general purpose} \tn % Row Count 20 (+ 5) % Row 22 \SetRowColor{white} {\bf{Data Pointer}} & 16-bit user-accessible register; access external memory \tn % Row Count 23 (+ 3) \hhline{>{\arrayrulecolor{DarkBackground}}--} \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{In the RAM, only one register bank can be active at a time} \tn \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{fig. 1}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{p{5.377cm}}{\vspace{1px}\centerline{\includegraphics[width=5.1cm]{/web/www.cheatography.com/public/uploads/racheleva_1777378073_image (3).png}}} \tn \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{x{1.64241 cm} x{3.33459 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Addressing modes}} \tn % Row 0 \SetRowColor{LightBackground} Immediate Addressing & transfers data (8 bit constant) directly to destination\{\{nl\}\}MOV A, \#6AH\{\{nl\}\}instructions are 2 bytes long, execute in 1 cycle \tn % Row Count 5 (+ 5) % Row 1 \SetRowColor{white} Register Addressing & specifies the memory address \{\{nl\}\}MOV A, 04H \tn % Row Count 7 (+ 2) % Row 2 \SetRowColor{LightBackground} Direct Addressing & uses register names (R0–R7) \{\{nl\}\}MOV A, R4 \{\{nl\}\}1 byte and 1 cycle \tn % Row Count 10 (+ 3) % Row 3 \SetRowColor{white} Indirect Addressing & address of data inside a register\{\{nl\}\}MOV A, @R0 \tn % Row Count 12 (+ 2) % Row 4 \SetRowColor{LightBackground} Indexed Addressing & accessing data from program memory using MOVC\{\{nl\}\}MOVC A, @A+DPTR \{\{nl\}\}2 machine cycles \tn % Row Count 16 (+ 4) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{x{1.29402 cm} x{3.68298 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{5.377cm}}{\bf\textcolor{white}{Timers and counters}} \tn % Row 0 \SetRowColor{LightBackground} Timer0, Timer1 & 16 bit; accessed using two 8-bit registers: THx and TLx. \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{internal clock → derived from external crystal oscillator} \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{timer clock frequency is 1/12th of the crystal frequency (machine cycle frequency)} \tn % Row Count 6 (+ 2) % Row 3 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{{\bf{TMOD register}}} \tn % Row Count 7 (+ 1) % Row 4 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{8-bit register; select timer mode + operations} \tn % Row Count 8 (+ 1) % Row 5 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{lower 4 → Timer0; upper 4 → Timer1} \tn % Row Count 9 (+ 1) % Row 6 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{GATE bit → enables timer (when external interrupt pin + run control bit active)} \tn % Row Count 11 (+ 2) % Row 7 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{C/T bit → selects between timer (internal clock) and counter mode (external pulses)} \tn % Row Count 13 (+ 2) % Row 8 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{{\bf{Modes}}} \tn % Row Count 14 (+ 1) % Row 9 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{Mode 0 - 13-bit timer; 8 bits of THx and 5 bits of TLx} \tn % Row Count 16 (+ 2) % Row 10 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{Mode 1 - 16-bit timer; THx and TLx form a full 16-bit counter.} \tn % Row Count 18 (+ 2) % Row 11 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{Mode 2 - 8-bit auto-reload; TLx reloads automatically from THx after overflow.} \tn % Row Count 20 (+ 2) % Row 12 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{Mode 3 - splits Timer0 into two 8-bit timers; Timer1 stops functioning} \tn % Row Count 22 (+ 2) % Row 13 \SetRowColor{white} \mymulticolumn{2}{x{5.377cm}}{{\bf{TCON register}}} \tn % Row Count 23 (+ 1) % Row 14 \SetRowColor{LightBackground} \mymulticolumn{2}{x{5.377cm}}{controls timer operation and contains overflow flags (TF0, TF1) and run control bits (TR0, TR1).} \tn % Row Count 25 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{fig. 2}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{p{5.377cm}}{\vspace{1px}\centerline{\includegraphics[width=5.1cm]{/web/www.cheatography.com/public/uploads/racheleva_1777381036_image (4).png}}} \tn \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{5.377cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{5.377cm}}{\bf\textcolor{white}{fig. 3}} \tn \SetRowColor{LightBackground} \mymulticolumn{1}{p{5.377cm}}{\vspace{1px}\centerline{\includegraphics[width=5.1cm]{/web/www.cheatography.com/public/uploads/racheleva_1777383226_image (5).png}}} \tn \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} % That's all folks \end{multicols*} \end{document}