北航单片机***_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
北航单片机***
上传于||文档简介
&&北航单片机【修订版】答案
大小:17.56KB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢1-1 什么是单片机?它与一般微型计算机在结构上何区别?
答:单片微型计算机简称为单片机(Single Chip Computer),又称为微控制器(MCU即Micro-Controller Unit)。它是在一块芯片上集成了中央处理器(CPU)、存储器(RAM、ROM)、定时器/计数器、中断控制、各种输入/输出(I/O)接口(如并行I/O口、串行I/O口和A/D转换器)等为一体的器件。
微型计算机的基本结构由CPU(运算器、控制器)、存储器、输入设备和输出设备五大部分组成,各部分通过外部总线连接而成为一体。单片机的结构是在一块芯片上集成了中央处理器(CPU)、存储器、定时器/计数器、中断控制、各种输入/输出接口(如并行I/O口、串行I/O口和A/D转换器)等,它们通过单片机内部部总线连接而成为一体。
1-2 MCS-51系列单片机内部资源配置如何?试举例说明8051与51兼容的单片机的异同。
1-3 新型8位单片机,主要在哪几方面发展了?使用新型8位单片机能带来什么好处?
1、运算速度大大提高;
2、RAM、ROM容量增大;
3、精简指令集,指令比51少很多;
4、更多的IO口;
5、更多的其他功能,比如自带AD,DA,自带SPI,自带看门狗,自带大容量EEPROM等等;
6、中断的种类更细更多,有20几个中断向量的比比皆是,定时器/计数器的功能,数量都更多。
简化电路,节省成本,降低功耗,提高系统的可靠性。
MCS-51系列单片机内部有哪些主要的逻辑部件?
答: 一个8位CPU;一个片内振荡器及时钟电路;4K字节ROM程序存储器;128字节RAM数据存储器;两个16位定时器/计数器;可寻址64K外部数据存储器和64K外部程序存储器空间的控制电路;32条可编程的I/O线(四个8位并行I/O端口);一个可编程全双工串行口;具有五个中断源、两个优先级嵌套中断结构
MCS-51设有4个8位端口(32条I/O线),实际应用中8位数据信息由哪一个端口传送?16位地址线怎样形成?P3口有何功能?
答:实际应用中8位数据信息由P0口传送。16位地址线由P0口输出低8位地址A7~A0,P2口输出高8位地址A15~A8。P3口是一个多用途的端口,也是一个准双向口,作为第一功能使用时,其功能同P1口;当作第二功能使用时,P3.0—RXD串行输入(数据接收)口,P3.1—TXD串行输出(数据发送)口,P3.2—INT0外部中断0输入线,P3.3—INT1外部中断1输入线,P3.4—T0定时器0外部输入,P3.5—T1定时器1外部输入,P3.6—WR外部数据存储器写选通信号输出,P3.7—RD外部数据存储器读选通信号输入。
2-3 MCS-51的存储器结构与一般的微型计算机有何不同?程序存储器和数据存储器各有何作用?
答:MCS-51存储器结构与常见的微型计算机的配置方式不同,它把程序存储器和数据存储器分开,各有自已的寻址系统、控制信号和功能。
程序存储器用来存放程序和始终要保留的常数,如经汇编后所编程序的机器码。数据存储器通常用来存放程序运行中所需要的常数或变量,例如模/数转换时实时采集的数据等。
MCS-51内部RAM区功能结构如何分配?4组工作寄存器使用时如何选用?位寻址区域的字节地址范围是多少?
答:MCS-51系列单片机内部数据存储器:00H ~ 7FH单元组成的低128字节地址空间的RAM区,又分为为工作寄存器区(00H~1FH)、位寻址区(20H~2FH)和用户RAM区(30H~7FH)。
80H ~ FFH(128 ~255)单元组成的高128字节地址空间的特殊功能寄存器(又称SFR)区。对于、8752的单片机还有80H~FFH单元组成的高128字节地址空间的RAM区。
4组工作寄存区是由程序状态字PSW(特殊功能寄存器,字节地址为0D0H)中的D4、D3位(RS1和RS0)来决定的。
位寻址区域的字节地址范围是20H~2FH(对应的位地址范围是00H~7FH)。
2-5 特殊功能寄存器中哪些寄存器可以位寻址?它们的字节地址是什么?
答:P0字节地址80H,TCON字节地址88H,P1字节地址90H,SCON字节地址98H,P2字节地址A0H,IE字节地址A8H,P3字节地址B0H,IP字节地址B8H,PSW字节地址D0H,ACC字节地址E0H,B字节地址F0H。
2-6 简述程序状态字PSW中各位的含义。
答:CY(PSW·7)进位标志,AC(PSW·6)
辅助进位标志,F0(PSW·5)用户标志位,
RS1、RS0(PSW·4、PSW·3)寄存器区选择
控制位,OV(PSW·2)溢出标志,P(PSW.0)
奇偶标志,每个指令周期都由硬件来置位或
清“0”,以表示累加器A 中1的位数的奇偶数。
2-7复位后,各内部寄存器的内容是什么?
2-8 一个时钟频率为6MHz的单片机应用系统,它的振荡信号周期、时钟周期、机器周期分别是多少?
答:振荡信号周期=1/6us、时钟周期=1/3us、机器周期=2us。
2-9 堆栈有何功能?堆栈指针的作用是什么?二者的关系?为什么在程序设计时,要对SP重新赋值?
答:堆栈的主要功能:保护断点和程序现场,保存用户数据。
堆栈指针的作用是:堆栈指针SP是一个8位特殊功能寄存器,指示出堆栈顶部在内部RAM中的位置。
两者的关系:堆栈指针SP给定当前的栈顶,SP的初始值越小,堆栈深度就越深。
系统复位后,SP初始化为07H,使得堆栈事实上由08H 单元开始。考虑到08H~1FH单元分属于工作寄存器区1~3,若程序设计中要用到这些区,则最好把SP值改置为1FH或更大的值如60H,SP的初始值越小,堆栈深度就越深,堆栈指针的值可以由软件改变,因此堆栈在内部RAM中的位置比较灵活。
AJMP START
START:MOV A, #21H
ADD A, #45H
ADD A, #78H
AJMP START
START:MOV A, #78H
ADD A, #45H
SUBB A, #21H
SUBB A, #09H
AJMP START
START:MOV A, #34H
ADD A, #0ABH
ADDC A, #21H
AJMP START
START:CLR C;
MOV A, #0BCH
SUBB A, #0CDH
MOV A, 1#2AH
SUBB A, #0FH
3-5:请编程实现:将片内20H存储单元的8位二进制数转换成BCD码,并存放在片外以2000H起始的单元中,2000H单元存放转换后的BCD码的百位,2001H单元存放转换后的BCD码的十位/个位。
AJMP START
START:MOV A,20H ;A←被除数
; B←除数100
;A÷B,A←商(百位数BCD码),B←余数
;(2000H)←将百位数BCD码
;A←余数作被除数
;B←除数10
;A÷B,A←商(十位数BCD码),B←余数(个位BCD码) SWAP
;十位BCD码调整到A中高4位
;A中压缩成2位BCD码
; (2001H)←十位、个位BCD码
3-6: 将片内RAM 20H,21H,22H,23H(千/百/十/个位)中的十进制的ascii码转第二章系统结构(单片机)_图文_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
第二章系统结构(单片机)
上传于||暂无简介
大小:2.42MB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢第2章习题参考***
MCS-51系列单片机内部有哪些主要的逻辑部件?
答: 一个8位CPU;一个片内振荡器及时钟电路;4K字节ROM程序存储器;128字节RAM数据存储器;两个16位定时器/计数器;可寻址64K外部数据存储器和64K外部程序存储器空间的控制电路;32条可编程的I/O线(四个8位并行I/O端口);一个可编程全双工串行口;具有五个中断源、两个优先级嵌套中断结构
MCS-51设有4个8位端口(32条I/O线),实际应用中8位数据信息由哪一个端口传送?16位地址线怎样形成?P3口有何功能?
答:实际应用中8位数据信息由P1口传送。16位地址线由P0口输出低8位地址A7~A0,P2口输出高8位地址A15~A8。P3口是一个多用途的端口,也是一个准双向口,作为第一功能使用时,其功能同P1口;当作第二功能使用时,P3.0—RXD串行输入(数据接收)口,P3.1—TXD串行输出(数据发送)口,P3.2—外部中断0输入线,P3.3—外部中断1输入线,P3.4—T0定时器0外部输入,P3.5—T1定时器1外部输入,P3.6—WR外部数据存储器写选通信号输出,P3.7—外部数据存储器读选通信号输入。
2-3 MCS-51的存储器结构与一般的微型计算机有何不同?程序存储器和数据存储器各有何作用?
答:MCS-51存储器结构与常见的微型计算机的配置方式不同,它把程序存储器和数据存储器分开,各有自已的寻址系统、控制信号和功能。
程序存储器用来存放程序和始终要保留的常数,如经汇编后所编程序的机器码。数据存储器通常用来存放程序运行中所需要的常数或变量,例如模/数转换时实时采集的数据等。 2-4
MCS-51内部RAM区功能结构如何分配?4组工作寄存器使用时如何选用?位寻址区域的字节地址范围是多少?
答:MCS-51系列单片机内部数据存储器:00H ~ 7FH单元组成的低128字节地址空间的RAM区,又分为为工作寄存器区(00H~1FH)、位寻址区(20H~2FH)和数据缓冲区(30H~7FH)。
80H ~ FFH(128 ~255)单元组成的高128字节地址空间的特殊功能寄存器(又称SFR)区。对于、8752的单片机还有80H~FFH单元组成的高128字节地址空间的RAM区。
4组工作寄存区是由程序状态字PSW(特殊功能寄存器,字节地址为0D0H)中的D4、D3
位寻址区域的字节地址范围是20H~2FH(对应的位地址范围是00H~7FH)。
2-5 特殊功能寄存器中哪些寄存器可以位寻址?它们的字节地址是什么?
答:P0字节地址80H,TCON字节地址88H,P1字节地址90H,SCON字节地址98H,P2字节地址A0H,IE字节地址A8H,P3字节地址B0H,IP字节地址B8H,PSW字节地址D0H,ACC字节地址E0H,B字节地址F0H。
2-6 简述程序状态字PSW中各位的含义。
答:CY(PSW·7)进位标志,AC(PSW·6)辅助进位标志,F0(PSW·5)用户标志位RS1、RS0(PSW·4、PSW·3)寄存器区选择控制位,OV(PSW·2)溢出标志,P(PSW.0)奇偶标志,每个指令周期都由硬件来置位或清“0”,以表示累加器A 中1的位数的奇偶数
2-7 一个时钟频率为6MHz的单片机应用系统,它的时钟周期、机器周期、指令周期分别是
答:时钟周期=1/3us、机器周期=2us、指令周期=2us。
2-8 单片机有几种主要的工作方式?其特点各是什么?
答:有复位、程序执行、低功耗三种主要工作方式。
复位操作是单片机的初始化操作,单片机在进入运行前和在运行过程中程序出错或操作失误使系统不能正常运行时,需要进行复位操作,复位操作后,程序将从0000H开始重新执行。
单片机的程序的执行过程分为取指令、译码、执行三个过程。
待机方式,也称为空闲工作。系统进入待机工作方式时,振荡器继续工作,中断系统、串行口以及定时器模块由时钟驱动继续工作,但时钟不提供给CPU。单片机进入掉电工作方式,只有内部RAM单元的内容被保存,其它一切工作都停止。
2-9 堆栈有何功能?堆栈指针的作用是什么?二者的关系?为什么在程序设计时,要对SP重新赋值?
答:堆栈的主要功能:保护断点和程序现场,保存用户数据。
堆栈指针的作用是:堆栈指针SP是一个8位特殊功能寄存器,指示出堆栈顶部在内部RAM中的位置。
两者的关系:堆栈指针SP给定当前的栈顶,SP的初始值越小,堆栈深度就越深。 系统复位后,SP初始化为07H,使得堆栈事实上由08H 单元开始。考虑到08H~1FH单元分属于工作寄存器区1~3,若程序设计中要用到这些区,则最好把SP值改置为1FH或更大的值如60H,SP的初始值越小,堆栈深度就越深,堆栈指针的值可以由软件改变,因此堆栈在内部RAM中的位置比较灵活。
第3章习题参考***
3-1 设内部RAM中59H单元的内容为50H,写出当执行下列程序段后寄存器A,R0和内部RAM中50H,51H单元的内容为何值?
3-2 访问外部数据存储器和程序存储器可以用哪些指令来实现?举例说明。
答:访问外部数据存储器指令有:
MOV DPTR,#0100H
MOV @DPTR,A
MOV DPTR,#0200H
MOV A,@DPTR
MOVX A,@R0
MOVX @R1,A
访问程序存储器指令有:
A,@A+DPTR
3-3 设堆栈指针SP中的内容为60H,内部RAM中30H和31H单元的内容分别为24H和10H,执行下列程序段后,61H,62H,30H,31H,DPTR及SP中的内容将有何变化?
31H,#0FFH
;31H=0FFH
3-4 设(A)=40H,(R1)=23H,(40H)=05H。执行下列两条指令后,累加器A和R1以及内部RAM中40H单元的内容各为何值?
3-5 两个四位BCD码数相加,被加数和加数分别存于50H,51H和52H,53H单元中(千位、百位在低地址中,十位、个位在高地址中),和存放在54H,55H和56H中(56H用来存放最高位的进位),试编写加法程序。
3-6 设(A)=B,(R5)=B,分别写出执行下列指令后结果。
3-7指令SJMP rel中,设rel=60H,并假设该指令存放在2114H和2115H单元中。当该条指令执行后,程序将跳转到何地址?
3-8 简述转移指令AJMP
addr11、SJMP rel、 LJMP
addr16及JMP
@A+DPTR的应用场合。
addr11 为2K字节范围内的无条件转跳指令,把程序的执行转移到指定的地址。SJMP rel是无条件转跳指令,执行时在PC加2后,把指令中补码形式的偏移量值加到PC上,并计算出转向目标地址。转向的目标地址可以在这条指令前128字节到后127字节之间。
addr16执行这条指令时把指令的第二和第三字节分别装入PC的高位和低位字节中,无条件地转向指定地址。转移的目标地址可以在64K程序存储器地址空间的任何地
方,不影响任何标志。
指令的功能是把累加器中8位无符号数与数据指针DPTR中的16位数相加,将结果作为下条指令地址送入PC,利用这条指令能实现程序的散转。
3-9 试分析下列程序段,当程序执行后,位地址00H,01H中的内容将为何值?P1口的8条I/O线为何状态?
ACC.2,LOOP2 ;
查指令表,写出下列两条指令的机器码,并比较一下机器码中操作数排列次序的特点。
85(80)(58)
直接寻址字节送直接寻址字节: 汇编时源操作数在目标操作数之前。 MOV
75(58)(80)
立即数送直接寻址字节:
汇编时目标操作数在原操作数之前。
第4章习题参考***
4-1 什么是单片机的程序设计语言。
答:单片机的程序设计语言是指计算机能理解和执行的语言,人与CPU、MCU交流的语言。MCS-51系列单片机的程序设计语言,按照语言的结构及其功能可以分为三种:机器语言、汇编语言、高级语言。
4-2 单片机的程序设计包括哪几个步骤。
答:程序设计步骤如下:
(1) 分析问题。即仔细分析任务书中要实现的功能和性能指标。
(2) 确定算法。即找到解决问题思路、方法。
(3) 分配内存单元。即确定数据结构。这一步往往与算法同时考虑。
(4) 根据算法和数据结构,画出程序流程图。
(5) 根据流程图编写汇编语言源程序。编辑录入,保存为*.ASM文件。
(6) 汇编。排除语法错误。
(7) 调试(DEBUG)。找出错误并更正,再调试,直至通过。
(8) 编写相关说明文档。
4-3 画出单片机的三种基本程序结构。