source: Deliverables/D4.1/Presentation/Paris-September-2010.tex @ 34

Last change on this file since 34 was 34, checked in by mulligan, 10 years ago

Up to describing 8051 SFRs in presentation

File size: 2.8 KB
Line 
1\documentclass[serif]{beamer}
2
3\author{Claudio Sacerdoti Coen}
4\title{A brief introduction to the 8051 processor \\\vspace{\baselineskip} \small{CerCo project meeting, Paris, September 2010}}
5\date{\today}
6
7\begin{document}
8
9\begin{frame}
10\maketitle
11\end{frame}
12
13\begin{frame}
14\frametitle{Vital statistics I}
15The 8051 is:
16\begin{itemize}
17\item
188 bit microprocessor introduced in 1980 by Intel, very popular, still manufactured by a host of companies (many European!)
19\item
20Three different types of memory: on-chip memory (code, RAM, or other) that physically resides on processor die, external code memory and external RAM
21\item
22128 bytes of internal RAM, subdivided into different sections (the register banks, bit memory, stack space and general RAM)
23\item
24At most, stack space is 80 bytes, but often less (very small!)
25\end{itemize}
26\end{frame}
27
28\begin{frame}
29\frametitle{Vital statistics II}
30\begin{itemize}
31\item
32Two timers with multiple modes of operation (8052 adds a third timer with more modes)
33\item
34Serial (UART) port and 32 input/output lines
35\item
36Two-levels of priority for interrupts
37\end{itemize}
38\end{frame}
39
40\begin{frame}
41\frametitle{The `R' registers}
42\begin{itemize}
43\item
44The `R' registers are the 8051's general purpose registers, numbered R0--R7.
45\item
46The `R' registers are really part of internal RAM.  Thus memory address $04h$ is really register R4.
47\item
48\textbf{However!}  The 8051 has four distinct register banks, occupying the first 32 bytes of internal RAM.
49\item
50Bank 0 (addresses 00h--07h) is used by default, but this can be changed.
51\item
52If we decide to use bank 3, R4 is no longer identified with memory location 04h, but instead shifted to 1CH.
53\end{itemize}
54\end{frame}
55
56\begin{frame}
57\frametitle{Bit memory}
58\begin{itemize}
59\item
60The 8051 provides 128 bit variables to the user, numbered 00h--7Fh.
61\item
62Like the `R' registers, bit memory is really a part of internal RAM.
63\item
64Bit memory is located at internal RAM addresses 20h--2Fh, therefore writing FFh to internal RAM address 20h effectively sets bits 00h through 07h.
65\item
66Though part of internal RAM, the 8051 provides specific instructions for setting and clearing bits in bit memory.
67\end{itemize}
68\end{frame}
69
70\begin{frame}
71\frametitle{A note on the stack pointer (SP)}
72\begin{itemize}
73\item
74At powerup, the 8051 initialises the SP to address 07h.
75\item
76The stack therefore starts at 08h and expands upwards.
77\item
78Care must be taken if we decide to use the alternative register banks to initialise the stack pointer above the chosen bank.
79\item
80Further, if using bit variables, it's a good idea to initialise the stack point above address 2Fh, to ensure bit variables are not overwritten by the growing stack.
81\end{itemize}
82\end{frame}
83
84\begin{frame}
85\frametitle{Special function registers (SFRs)}
86\end{frame}
87
88\end{document}
Note: See TracBrowser for help on using the repository browser.