单片机复习总结.docx
《单片机复习总结.docx》由会员分享,可在线阅读,更多相关《单片机复习总结.docx(10页珍藏版)》请在冰豆网上搜索。
单片机复习总结
单片机复习总结
O、计算机的基本原理
计算机数值表示
(原码、反码、补码),
(BCD码,十六进制数,ASCII码,十进制之间的相互转换)
中断
存储器(堆栈)
一、绪论
要求:
熟悉,不作为考试内容
二、MCS-51单片机系统结构
1、硬件结构了解
2、引脚功能熟悉,掌握在外部功能扩展中的应用
3、中央处理器熟悉各个寄存器的基本功能
掌握振荡周期、机器周期及指令周期的概念
时钟,复位的定义
三、存储器结构
1、四个物理空间:
内、外程序存储器,内、外数据存储器
三个逻辑空间:
程序存储器,内、外数据存储器
2、程序存储器地址空间
重点掌握:
低地址段的保留单元
3、数据存储器地址空间
重点掌握:
内部数据存储器,地址范围,特点,SFR
外部数据存储器,寻址范围及寻址方式
4、位处理器
熟悉位处理器组成及位存储器地址范围
四、指令系统
1、指令的寻址方式(掌握)
7种寻址方式,名称、格式、寻址范围
2、指令系统(五大类)
要求:
指令的格式,寻址方式,执行操作,对标志位影响,程序段编写。
五、定时/计数器
要求:
初始化程序,中断或非中断情况下的应用编程
定时计数器特点:
16位加1计数器,计数初值为计数长度的补码;可程控为4种不同工作方式。
初始化程序:
1、计数常数的计算
2、置工作方式字
3、置THX,TLX
4、置TRX启动计数
5、置EA、ETX开中断
六、中断系统
1、中断的概念
2、与中断有关的寄存器
3、中断源:
外部及内部中断源,中断触发方式,如何设置
4、MCS-51中断优先级的处理原则,同级中断申请的查询次序。
5、中断处理过程(了解),各个中断源对应中断矢量(掌握),中断响应条件(掌握)。
6、中断程序编写的步骤
七、串行通讯口
1、串行通讯概述(熟悉,了解)
重点:
异步串行通讯的帧格式
2、MCS-51的串行通讯口
SCON串行控制寄存器,PCON(SMOD位作用)
串行通讯工作方式(熟悉了解),掌握不同工作方式的特点及帧格式,如何启动发送及接收。
串行通讯波特率,常用波特率的获得(掌握)。
串行通讯编程,初始化程序、简单应用程序
八、功能扩展
1、A/D、D/A转换的原理,逐次比较式AD转换的原理
给出接口芯片,画接口电路图;
根据接口电路图,写转换程序
2、键盘(行扫描法、反转扫描法)以及LED显示(静态显示、动态显示)的工作原理
习题示例:
请将
(1)~(5)的词汇和A~J的说明联系起来
(1) CPU——()
(2) PC——()
(3) SP——()
(4) 指令——()
(5) 堆栈——()
(A) 总线接口单元,负责与存储器、I/O接口传送信息
(B) 存放下一条要执行的指令的地址
(C) 保存各个逻辑段的起始地址的寄存器
(D) 保存当前栈顶即堆栈指针的寄存器
(E) 微型计算机的核心,包括运算器、控制器和寄存器3个主要部分
(F) 以后进先出方式工作的存储空间
(G) 告诉CPU要执行什么操作,在程序运行时执行
(H) 执行单元,功能是执行指令
(6) 断电后存储的资料会丢失的存储器是()
A.RAMB.ROMC.CD-ROMD.硬盘
(7) 若内存容量为64KB,则访问内存所需地址线()条
A.16B.20C.18D.19
(8) .不需要访问内存的寻址方式是()
A.立即寻址B.直接寻址C.间接寻址D.变址寻址
读程序
ORG2000H
MOVSP,#50H
MOVA,#50H
LCALL2500H
ADDA,#10H
MOVB,A
L1:
SJMPL1
ORG2500H
MOVDPTR,#200AH
PUSHDPL
PUSHDPH
RET
上述程序执行后,SP=_________A=_________B=_________
ORG0000h
MOVDPTR,#2100H
MOVXA,@DPTR
ANLA,#0FH
SWAPA
MOVB,A
INCDPTR
MOVXA,@DPTR
ANLA,#0FH
ORLA,B
INCDPTR
MOVX@DPTR,A
LOOP:
SJMPLOOP
END
已知2100H,2101H单元中的数均为0FH,则程序执行后2102H中的数为______________
A=_________B=_________
MOVDPTR,#2314H……__________
MOVR0,DPH…………__________
MOV14H,#22H………__________
MOVR1,DPL…………__________
MOV23H,#56H………__________
MOVA,@R0…………__________
XCHA,DPH…………__________
执行以上指令后A=_______DPTR=_______
请写出下图中Y6,Y7引脚所对应的地址
汇编语言程序编写:
双字节与单字节无符号数相乘,设被乘数存于41H,40H单元中,乘数存于R4单元中,乘积存于52H、51H、50H单元中(前者为高字节,后者为低字节)。
请编写此乘法程序段
•MOVB,40H
•MOVAR4
•MULAB
•MOV50H,A
•MOV40H,B
•
MOVB,41H
•MOVAR4
•MULAB
•MOV51H,A
•MOV52H,B
•MOVA,40H
•CLRC
•ADDA,51H
•MOV51H,A
•MOVA,52H
•ADDCA,#0
•MOV52H,A
•
试计算片内RAM区40H~47H八个单元中数的算术平均值,结果存放在4AH中
•MOVR0,#40H
•MOV4AH,#0
•MOV4BH,#0
•LOOP:
CLRC
•MOVA,@R0
•ADDA,4AH
•MOV4AH,A
•MOVA,4BH
•ADDCA,#0H
•MOV4BH,A
•INCR0
•CJNZR0,#48H,LOOP
•MOVR2,#3;右移三次,相当于除8
•ACALLRR_LOOP
•RET
••;双字节(4BH,4AH)右移子程序
•;右移的次数在R2中
•
•RR_LOOP:
CLRC
•MOVA,4BH
•RRCA
•MOV4BH,A
•MOVA,4AH
•RRCA
•MOV4AH,A
•DJNZR2,RR_LOOP
•RET
•试编写计算1234H+0FE7的程序,将和的高8位存入41H单元中,低8位存入40H单元中。
•MOVA,#34H
•ADDA,#0E7H
•MOV40H,A
•MOVA,#12H
•ADDCA,#0FH
•MOV41H,A
•试编写程序,将内部RAM的20H、21H、22H、23H、和24H连续5个单元的内容一次存入2FH、2EH、2DH、2CH、2BH单元
MOVR7,#05H
MOVR0,#20H
MOVR1,#2FH
LOOP:
MOVA,@R0
MOV@R1,A
INCR0
DECR1
DJNZR7,LOOP