云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 单片机课后部分答案

单片机课后部分答案

  • 62 次阅读
  • 3 次下载
  • 2025/5/26 5:29:07

1.12写出下列各十进制数在八位微型计算机中的原码、反码和补码形式。 ① X=+38 ④ X=-115

② X=+76 ⑤ X=-42

③ X=-54

解:① [X]原=[X]反=[X]补=00100110 B; ② [X]原=[X]反=[X]补=01001100 B

③ [X]原=10110110B,[X]反=11001001B,[X]补=11001010B ④ [X]原=11110011B,[X]反=10001100B,[X]补=10001101B ⑤ [X]原=10101010B,[X]反=11010101B,[X]补=11010110B 1.13已知原码如下,写出其反码和补码。 ① [X]原=01011001B ③ [X]原=00101110B

② [X]原=11011001B ④ [X]原=1111100B

解:① [X]原=[X]反=[X]补=01011001 B;

② [X]原=11011001B, [X]反=10100110B,[X]补=10100111B

1.14先把下列各数转换成二进制数,然后按补码运算规则求出[X+Y]补及其真值。 ① X=+46,Y=+55 ③ X=-51,Y=+97

② X=+78, Y=+15 ④ X=+112, Y=-83

解:① [X] 补=00101110B,[Y]补=00110111B;[X+Y]补=01100101B=+101D ② [X] 补=01001110B,[Y]补=00001111B;[X+Y]补=01011101B=+93D ③ [X] 补=11001101B,[Y]补=01100001B;[X+Y]补=00101110B=+46D ④ [X] 补=01110000B,[Y]补=10101101B;[X+Y]补=00011101B=+29D

1.15已知X和Y的补码,计算[X+Y]补和[X-Y]补,并判断运算结果是否有溢出。 ① [X]补=10011011B

② [X]补=00100110B

③ [X]补=10110001B

[Y]补=11100011B [Y]补=00010111B [Y]补=10001110B 解:① [X+Y]补=1 01111110B,C7⊕C6=1⊕0=1,结果溢出; 第2章

2.1, 8051单片机内部结构主要有哪些部件组成?它们的主要功能各是什么? 答:8051单片机内部结构主要有:

(1)中央处理器CPU,是单片机的核心,完成运算和控制功能;

(2)内部数据存储器(256字节),前面128个单元00H~7FH存储内部数据,后面128个单元80H~FFH被专用寄存器占用,用来实现对片内各部件进行管理、控制、监视;

(3)程序计数器PC,是一个16位专用寄存器,其内容为下一条执行指令的地址; (4)内部程序存储器ROM(4K),用于存储程序、原始数据、表格等; (5)4个并行I/O口(8位),实现数据的并行输入输出;

(6)串行通信口,实现单片机和其他数据设备之间的串行数据传送;

[-Y]补= 00011101B,[X-Y]补=0 10111000B,C7⊕C6=0⊕0=0,结果无溢出; [-Y]补=11101001B,[X-Y]补=1 00001111B,C7⊕C6=1⊕1=0,结果无溢出; [-Y]补= 01110010B,[X-Y]补=1 00100011B,C7⊕C6=1⊕1=0,结果无溢出;

② [X+Y]补=0 00111101B,C7⊕C6=0⊕0=0,结果无溢出; ③ [X+Y]补=1 00111111B,C7⊕C6=1⊕0=1,结果溢出;

1

(7)2个定时器/计数器(16位),实现定时或计数功能; (8)中断控制系统,共5个中断源,分高低两个优先级; (9)一个片内振荡器和时钟电路,为单片机产生时钟脉冲序列; (10)总线,用于连接各个部件和单片机系统的扩展。

3. 8051单片机的引脚/EA/VPP、RST/VPD、ALE/PROG和PSEN的功能分别是什么? 答::片内外ROM选择端,ROM的寻址范围为64KB,而AT89C51内部只有4KB ROM,EA:当不够用时可在外扩展ROM。当/EA信号为低电平时,指访问外部ROM;当/EA为高电平时,则先访问内部ROM,当PC值超过4KB时自动转向外部ROM中执行。

RST:复位信号,当此引脚上的信号出现至少两个机器周期的高电平将使单片机复位。 ALE:地址锁存控制信号,当系统扩展时,ALE用于控制把P0口输出的低8位地址送入锁存器存起来,以实现低位地址和数据的分时传送。

PSEN:外部ROM的读选通信号,在访问外部ROM时,每个机器周期两次PSEN有效

(低电平),但在此期间内,每当访问外部数据存储器时,这两次有效的PSEN将不出现。

第5章

5.9 已知单片机晶振频率为6MHz,要求使用T1定时50ms,工作在方式1,允许中断,试计算初值并编写初始化程序。

答:① 计算定时器T1的初值

已知晶振频率为6MHz,则机器周期为12/fosc=2μs

使用T1定时功能,工作在方式1,定时时间为50ms,则T1的初值为:

X?216?50ms?40536?9E58H2us 所以T1的初值为:TH1=9EH,TL1=58H。

② 定时/计数器方式寄存器TMOD的设置

要求用T1定时、工作在方式1、软启动,所以TMOD寄存器应按如下设置:

T1 GATE 0 0 T0 GATE × × M1 M0 0 1 M1 M0 × × 所以TMOD=10H。

③ 允许T1中断,中断允许寄存器IE设置如下:

④ T1的初始化程序如下:

MOV TMOD, #10H ;置定时器1工作方式1

IE =EA1--ESET1EX1ET0EX001000= 88H 2

MOV TH1, #9EH ;送初值 MOV TL1, MOV IE,

#58H

;开中断

;启动定时器

#88H

SETB TR1

5.12 设MCS-51单片机时钟为12MHz,请利用内部定时器T1编写从P1.1引脚输出3ms矩形波的程序,要求占空比为2:1(高电平2ms,低电平1ms)。

答:要求矩形波周期3ms,占空比2:1,就是在一个周期中,高电平2ms,低电平1ms

① 定时器T1工作在方式1,其方式寄存器TMOD为:

T1TMODGATE0

② 计算初值: 机器周期=12/fosc=1μs 对1ms定时,初值X1为:

X1=65536—1000/1=64536=FC18H

T0M10M01GATE×C/T×M1×M0×C/T0= 10H

对2ms定时,初值X2为:

X2=65536—2000/1=63536=F830H

③ 中断允许寄存器IE为:

IEEA1-0-0ES0ET11EX10ET00EX00= 88H

④ 程序如下:

ORG 0000H LJMP START ORG 001BH LJMP BRT1 ORG 0030H MOV TMOD, MOV TL1, MOV IE, SETB TR1 SETB P1.1 SJMP LOOP ORG 0100H

#10H #30H #88H

MOV TH1, #0F8H

START:

LOOP:

3

BRT0:

MOV C, JC

P1.1 NEXT

#30H

MOV TH1, #0F8H MOV TL1, SJMP COM MOV TH1, #0FCH MOV TL1,

P1.1 RETI END

#18H

NEXT:

COM: CPL

5.13 已知晶振频率为6MHz,设计程序使P1.4和P1.5外接灯自动轮流点亮,间隔时间为0.5s。

答:要求间隔0.5s轮流点亮两个灯,则定时器需要定时0.5s,这个值已经超过了定时器的最大定时时间。为此,可采用定时器定时与软件计数相结合的方法来解决问题。本题用定时器T0,每隔0.1s中断1次,向CPU申请中断,用R0计中断的次数。当R0计到5次中断时,则0.5秒时间到,轮流点亮两个只发光二极管。

① 定时/计数器方式寄存器TMOD的设置

要求用T0定时、工作在方式1、软启动,所以TMOD寄存器应按如下设置:

T1 GATE × × T0 GATE 0 0 M1 M0 × × M1 M0 0 1 所以TMOD=01H。 ② 计算定时器T0的初值

已知晶振频率为6MHz,则机器周期为12/fosc=2μs

采用定时功能工作方式1,定时时间为100ms,则T0的初值为:

X?216?100ms?15536?3CB0H2us 所以T0的初值为:TH0=3CH,TL0=B0H。

③ 当T0定时到向CPU申请中断,所以T0应开中断,中断允许寄存器IE设置如下:

④ 程序如下: ORG 0000H

LJMP START ORG 000BH LJMP BKT0 ORG 0100H

;T0中断入口

IE =EA1--ESET1EX1ET0EX000010= 82H 4

搜索更多关于: 单片机课后部分答案 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

1.12写出下列各十进制数在八位微型计算机中的原码、反码和补码形式。 ① X=+38 ④ X=-115 ② X=+76 ⑤ X=-42 ③ X=-54 解:① [X]原=[X]反=[X]补=00100110 B; ② [X]原=[X]反=[X]补=01001100 B ③ [X]原=10110110B,[X]反=11001001B,[X]补=11001010B ④ [X]原=11110011B,[X]反=10001100B,[X]补=10001101B ⑤ [X]原=10101010B,[X]反=11010101B,[X]补=11010110B 1.13已知原码如下,写出其反码和补码。 ① [X]原=01011001B ③ [X]原=001011

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com