单片机课题笔记电子稿(最新)(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区地址分配图