单片机原理及应用第二版林立课后答案Word文档格式.docx

上传人:b****6 文档编号:19155129 上传时间:2023-01-04 格式:DOCX 页数:39 大小:211.72KB
下载 相关 举报
单片机原理及应用第二版林立课后答案Word文档格式.docx_第1页
第1页 / 共39页
单片机原理及应用第二版林立课后答案Word文档格式.docx_第2页
第2页 / 共39页
单片机原理及应用第二版林立课后答案Word文档格式.docx_第3页
第3页 / 共39页
单片机原理及应用第二版林立课后答案Word文档格式.docx_第4页
第4页 / 共39页
单片机原理及应用第二版林立课后答案Word文档格式.docx_第5页
第5页 / 共39页
点击查看更多>>
下载资源
资源描述

单片机原理及应用第二版林立课后答案Word文档格式.docx

《单片机原理及应用第二版林立课后答案Word文档格式.docx》由会员分享,可在线阅读,更多相关《单片机原理及应用第二版林立课后答案Word文档格式.docx(39页珍藏版)》请在冰豆网上搜索。

单片机原理及应用第二版林立课后答案Word文档格式.docx

音乐信号以数字的形式存于存储器中〔类似于ROM〕,由微控制器读出,转化为模拟音乐电信号〔类似于声卡〕。

在大型电路中,这种模块化应用极大地缩小了体积,简化了电路,降低了损坏、错误率,也方便于更换。

汽车电子

单片机在汽车电子中的应用非常广泛,例如汽车中的发动机控制器,基于CAN总线的汽车发动机智能电子控制器、GPS导航系统、abs防抱死系统、制动系统、胎压检测等。

  

此外,单片机在工商、金融、科研、教育、电力、通信、物流和国防航空航天等领域都有着十分广泛的用途。

4.将十进制数37转换为二进制,BCD码和十六进制数,并对转换结果进行比照分析。

37=(100101)B=(25)H;

BCD码为00110111;

可见,同一个数用不同进制表示,其结果也不同。

5.写出以下十进制数在8位微机中的原码,反码和补码形式。

(1)+36

原码00100100B

反码00100100B

补码00100100B

(2)-36

原码10100100B

反码11011011B

补码11011100B

(3)+127

原码01111111B

反码01111111B

补码01111111B

(4)-128

原码10000000B

反码01111111B

补码10000000B

〔5〕-121

原码11111001B

反码10000110B

补码10000111B

 

6.对于二进制数10001001B,假设理解为无符号数,那么该数对应十进制数为多少?

假设理解为有符号数,那么该数对应十进制为多少?

假设理解为BCD数,那么该数对应十进制数为多少?

10001001B无符号数:

137;

有符号数:

-9;

BCD数:

89;

7.对以下各组数进行“与〞,“或〞和“异或〞运算。

〔1〕10101010和

00000000

与00000000

或10101010

异或10101010

(2)01110111和

10001000

或11111111

异或11111111

(3)11101110和

01110111

与01100110

异或10011001

(4)00111100和

11110000

与00110000

或11111100

异或11001100

8.ProteusISIS的工作界面中包含哪几个窗口?

菜单栏中包含哪几个选项?

ProteusISIS的工作界面主要包括标题栏、菜单栏、工具栏、状态栏、方位控制按钮、仿真进程控制按钮、对象选择窗口,原理图编辑窗口和预览窗口等。

主菜单栏包含文件、查看、编辑、工具、设计、图形、源文件、调试、库、模板、系统、帮助选项。

9.利用ISIS模块开发单片机系统需要经过哪几个主要步骤?

〔1〕启动ISIS;

〔2〕绘制电路原理图;

〔3〕输入单片机程序;

〔4〕进行源代码调试;

〔5〕仿真运行。

10.何谓PCB?

利用ARES模块进行PCB设计需要经过哪几个主要步骤?

PCB〔PrintedCircuitBoard〕,中文名称为印制电路板,又称印刷电路板、印刷线路板,是重要的电子部件,是电子元器件的支撑体,是电子元器件电气连接的提供者。

由于它是采用电子印刷术制作的,故被称为“印刷〞电路板。

利用ARES模块进行PCB设计的主要步骤:

(1)启动ARES;

(2)元器件布局;

(3)元器件布线;

(4)铺铜;

(5)三维效果图;

(6)CADCAM输出。

第2章MCS-51单片机结构及原理习题

1.MSC-51单片机内部由哪些功能部件组成,各有什么功能?

以80C51单片机为例,其内部功能部件有:

控制器:

是对取自程序存储器中的指令进行译码,在规定的时刻发出各种操作所需的控制信号,完成指令所规定的功能;

运算器:

根据控制器发来的信号,执行算术逻辑运算操作;

存储器:

包括程序存储和数据存储器;

定时器计数器:

2个16位定时器/计数器,可对机器周期计数,也可对外部输入脉冲计数;

中断系统:

可响应三个内部中断源和两个外部中断源的中断请求;

输入输出接口:

4个8位并行口和一个全双工串行口;

2.MSC-51单片机外部引脚的名称是什么?

各有什么功能?

(1)电源及晶振引脚

VCC(40脚):

+5V电源引脚

VSS(20脚):

接地引脚

XTAL1(19脚);

外接晶振引脚〔内置放大器输入端〕

XTAL2(18脚):

外接晶振引脚〔内置放大器输出端〕

(2)控制引脚

RST/VPD(9)为复位/备用电源引脚

ALE/PROG(30)为地址锁存使能输出/编程脉冲输入

PSEN(29):

输出访问片外程序存储器读选通信号

EA/VPP(31):

外部ROM允许访问/编程电源输入

(3)并行I/O口引脚

P0.0~P0.7〔39~32脚〕——P0口;

P1.0~P1.7〔1~8脚〕——P1口;

P2.0~P2.7〔21~28脚〕——P2口;

P3.0~P3.7〔10~17脚〕——P3口。

3.51系列单片机的封装有哪些类型?

请说明每一种封装引脚之间的距离。

51系列单片机的封装有:

40引脚双列直插封装〔DIP——dualin-linepackage〕,引脚之间的距离是100mil(2.54mm);

44引脚方形扁平封装〔QFP——quadflatpackage〕方式,引脚之间的距离是2.54mm;

44引脚带引线的塑料芯片载体PLCC(PlasticLeadedChipCarrier)。

4.什么是复位?

单片机复位电路有哪几种,工作原理分别是什么?

复位——使单片机恢复原始默认状态的操作。

单片机复位电路有:

上电复位电路,由电阻和电容构成,通过上电时,电容相当于短路而使复位引脚在晶振有效的情况下保持2个机器周期的高电平;

按钮开关复位电路,由两个电阻的分压构成,通过手工按下按钮,使复位引脚在晶振有效的情况下保持2个机器周期的高电平。

5.通常的微机系统存储器结构有哪几种?

MCS-51单片机存储器属于哪一类?

CS-51可寻址多大空间?

通常的微机系统存储器结构有两种结构,即哈佛结构和冯诺依曼结构(也叫普林斯顿结构),MCS-51单片机存储器属于,MCS-51可寻址空间是两个64KB,即64KB的程序存储空间和64KB的数据存储空间。

6.片内RAM中低128个单元划分为哪三个主要局部?

各局部的主要功能是什么?

片内RAM中低128个单元划分为三个局部:

①工作存放器区〔00H-1FH〕,四组,每组8个,可作用工作存放器切换使用;

②可位寻址区〔20H-2FH〕,16B,位地址为00H-7FH,用作为按位寻址的空间;

③用户RAM区〔30H-7FH〕,80B,用作普通RAM单元或堆栈。

7.程序状态字存放器PSW各位的定义是什么?

程序状态字存放器PSW各位的定义如下:

PSW.7:

进/借位标志CY,加法有进位时置1,减法有借位时置1;

PSW.6:

辅助进位标志AC,加法运算低四位向高上四位有进位时置1;

PSW.5、PSW.1:

用户标志位F0和用户标志位F1,

保存用户的位数据;

PSW.4、PSW.3:

工作存放器选择控制位RS1和RS0,00至11分别选择四组工作之一作为当前工作存放器

PSW.2:

溢出标志位OV,有符号数加、减运算结果有溢出或乘除上结果异常(乘法运算结果大于255即乘积在BA中,或除法运算除数为0)时置1

PSW.0:

奇偶标志位P,累加器A中1的个数为奇数时置1。

8.什么是时钟周期?

什么是机器周期?

什么是指令周期?

当振荡频率为12MHz时,一个机器周期为多少微秒?

时钟周期又叫振荡周期或拍,用P表示,是MCS-51单片机中最小的时间单位,在一个时钟周期内,CPU完成一个最根本的动作。

机器周期:

由12个时钟周期构成,完成一个根本操作

指令周期:

是执行一条指令所需的时间,根据指令的复杂性,可由1~4个机器周期构成。

当振荡频率为12MHz时,一个机器周期为1微秒。

9.P0、P1、P2和P3口的结构和功能分别是什么?

P0口的每一位由1个锁存器、2个三态缓冲器、1个输出控制电路〔非门X、与门、电子开关MUX、输出驱动电路构成,其功能既可以作为通用I/O口实现输入/输出功能,也可作为单片机地址线的低8位和数据线实现外部扩展功能。

在用作输入输出口时,需外接上拉电阻。

P1口的每一位由1个锁存器、1个场效应管驱动器V和2个三态门缓冲器构成,其作用是用作输入输出口

P2口的每一位由1个锁存器、2个三态缓冲器、1个输出控制单元、1个输出驱动单元构成,其功能是用作输入输出口,或地址总线的高8位。

P3口的每一位由1个锁存器、2个三态缓冲器、1个第二功能控制单元、1个输出驱动单元构成,其作用是用作输入输出口或第二功能。

10.80C51单片机引脚ALE的作用是什么?

当80C51不外接存储器时,ALE上的输出的脉冲频率是多少?

80C51单片机引脚ALE的作用是对外部存储寻址时锁存P0口输出的低8位地址,当80C51不外接存储器时,ALE上的输出的脉冲频率是fosc/6。

第3章单片机的汇编语言与程序设计习题

1.MCS-51单片机有哪几种寻址方式?

适用于什么地址空间?

MCS-51单片机有7种寻址方式:

直接寻址、存放器寻址、存放器间接寻址、立即寻址、变址寻址、位寻址、相对寻址。

直接寻址方式:

操作数的地址由指令直接给出,适用于片内RAM的所有地址空间;

如MOVA,68H

MOVA,PSW

存放器寻址方式:

指令给出的是存放器的编码,操作数在编码指定的存放器中,适用于片内00H至1FH的32个字节,用R0,…,R7表示,通过PSW的RS1和RS0选择组号确定对应32个字节中的其中8个,还有累加器A,以及乘除法指令中的A和B存放器,位寻址方式中的布尔累加器C;

MOVA,R1

MULAB

INCDPTR

存放器间接寻址方式:

指令给出的是存放器的编码,操作数地址在编码指定的存放器中,适用于片内RAM的全部空间,其中52系列中的80H至FFH只能用存放器间接寻址;

如MOVA,@R0

MOVA,@R1

MOVXA,@DPTR

立即寻址方式:

操作数本身在指令中直接,给出适用于用8位立即数对片内RAM所有地址单元赋值,也可用16位立即数对DPTR赋值;

MOVA,#0E2H

MOVDPTR,#2000H

变址寻址方式:

以DPTR或PC作为基地址存放器,以累加器A作为变址存放器,将基址存放器与变址存放器的内容相加形成操作数的实际地址的一种寻址方式,变址寻址方式适用于程序存储器ROM,仅有三条指令如下:

MOVCA,@A+DPTR

MOVCA,@A+PC

JMP@A+DPTR

位寻址方式:

指令中直接给出操作数所在单元的位地址,适用于片内RAM中地址20H至2FH中的16个字节中的128个位地址空间和80H至FFH中地址中可以被8整除的所有SFR中的每个位地址空间;

MOVC,7FH

MOVF0,C

MOVC,ACC.7

相对寻址方式:

为相对转移指令而设,指令中直接给出转移的相对偏移量,其转移目标在当前指令-128至+127字节范围内的地址空间。

SJMPSTART

HERE:

SJMPHERE;

等效于:

SJMP$

2.MCS-51单片机的PSW程序状态字中无ZERO(零)标志位,怎样判断某内部数据单元的内容是否为零?

MCS-51单片机的PSW程序状态字中无ZERO(零)标志位,判断某内部数据单元的内容是否为零是能通过取数到A累加器,再判断A中的每一位是否为零来确定其值是否为零。

3.编程将内部RAM的20H--30H单元内容清零。

解:

设一个片内RAM指针R0,先指向首地址20H,通过累加器A清零,然后采用间接寻址方式依次将A中的零值传送到指针所指的片内RAM单元,每传送一个字节,地址指针加1,直到到达地址为30H或到达计数器规定的17个字节为止。

程序1:

MOVR0,#20H;

设地址指针初值

CLRA;

累加器清0

CONT:

MOV@R0,A;

置0指针所指单元

INCR0;

地址指针加1

CJNER0,#31H,CONT;

指针未超过终点那么继续

SJMP$;

暂停

程序2:

MOVR7,#17;

计数器赋初值,从20H到30H共17个字节

DJNZR7,CONT;

计数器减1,非0,那么继续

4.编程查找内部RAM的32H~41H单元中是否有0AAH这个数据,假设有这一数据,那么将50H单元置为0FFH,否那么将50H单元清零。

设一个片内RAM指针R0,先指向首地址32H,比拟@R0与#0AAH,假设相等,那么退出循环,给50H单元赋0FFH,假设不相等,那么R0加1为继续比拟下一个字节做准备,直到到达地址为41H或到达计数器规定的16个字节为止还没找到,那么给50H单元赋00H

MOVR0,#32H;

CJNE@R0,#0AAH,NEXT;

比拟查找值与指针所指单元的值,不相等转移

MOVA,#0FFH;

相等,那么准备好要赋的标志值0FFH

SJMPDOWN;

转存到保存结果处

NEXT:

INCR0;

修改地址指针

CJNER0,#42H,CONT;

假设指针未越过终点,那么继续

MOVA,#00H;

查找失败,那么将00H存入结果标志单元

DOWN:

MOV50H,A;

将比拟结果标志存入50H单元

SJMP$;

END

MOVR7,#16;

计数器赋初值,从20H到30H共16个字节

CJNE@R0,#0AAH,NEXT;

DJNZR7,CONT;

5.查找20H~4FH单元中出现00H的次数,并将查找结果存入50H单元。

从20H到4FH共48个字节

MOVR7,#48;

字节计数器赋初值

MOVR0,#20H;

CJNE@R0,#00H,NEXT;

INCR6;

相等,0的个数计数器加1

MOV50H,R6;

保存O的个数计数值到50H单元

ENDEND

6.A=83H,R0=17H,(17H)=34H,写出以下程序段执行之后的A中的内容。

ANLA,#17H

ORL17H,A

XRLA,@R0

CPLA

END

ANLA,#17H;

A=03H

ORL17H,A;

(17H)=00110100∨00000011=00110111

XRLA,@R0;

A=00000011∨00110111=00110100

CPLA;

A=11001011

7.单片机的晶振频率为12MHz,分别设计延时为0.1s、1s的子程序。

单片机的晶振频率为12MHz,那么机器周期为1us,延时子程序是通过执行指令序列中机器周期数来到达,如果要0.1s,即100ms,也就是100000us,所以需要机器周期数到达100000。

要延时到达1S,可通过对延时为0.1秒的子程序调用10次来实现。

DELAY100MS:

MOVR6,#200;

1个机器周期

D1:

MOVR7,#250;

D2:

NOP;

DJNZR7,D2;

2个机器周期,3*251=753

DJNZR6,D1;

2个机器周期,(1+753+2)*132=99792

RET;

2个机器周期,1+99792+2=99795,约100ms

DELAY1S:

MOVR7,#10;

计数10次1

LOOP:

ACALLDELAY100MS;

延时100ms子程序99795+2

DJNZR7,LOOP;

未到达10次那么继续10*(2+99795+2)

RET;

返回2+10*(2+99795+2)=997992

8.内部RAM从20H单元开始处有一数据块,以ODH为结束标志,试统计该数据块的长度,将该数据块送到外部数据存储器7E01H开始的单元,并将长度存入7E00H单元。

从20H的指针用R0,从外部RAM7E01开始的指针用DPTR,计数器用R7

MOVR7,#0;

MOVR0,#20H;

设片内RAM地址指针初值

MOVDPTR,#7E01H;

设片外RAM地址指针初值

MOVA,@R0;

取片内RAM中的一个字节

MOVX@DPTR,A;

存入片外RAM指针所指单元

INCR7;

长度计数器加1

INCR0;

片内RAM地址指针加1

INCDPTR;

片外RAM地址指针加1

CJNEA,#0DH,CONT;

未到达结束标志

MOVA,R7;

取块计数长度值

保存

9.内部RAM从DATA开始的区域中存放着10个单字节十进制数,求其累加和,并将结果存入SUM和SUM+1单元。

R7计数,R6保存累加和高8位,R0用作地址指针

ORG0000H

LJMPMAIN

ORG100H

SUMEQU30H

DATAAEQU40H

MAIN:

MOVR7,#10;

MOVR0,#DATAA;

CLRA;

MOVR6,A;

累加结果的高8位

ADDA,@R0;

加RAM中的一个字节到ACC

DAA

JNCNEXT;

假设无进位那么不用管高8位

有进位,高8位加1

片内RAM

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 自我管理与提升

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1