单片机课题笔记电子稿(最新)(32课时)
- 格式:doc
- 大小:1.70 MB
- 文档页数:69
1 第一章 概述
计算机的类型、特点及特点:
①. 大、中型:体积大,成本高,科学计算速度快。
②. 小 型:服务器、网络、图形处理
③. 微 型:PC机
④. 单 板 机:工业控制
⑤. 单 片 机:工业控制、智能仪表、仪器(家用电器等)
什么叫计算机?
包含硬件和软件,且硬件含以下五大部分的机器及为计算机。
硬件:
1:中央处理器:CPU
2 内存储器:内存
3外存储器:如硬盘,软盘,光盘和一些磁带机等等
4 输入设备:键盘,鼠标,扫描仪,麦克声控,摄像头都算
5 输出设备:打印机,显示器等等
单片微型计算机就是将CPU、RAM、ROM(或EPROM、Flash ROM)、定时器/计数器和多种I/O接口都集成到一块集成电路芯片上的微型计算机,简称单片机。
单片机是应工业控制需要而诞生的,其特点是一块芯片就构成了一台计算机,因此这类芯片就称为 Single-Chip Microcomputer,中文名译为“单片机”。
单片机主要由CPU、存储器(程序存储器ROM、数据存储器RAM)、I/O接口电路(并行接口、串行接口)三部分组成,还包括定时器/计数器、中断控制器等部分。
2
(8031、8051CPU中除了图中存储器模块没有外,其他模块均包含)
单片机的发展:
Intel公司:MCS-48,(8位)
MCS-51(8031/8051CPU),(8位)
MCS-96/98,(16位)
注意:这里所说的8位与16位指数据总线数,表明计算机同时处理数据的能力。
第二章 单片机的结构、引脚、时序
§1 CPU内部结构
一、CPU内部结构图 8
0
8
8
C
P
U 存储器
三总线 8259中断器
8255并行接口 8253定时、计数器 3 核心:运算器,ALU
二、寄存器组
什么叫寄存器?
① 位置——在CPU内部
② 作用——放运算前数据或运算后结果
1、程序计数器PC ,16位 (相当于8086中的IP)
作用:放当前指令所在地址。(可自动调整)
寻址范围:0000H---FFFFH,64K
程序计数器PC。PC是一个16位的不同寻址专用寄存器,用作程序存储器的地址指针,每次仅存放下一条指令的地址。当CPU读取指令时,PC的内容送往地址总线上,根据地址编码从程序存储器中取出指令代码后,PC中的数据具有自动加1功能,指向下一个地址的另一条指令,以保证程序按顺序执行。
2、累加器A(或ACC), 指令寄存器。它是一个8位寄存器,用于暂时存放待执行的指令,等待译码,以确定相应功能的操作控制。(相当于AX)
作用:主要用于进行+-×÷运算。
例: MOV A,#3 :立即数3→A
ADD A,#1 ;A←3+1 RAM地址寄存器RAMP0口锁存器P2口锁存器4KBFLABHP2口锁存器4KBFLABHB寄存器TMP1TMP2ACCSP程序地址寄存器缓冲器PC增1PCDPTRALUPSW中断、串行、定时/计数器端口模块定时控制指令译码器指令寄存器看门狗P1口锁存器ISP口编程逻辑P3口锁存器P1口驱动器P3口驱动器OSCXTAL1XTAL2P1.0~P1.7P3.0~P3.7RSTPSENPPVEA/VCCVSSP0.0~P0.7P2.0~P2.7 88 16双数据指针图2-4 AT89S51单片机结构框图 4
3、通用寄存器B ,8位
作用:主要用于×÷运算。
例: MOV A,#2
MOV B,#3
MUL AB :BA←2×3 (结果为16位的,B存高8位,A存低8位)
4、程序状态字 PSW,8位 (相当于F寄存器)
作用:放A中数据的状态特征。
程序状态寄存器PSW。PSW是一个8位的特殊功能寄存器,用于保存当前指令执行后的有关状态,为后面的程序指令执行提供状态转向条件。许多指令的执行结果将影响PSW相关的状态标志。PSW寄存器各位状态标志定义如下:
CY(PSW .7):保存当前指令运算结果产生的进位(或错位),CY=1表示有进位(或错位),CY=0表示无进位(或错位)。
AC(PSW . 6):辅助进位标志,又称之为半字节进位标志,若运算结果累加器A中的A3位向A4位有进位,则AC=1,否则AC=0,常用于十进制调整。
F0(PSW . 5):用户自定义的状态标志位,可由编程者根据实际需要通过软件进行设置或测控。
RS1(PSW .4)、RS1(PSW .3):用于选择片内RAM区的工作寄存器组,由于工作寄存器组共有4组,每组均有R0~R7共8个8位工作寄存器,单片机运行时,仅能有一组工作寄存器投入工作,其余3组只能作普通的RAM存储器单元使用。
OV(PSW .2):溢出标志位。溢出是指当运算结果数值的绝对值超过允许表示的最大值时,就会产生所谓的“溢出”。主要用于有符号数运算的溢出检测判断。当两个有符号数进行运算时,次高位D6产生向最高位D7进位(错位),而最高位D7不能产生进位(错位), 5 或D6不产生进位(错位),而D7产生进位(错位)时,则OV=1,有溢出,否则OV=0,无溢出。即最高位和次高位不同时有进位或错位时OV=1,有溢出;否则OV=0,无溢出。
PSW .1:保留位,暂无定义。
PSW .0:奇偶校验标志位。根据运算结果累加器A中“1”的奇偶性来确定取值,当“1”的个数为奇数时P=1,偶数时P=0。
5、堆栈指针SP,8位
堆栈指针SP。SP是一个8位的特殊功能寄存器,它作为堆栈指针总是指向栈顶。单片机在片内RAM区中开辟某一个地址连续区域作为堆栈,理论上堆栈能位于RAM128个字节的任何单元。但由于系统在复位有效时,栈指针SP的初始值为07H,这显然与工作寄存器区域重叠,因此必须通过软件重新定义SP,一般情况下在片内RAM的30H单元开始建立栈区。
先进后出,后进先出,自动加1,指针指向栈顶。
例: MOV SP,#70H
MOV A,18H
PUSH
A
POP B; SP=71H-1H=70H
弹后:B=11H 6
6、数据指针DPTR,16位寄存器
DPH—8位,DPL—8位
作用:用来存放8031CPU以外(片外)RAM和ROM地址。
数据指针DPTR。数据指针DPTR是由两个8位特殊功能寄存器DPH和DPL组合成16位的专用寄存器,用作外扩展程序存储器和数据存储器的地址指针,仅能采用间接访问方式读写存储器。
RAM:随机存储器
ROM: 只读存储器
图中,ROM和RAM属片外存储器
8031可接最大存储器128K.
DPTR寻址: 0000H—FFFFH,64K的范围
例:
图1: MOV DPTR,#1000H ;DPTR=1000H
MOVX A,@DPTR ;把片外RAM中地址为1000H中的内容→A.
(MOVX访问片外RAM)
图2: MOV DPTR,#1001H
8031 ROM
RAM 总线
64K 64K 7 MOVC B,@DPTR
(MOVC访问片外ROM)
7、通用寄存器
R0—R7,共8个寄存器,均是8位
MOV R1,A ;(A)赋值给R1
若PSW中,RS1、RS0=00,即R1为片内地址为01H单元
三、存储器结构
1、ROM结构
8031片内无ROM,片外外接EPROM或EEPROM芯片。
最多外接64K,0000H—FFFFH 8
2、RAM结构
(内存指的就是RAM)
8031片内有256个字节RAM,片外接RAM芯片,64K。
片内组成:
单片机片内RAM区地址空间为00H~FFH,可划分为两部分:00H~7FH为低128字节地址,并进一步划分为工作寄存器区、位寻址区和数据缓冲堆栈区三个区域,80H~FFH为高128字节地址,为特殊功能寄存器(SFR)的区域。
低128个字节(00H—7FH):
每个单元为8位二进制数(一个字节)。
①、 工作区
由PSW中RS1、RS0决定,R0—R7为0—3组其中一组,
共有4×8=32个字节,00H—1FH。
工作寄存器区(00H~1FH)共有32个字节单元,工作寄存器又称为通用寄存器,一般作为数据运算和传送时的暂存地址单元。工作寄存器划分有4个区,每个区有R0~R7八个工作寄存器。每个工作寄存器有8位,可以用寄存器的名称寻址,也可用直接字节地址方式寻址。当用寄存器寻址方式时,由程序状态字PSW中的RS1和RS0两位确定工作寄存器区,如表所示。
表 工作寄存器表 用户RAM区(数据缓冲堆栈)位寻址区位地址:00H~7FH第三工作寄存器区第二工作寄存器区第一工作寄存器区第0工作寄存器区30H7FH00H2FH20H1FH18H17H10H0FH08H07H0FFH0F0H符号B0E0H0D0HACCPSW0B8H0B0HIPP30A8H0A6HIEWDTRST0A2H0A0HAUXR1P299H98HSBUFSCON90H8EHP1AUXR8DH8CHTH1TH08BH8AHTL1TL089H88HTMODTCON87H85HPCONDP1H84H83HDP1LDP0H82H81HDP0LSP80HP0特殊功能寄存器区(SFR)字节地址低128字节RAM区高128字节RAM区图 2-11 片内RAM区地址分配图