单片机复习资料.docx
- 文档编号:7386222
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:10
- 大小:19.88KB
单片机复习资料.docx
《单片机复习资料.docx》由会员分享,可在线阅读,更多相关《单片机复习资料.docx(10页珍藏版)》请在冰豆网上搜索。
单片机复习资料
第一章概述
一,计算机的发展史
1,电子管计算机2,晶体管计算机3,大规模集成电路计算机4,超大规模集成电路计算机
二,单片机的发展史
1,单片机的探索阶段2,单片机的完善阶段3,单片机的巩固发展4,单片机的全面发展
三,单片机的特点
把CPU,存储器,定时器和多种输入输出接口集成在一块大规模集成电路芯片上。
第二章计算机基础知识
一,数值与编码
二进制数,十进制数,十六进制数;原码、反码、补码、ASCII码
二,计算机的基本组成电路
触发器、寄存器、数据锁存器/缓冲器/驱动器
三,存储器
1 位、字节、地址
2 存储器的指标:
主要指标是存储速度和存储容量。
3 存储器的分类(ROM/RAM)分为内存和外存。
内存可以直接和CPU进行信息交换,读取速度快,但容量有限;外存不能直接和CPU交换信息,只能根据需要调入内存,读取速度慢,但存储容量大。
半导体存储器又分为只读存储器ROM、随机存储器RAM和可现场改写的非易失存储器。
存储器由大量缓冲寄存器组成,用来存放程序和数据,使计算机具有记忆功能。
其中每一个寄存器就称为一个存储单元。
一个代码由若干位(Bit)组成,代码的位数称位长(或字长)。
一个8位的二进制代码称字节Byte,两个字节称为一个字Word,四个字节称为双字Doubleword。
每个存储单元有一个唯一的固定编号,这个编号称为存储单元的地址。
第三章 单片机的结构及原理
80C51单片机的结构:
包括CPU、存储器、可编程I/O口、定时/计数器、串行口、时钟电路、中断系统等,各部分通过内部总线相连。
二 单片机的工作原理
三 存储器
80C51的存储器:
物理结构上有四个存储器空间:
(a)程序存储器[片内、片外]
(b)数据存储器[片内、片外]
逻辑结构上有三个存储空间:
(a)片内外统一编址的64KB程序存储地址空间
(b)256B内部数据存储器地址空间
(c)64KB外部数据存储器地址空间
8051单片机中采用MOV和MOVX两种指令来区分片内外RAM空间,其中片内RAM使用MOV指令,片外RAM和I/O口使用MOVX指令。
对片外数据存储器采用间接寻址方式,R0、R1和DPTR可以作为间接寄存器。
前两个是8位地址指针,寻址范围为256B,而DPTR是16位地址指针,寻址范围为64KB。
用MOVC访问程序存储器。
四 输入输出端口结构
80C51单片机有4个双向并行的8位I/O口P0~P3,P0口可驱动8个TTL电路,P1、P2、P3口负载能力为4个TTL电路。
在具有片外存储器的系统中,P2口作为高8位地址线,P0口分时作为低8位地址线和双向数据线。
单片机4个I/O端口在结构上是基本相同的,但又各具特点。
五 CPU时序与时钟电路
机器周期=12时钟周期
第四章 指令系统
一数据传送类指令
二算术运算类指令
三逻辑操作类指令
四控制转移类指令
五位操作类指令
第五章 汇编语言程序设计
一 顺序结构程序设计
二 循环结构程序设计
三 分支结构程序设计
第六章定时器/计数器
一 定时计数器结构与原理
MCS51单片机内有2个独立的16位的可编程定时/计数器T0和T1。
它们的结构相似。
另外还有两个(控制寄存器TCON和方式寄存器TMOD)特殊功能寄存器。
16位的定时计数器分别由两个8位专用寄存器组成,即:
T0由TH0和TL0构成;T1由TH1和TL1构成。
每个寄存器均可单独访问。
这些寄存器用于存放定时或计数初值的。
另内部还有8位的定时器控制寄存器TCON和方式寄存器TMOD。
其中TCON主要用于选定定时器的工作方式;TCON用于控制定时器的启动与停止,还可保存T0、T1的溢出和中断标志。
当定时器工作在计数方式时,外部事件通过引脚T0(P3.4)和T1(P3.5)输入。
二 方式寄存器TMOD和控制寄存器TCON
三 定时/计数器的初始化
四 4种工作方式
五 应用
第七章串行接口
一 串行通信制式
并行通信:
所传送数据的各位同时发送或接受。
串行通信:
所传送数据的各位按顺序一位一位地发送或接受。
⑴单工方式 ⑵半双工方式⑶全双工方式
二 波特率的定义及设计
方式0时的波特率由振荡器的频率(fosc)所确定:
每个机器周期发送或接收1位数据,波特率为fosc/12。
方式2时的波特率由振荡器的频率(fosc)和SMOD位确定,当SMOD位=1时,波特率=fosc/32;当SMOD=0时,波特率=fosc/64。
方式1和3时的波特率由定时器T1和T2的溢出率和SMOD确定。
三 控制寄存器SCON和专用寄存器PCON
四 三种帧格式和四种工作方式
五 应用
第八章中断系统
一 中断源是指引起中断请求的来源。
中断入口、中断优先级
二中断允许控制IE中断优先级设定IP以及TCON和
SCON中的中断标志
三 中断处理过程
四 应用
1.编制一个循环闪烁灯的程序。
有8个发光二极管,每次其中某个灯闪烁点亮10次后,转到下一个闪烁10次,循环不止。
本程序的硬件连接如图所示。
当P1.0输出高电平时,LED灯亮,否则不亮。
其程序如下:
MOV A,#01H ;灯亮初值
SHIFT:
LCAIL FLASH ;调闪亮10次子程序
RR A ;右移一位
SJMP SHIFT ;循环
FLASH:
MOV R2,#0AH 闪烁10次计数
FLASH1; MOV P1,A ;点亮
LCALL DELAY ;延时
MOV P1,#00H ;熄灭
LCALL DELAY ;延时
DJNZ R2,FLASH1 ;循环
RET
2,从P2.7引脚输出500HZ方波,晶振频率1MHZ,试编写程序。
根据题意解题如下:
方波周期=1/500=2ms;
选择T0工作于方式1定时1ms;
(216-X)×1μS=1ms 定时常数X=?
参考程序如下:
MOV TMOD,#?
MOV TH0,#?
MOV TL0,#?
SETB TR0
D500:
JBC TF0,D2
AJMP D500
D2:
MOV TH0,#?
MOV TL0,#?
CPL P2.7
AJMP D500
3,编程求计算片内RAM30H~37H八个连续单元中数的算术平均值。
FILTER:
CLR A
MOVR2,A
MOVR3,A
MOVR0,#30H
FILTER1:
MOVA,@R0;求和
ADDA,R3
MOVR3,A
CLRA
ADDCA,R2
MOVR2,A
INCR0
CJNER0,#38H,FILT1
SWAPA;求平均值
RLA
XCHA,R3
SWAPA
RLA
ADDA,#80H
ANLA,#1FH
ADDCA,R3
RET
1. 编定一个软件延时1S和1min的子程序.设fosc=6Hz,则一个机器周期1μs。
解:
(1)1S=2US*5*100000
5*100000=250*200*10
(2) ORG 1000H
TIME:
MOV R7,#10
T3:
MOV R6,#200
T2:
MOV R6,#250
T1:
DJNZ R5,T1
DJNZ R6,T2
DJNZ R7,T3
RET
(2)1min=60,调用上面1s子程序60次
ORG 0030H
MOV R0,#60
LOOP:
LCALL TIME
DJNZ R0,LOOP
RET
4.应用单片机内部定时器T0工作在方式1下,从P1.0输出周期为2ms的方波脉冲信号,已知单片机的晶振频率为6MHZ。
请
(1)计算时间常数X,应用公式X=216-t(f/12)
(2)写出程序清单
解:
X=216-t(F/12)
=216-1*10-3*6*106/12
=OFEOCH
ORG 3000H
START:
MOV TMOD,#01H
MOV TL0,#OCH
MOV THO,#OFEH
SETB TR0
LOOP:
JBC TFO,DONE
SJMP LOOP
DONE:
MOV TL0,#OCH
MOV THO,#OFEH
CPL P1.0
SJMP LOOP
应用单片机内部定时器T0工作在方式1下,从P1.0输出周期为1ms的方波脉冲信号,已知单片机的晶振频率为6MHZ。
请
(1)计算时间常数X,应用公式X=216-t(f/12)
(2)写出程序清单
解:
解:
X=216-t(F/12)
=216-0.5*10-3*6*106/12
=FF06H
ORG 3000H
START:
MOV TMOD,#01H
MOV TL0,#06H
MOV THO,#FFH
SETB TR0
LOOP:
JBC TFO,DONE
SJMP LOOP
DONE:
MOV TL0,#06H
MOV THO,#FFH
CPL P1.0
SJMP LOOP
习题
1,IT0置1后,外部中断0的有效中断触发信号是下降沿。
2,PC用来存放下一条的指令地址。
3.T0有4种工作方式,T1有3种工作方式。
4,若PSW.4=1,PSW.3=0,则要想把R2的内容单独入栈,应使用PUSH12H命令。
5,51单片机堆栈区是设置在内部RAM区中,SP始终指示栈顶。
在进栈数据全部弹出后,SP应指向栈底单元。
单片机复位后,堆栈第一个数据存放在08H单元。
6,51单片机从地址5678H开始有一条绝对转移指令AJMPaddr11,指令可能实现的转移范围是5000H~57FFH。
7,当使用外部存储器时,P0口传输低8位地址/数据总线。
8,片内RAM的位寻址区为20H~2FH。
所包含的位地址是00H~7FH。
9,当串行口向CPU发出中断请求时,若CPU允许并接受中断请求时,PC内容将被自动修改为0023H。
二,
1.请分析依次执行下面指令的结果,然后填空:
MOVR1,#30H(R1)=30H;
MOVR0,#45H(R0)=45H;
MOVA,R0(A)=45H;
SWAPA(A)=54H;
ANLA,#0FH(A)=04H;
MOV@R1,A(30H)=04H;
INCR1(R1)=31H;
MOVA,R0(A)=45H;
ANLA,#0FH(A)=05H;
MOV@R1,A(31H)=05H。
什么叫寻址方式
答:
寻址方式:
寻址方式就是寻找指令中操作数或操作数所在地址的方式。
也就是如何找到存放操作数的地址,把操作数提取出来的方法。
什么叫指令周期?
答:
指令周期:
指执行一条指令所占用的全部时间。
通常一个指令周期含1~4个机器周期。
4.片内数据存储器分为哪几个性质和用途不同的区域?
答:
8051内部128B的数据RAM区,包括有工作寄存器组区、可直接位寻址区和数据缓冲区。
各区域的特性如下:
(1)00H~1FH为工作寄存器组区,共分4组,每组占用8个RAM字节单元,每个单元作为一个工作寄存器,每组的8个单元分别定义为8个工作寄存器R0~R7。
当前工作寄存器组的选择是由程序状态字PSW的RS1、RS0两位来确定。
如果实际应用中并不需要使用工作寄存器或不需要使用4组工作寄存器,不使用的工作寄存器组的区域仍然可作为一般数据缓冲区使用,用直接寻址或用Ri的寄存器间接寻址来访问。
(2)20H~2FH为可位寻址区域,这16个字节的每一位都有一个地址,编址为00H~7FH。
当然,位寻址区也可以用作字节寻址的一般数据缓冲区使用。
(3)30H~7FH为堆栈、数据缓冲区。
编程题
1编程将片内RAM30H单元开始的15B的数据传送到片外RAM3000H开始的单元中去。
解:
STRAT:
MOVR0,#30H
MOVR7,#0FH
MOVDPTR,#3000H
LOOP:
MOVA,@R0
MOVX@DPTR,A
INCR0
INCDPTR
DJNZR7,LOOP
RET
2片内RAM30H开始的单元中有10B的二进制数,请编程求它们之和(和<256).
解 ADDIO:
MOVR0,30H
MOVR7,#9
MOVA,@R0
LOOP:
INCR0
ADDA,@R0
DJNZR7,LOOP
MOV30H,A
RET
4用查表法编一子程序,将R3中的BCD码转换成ASCII码.
解 MAIN:
MOVA,R3;待转换的数送A
MOVDPTR,#TAR;表首地址送DPTR
MOVCA,@A+DPTR;查ASCII码表
MOVR3,A;查表结果送R3
RET
TARDB30H,31H,32H,33H,34H
DB35H,36H,37H,38H,39H
片内RAM40H开始的单元内有10B二进制数,编程找出其中最大值并存于50H单元中.
解START:
MOVR0,#40H;数据块首地址送R0
MOVR7,#09H;比较次数送R7
MOVA,@R0;取数送A
LOOP:
INCR0
MOV30H,@R0;取数送30H
CJNEA,30H,NEHT;(A)与(30H)相比
NEXT:
JNCBIE1(A)≥(30H)转BIR1
MOVA,30H;(A)<(30H),大数送A
BIE1:
DJNZR7,LOOP;比较次数减1,不为0,继续比较
MOV50H,A;比较结束,大数送50H
RET
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 复习资料