单片机原理及应用(姜志海第3版)习题参考答案 下载本文

第7章 MCS?51系列单片机串行总线扩展技术

1.SPI总线一般使用几条线?分别是什么?

SPI使用4条线:串行时钟SCK,主机输入/从机输出数据线MISO(简称SO),主机输出/从机输入数据线MOSI(简称SI)和低电平有效的从机选择线CS。

2.I2C总线一般使用几条线?分别是什么?

I2C总线采用两线制,由数据线SDA和时钟线SCL构成。 3.说明IC总线主机、从机数据传输过程。

IC总线采用两线制,由数据线SDA和时钟线SCL构成。IC总线为同步传输总线,数据线上的信号完全与时钟同步。数据传送采用主从方式,即主器件(主控器)寻址从器件(被控器),启动总线产生时钟,传送数据及结束数据的传送。SDA/SCL总线上挂接的单片机(主器件)或外围器件(从器件),其接口电路都应具有IC总线接口,所有器件都通过总线寻址,而且所有SDA/SCL的同名端相连

4.SPI总线与IC总线在扩展多个外部器件时有什么不同?

SPI总线有主机、从机的概念。图7-1所示为SPI外围扩展结构图。该系统有一台主机,从机通常是外围接口器件,如EPROM、A/D、日历时钟及显示驱动等。

SCK SI SO SCK SI SO SCK SI SO CS2

2

2

2

2

2

SCK SI SO CS单片机外围器件1# 外围器件1# … 外围器件1# CS 单片机与外围器件在SCK、SO和SI上都是同名端相连的。外围扩展多个器件时,SPI无法通过数据线译码选择,故SPI的外围器件都有片选端口。在扩展单个SPI器件时,外设的CS端可以接地,或通过I/O接口控制;在扩展多个SPI外围器件时,单片机应分别通过I/O接口来分时选通外围器件。

IC总线采用两线制,由数据线SDA和时钟线SCL成。IC总线为同步传输总线,数据线上的信号完全钟同步。数据传送采用主从方式,即主器件(主控器)

单SAD 片机SCL SAD SCL 存储器 SAD SCL 键盘/显示接口 22

从器件(被控器),启动总线产生时钟,传送数据及数据的传送。SDA/SCL总线上挂接的单片机(主器件)围器件(从器件),其接口电路都应具有IC总线接

2

所有器件都通过总线寻址,而且所有SDA/SCL的同名端相连,如图7-2所示。

第 25 页 共 29 页 m

I/O I/O I/O 图7-1 SPI外围串行扩展结构图

存储器 SAD SCL 键盘/显示接口 SAD SCL 与时寻址结束或外 口,

图7-2 I2C总线应用系统的组成

5.单总线的操作原理是什么?

单总线系统中配置的各种测控器件,是由Dallas公司提供的专用芯片实现的。每个芯片均有64位ROM,厂家对每一个芯片用激光烧写编码,其中存有16位十进制编码序列号,是器件的地址编号,确保挂在总线上后,可以唯一地确定。除了器件地址编码外,芯片内还含有收发控制和电源存储电路。这些芯片的耗电量都很小,从总线上馈送电量(空闲时为几微瓦,工作时为几毫瓦)到大电容中就可以正常工作,故一般不另附加电源。

6.具有SPI总线的器件,除具有SDO、SDI和SCK外,还有其他控制线吗? 还有/CS控制端。

7.SPI总线上挂有多个SPI器件,如何选中某一个SPI从器件?

SPI串行扩展系统中作为主器件的单片机在启动一次传送时,便产生8个时钟传送给接口芯片,作为同步时钟,控制数据的输入与输出。数据的传送格式是高位(MSB)在前,低位(LSB)在后。数据线上输出数据的变化以及输入数据时的采样,都取决于SCK。但对于不同的外围芯片,有的可能是SCK上升沿起作用,有的可能是SCK的下降沿起作用。

8.IC总线上挂有多个IC器件,如何选中某一个IC器件?

在一般的并行接口扩展系统中,器件地址都是由地址线的连接形式决定的,而在IC总线系统中,地址是由器件类型及其地址引脚电平决定的,对器件的寻址采用软件的方法。

IC总线上所有外围器件都有规范的器件地址。器件地址由7位组成,它与一个方向位共同构成IC总线器件的寻址字节

22

2

2

2

2

第 26 页 共 29 页 m

第8章 单片机应用系统设计

1.单片机应用系统一般由哪几部分组成?

从系统的角度来看,单片机应用系统是由硬件系统和软件系统两部分组成的。硬件系统是指单片机扩展的存储器、外设及其接口电路等,软件系统包括监控程序和各种应用程序。

2.单片机应用系统设计主要有哪些内容?

单片机应用系统的设计包含硬件设计与软件设计两部分,具体涉及的内容主要有单片机系统、通道与接口、系统的抗干扰、应用软件的设计等。

3.单片机应用系统的一般设计方法是什么? (1)确定系统的功能与性能。 (2)确定系统基本结构。

(3)单片机应用系统硬件与软件设计。 (4)资源分配

4.在单片机应用系统设计中,软、硬件分工的原则是什么?对系统结构有何影响? (1)硬件系统设计原则

一个单片机应用系统的硬件电路设计包括如下两部分内容:

① 单片机系统的扩展,即单片机内部的功能单元(如程序存储器、数据存储器、I/O、定时器/计数器、中断系统等)的容量不能满足应用系统的要求时,必须在片外进行扩展,选择适当的芯片,设计相应的扩展电路。

② 系统配置,即按照系统功能要求配置外设,如键盘、显示器、打印机、A/D转换器、D/A转换器等,要设计合适的接口电路。

系统扩展的配置设计应遵循下列原则:

① 尽可能选择典型通用的电路,并符合单片机的常规用法,为硬件系统的标准化、模块化奠定良好的基础。

② 系统的扩展与外设配置的水平应充分满足应用系统当前的功能要求,并留有适当余地,便于以后进行功能的扩充。

③ 硬件结构应结合应用软件方案一并考虑,硬件结构与软件方案会产生相互影响。

④ 整个系统中相关的器件要尽可能做到性能匹配。例如,选用晶体振荡频率较高时,存储器的存取时间就较短,应选择存取速度较快的芯片;选择COMS芯片单片机构成低功耗系统时,系统中的所有芯片都应选择低功耗产品。如果系统中相关的器件性能差异很大,系统综合性能就会降低,甚至不能正常工作。

⑤ 可靠性及抗干扰设计是硬件设计中不可忽略的一部分,它包括芯片、器件选择、去耦合滤波、印制电路板布线、通道隔离等。如果设计中只注重功能实现,而忽略可靠性及抗干扰设计,到头来只能是事半功倍,甚至会造成系统崩溃,前功尽弃。

⑥ 单片机外接电路较多时,必须考虑其总线驱动能力。驱动能力不足时,系统工作不可靠。解

第 27 页 共 29 页 m

决的办法是增加驱动能力,增加总线驱动器或者减少芯片功耗,降低总线负载。 (2)软件设计的原则

应用系统中的应用软件是根据系统功能设计的,应可靠地实现系统的各种功能。应用系统种类繁多,应用软件各不相同,但优秀的应用软件应具有以下特点:

① 软件结构清晰、简捷、流程合理。

② 各功能程序事先模块化、系统化。这样既便于调试、连接,又便于移植、修改和维护。 ③ 程序存储区、数据存储区规划合理,既能节约存储容量,又能给程序设计与操作带来方便。 ④ 运行状态实现标志化管理。各个功能程序运行状态、运行结果及运行需求都设置状态标志以便查询,程序的转移、运行、控制都可通过状态标志来控制。

⑤ 经过调试修改后的程序应进行规范化,除去修改“痕迹”。规范化的程序便于交流、借鉴,也为今后的软件模块化、标准化打下基础。

⑥ 实现全面软件抗干扰设计。软件抗干扰是计算机应用系统提高可靠性的有力措施。 ⑦ 为提高运行的可靠性,在应用软件中设置自诊断程序,在系统运行前先运行自诊断程序,以检查系统各特征参数是否正常。

整个单片机应用系统是一个整体。在进行应用系统总体设计时,软件设计和硬件设计应统一考虑,相结合进行。当系统的硬件电路设计定型后,软件的任务也就明确了。

5.什么是联调?主要解决哪些问题?

系统联调是指让用户系统的软件在其硬件上运行,进行软、硬件联合调试,从中发现硬件故障错误或软、硬件设计错误。这是对用户系统检验的重要一关。

系统联调主要解决以下问题:

① 系统的软、硬件能否按预定的要求配合工作。 ② 系统运行中是否有潜在的设计时难以预料的错误。

③ 系统的动态性能指标(包括精度、响应速度等)是否满足设计要求。

系统联调时,首先采用单步、断点、连续运行方式调试与硬件相关的各程序段,既可检验这些程序段的正确性,又可在各功能独立的情况下,检验软、硬件的配合情况。然后将软、硬件按系统工作要求进行综合运行,以解决在系统总体运行情况下软、硬件的协调问题,并提高系统的动态性能。在具体操作中,用户系统在开发系统环境下,先借用仿真器的单片机、存储器等资源进行工作。若发现问题,按上述软、硬件调试方法准确定位错误,分析错误原因,找出解决办法。用户系统调试完后,将用户程序固化到用户系统的程序存储器中,再借用仿真器单片机,使用户系统运行。若无问题,则用户系统插上单片机即可正确工作。

6.为什么要进行现场调试?

一般情况下,通过系统联调后,用户系统就可以按照设计目标正常工作了。但在某些情况下,由于用户系统运行的环境较为复杂(如环境干扰较为严重、工作现场有腐蚀性气体等),在实际现场工作之前,环境对系统的影响无法预料,只能通过现场运行调试来发现问题,找出相应的解决方法;或者虽然已经在系统设计时考虑到了抗干扰的对策,但是否行之有效,还必须通过用户系统在实际

第 28 页 共 29 页 m

现场的运行来加以验证。另外,有些用户系统的调试是在模拟设备代替实际监测、控制对象的情况下进行的,这就更有必要进行现场调试,以检验用户系统在实际工作环境中工作的正确性。

总之,现场调试对用户系统的调试来说是最后必需的一个过程,用户系统只有经过现场调试才能保证可靠地工作。现场调试仍需利用开发系统来完成,其调试方法与前述类似。

7.试设计一个采用单片机控制的自动交通信号灯系统。设在一个十字路口的两个路口均有一组交通信号灯(红、黄、绿),控制要求:主干线绿灯亮的时间为30秒,然后转为黄灯亮,2秒后即转为红灯亮。支干线在主干线绿灯和黄灯亮时,其为红灯亮,直到主干线黄灯熄灭时才转为绿灯亮。其绿灯亮的持续时间为20秒,然后黄灯亮2秒后即转为红灯亮,如此反复控制。试绘出系统逻辑图、程序流程图,并编制程序。

第 29 页 共 29 页 m