48
第5第 第第第第第第第第—第第第第

第 5 章 智能汽车设计基础 — 微控制器

Embed Size (px)

DESCRIPTION

第 5 章 智能汽车设计基础 — 微控制器. 1. 2. 4. 3. 5.1 单片机简介. 5.2 单片机系统. 5.3 Freescale HCS12 单片机. 思考题. 第 5 章 智能汽车设计基础 — 微控制器. 5.1 单片机简介. - PowerPoint PPT Presentation

Citation preview

Page 1: 第 5 章  智能汽车设计基础 — 微控制器

第 5 章 智能汽车设计基础—微控制器

Page 2: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.1 单片机简介1

5.2 单片机系统2

5.3 Freescale HCS12单片机 3

第 5 章 智能汽车设计基础—微控制器

思考题4

Page 3: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.1 单片机简介 随着大规模集成电路的出现及发展,将计算机的 CPU、 RAM、

ROM、定时 / 数器和多种 I/O接口集成在一片芯片上,形成芯片级的计算机,因此单片机早期的含义称为单片微型计算机( Single Chip Microcomputer),直译为单片机,又称为 微 控 制 器 ( Microcontroller ) 或 嵌 入 式 控 制 器( Embedded Controller )。近年来,单片机结合专用集成 电 路 ( Application Specific Integrated Circuit, ASIC ) 和 精 简 指 令 集 计 算 机 ( Reduced Instruction Set Computer, RISC)技术,发展为嵌入式处理器( Embedded Processor),适用于数据与数值分析、信号处理、智能机器人及图像处理等高技术领域。

Page 4: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2 单片机系统

1

5.2.1 单片机最小系统

2

5.5.2 单片机系统的扩展

Page 5: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.1 单片机最小系统 所谓单片机最小系统,是指在单片机外部增加尽可能少的元件电路,组成一个让单片机可独立工作的系统。以 MCS-51系列单片机为例,图 5.1和图 5.2所示的分别是使用单片机内部程序存储器和单片外部程序存储器组成的单片机最小系统。在图 5.2中, 8031的程序存储器是通过使用外部程序存储器 EPROM实现的。 74LS373是一种 8D透明锁存器,其作用是存储单片机 P0口输出的对 EPROM取指令用的低 8 位地址。这两个最小系统的复位电路均由 10 F 的电容器与正电源相连,构成上电复位电路。时钟电路均采用内部振荡方式,外接一个频率为 12 MHz的晶体振荡器。图 5.2中,从接地,我们可以得知程序存储器在单片机外部,因此,对外部程序存储器来说,单片机的取指令操作有效的。

Page 6: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.1 单片机最小系统

图 5.1 完全使用单片机内部程序存储器的单片机最小系统

Page 7: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.1 单片机最小系统

图 5.2 使用单片机外部程序存储器的单片机最小系统

Page 8: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展 在单片机应用系统硬件设计中,虽然单片机的最小应用系统拥有较高的性价比,但在功能很复杂的系统中,最小系统往往不能满足要求,往往需要连接各种设备,形成各种接口通道。因此,单片机系统的扩展成了单片机应用系统硬件设计中最常遇到的也是不可避免的问题。 单片机系统的扩展包括数据存储器( RAM)扩展、程序存储器( ROM/EPROM)扩展、输入 / 输出( I/O )扩展、定时 / 计数器扩展、中断系统扩展及其他特殊功能扩展。

Page 9: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展 1 .程序存储器扩展 单片机系统扩展中,最常见的是程序存储器扩展,在扩展时需注意以下几方面的问题: ( 1 )可分配地址空间。在 MCS-51系列单片机中,程序存储器可占用 0000 H~ FFFF H间 64 K的存储空间。虽然地址可与数据存储器或 I/O口重叠,但它们实际上是两个相互对立的存储空间。硬件上程序存储器通过使用 PSEN而不是用 RD进行控制读操作;软件上用 MOVC而非 MOVX执行读操作命令。 ( 2 )地址译码电路。随着大规模集成电路的发展,程序存储器的容量越来越大,仅需使用一两片芯片就可满足系统对容量的要求,因此地址译码通常采用直接或用反相器产生片选信号的方式。但是,在扩充多片程序存储器时,地址译码一般采用译码器方式,以获得地址范围连续而又不相重叠的片选信号。这是因为程序机器码在存储空间中需要连续放置,因此各存储器占用的程序存储器空间必须相互连续。另外,分配给程序存储器的地址范围还必须包含单片机的启动程序。

Page 10: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展 ( 3 )程序存储器扩展方法。其他接口扩展芯片与程序存储器共用地址总线、数据总线和部分控制总线。其中控制总线有 ALE低 8 位地址信号锁存控制、 PSEN外部程序存储器读控制。 EPROM程序存储器扩展电路如图 5.3所示。图 5.3(a)中系统只扩展一片 EPROM,可将 EPROM的片选端直接接地;图 5.3(b)中的系统扩展了两片 EPROM,若 P2.i等于 0 ,就选择了 EPROM(1),若 P2.i 等于 1 ,就选择了 EPROM(2)。 ( 4 )常用程序存储器芯片。程序存储器芯片最常见的是Intel公司的典型系统芯片 2716( 2K × 8) , 2732( 4K × 8) , 2764( 8K × 8) , 27128( 16K × 8) , 27256( 32K × 8)和27512( 64K × 8)等。近年来大容量 EPROM芯片不断涌现, 2764以上的大容量芯片在单片机应用系统程序存储器扩展中得到越来越广泛的使用。

Page 11: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展

图 5.3 EPROM程序存储器扩展电路 图 5.3 EPROM程序存储器扩展电路

Page 12: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展 2 .数据存储器扩展 在单片机系统扩展中,最常见的数据存储器扩展是静态随机存取存储器 SRAM的扩展,在扩展时应注意以下几个方面的问题: ( 1 )存储器地址空间。在 MCS-51系列单片机中,任何扩展的数据存储器、 I/O口及外围设备的地址都不能相互重叠,但可以和程序存储器地址重叠。因为数据存储器与 I/O口是统一编址的,共用

0000 H~ FFFF H间的 64K地址空间。 ( 2 )数据存储器读写控制。数据存储器与 I/O口的读 / 写控制可以通过 RD和 WR指令,地址总线和数据总线则与程序存储器共用。 ( 3 )数据存储器扩展方法。图 5.4所示的是数据存储器扩展电路。除了在读写控制上使用不同信号和不同指令外,数据存储器扩展方法与程序存储器扩展方法是一样的。 ( 4 )常用数据存储器芯片。目前常用数据存储器芯片有 SRAM

6116( 2K×8) , 6264( 8K×8)和 62256( 32K×8)等。另外,电可擦除只读存储器、 E2PROM 2816( 2K×8)和E2PROM2864( 8K×8)等也可作为数据存储器使用。

Page 13: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展

图 5.4 RAM数据存储器扩展电路

Page 14: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展 3 .输入 / 输出( I/O)口扩展大部分单片机应用系统设计中都不可避免地要进行 I/O口扩展。因为单片机本身能提供的有限的 I/O口中的许多都有复用功能,当这些口被复用功能占用后,留给用户系统的 I/O口就不多了。在进行 I/O口扩展时,应注意以下几个方面的问题:( 1 ) I/O口寻址空间。在 MCS-51系列单片机应用系统中,扩展的 I/O口与数据存储器占用统一编址的 64K存储空间,而与外部程序存储器空间无关。指令上扩展I/O口具有与数据存储器相同的寻址方式,且地址总线、数据总线与控制总线的连线也与数据存储器相同。

( 2 )单片机提供的 I/O口。当单片机本身的 I/O口在复用功能未被使用时,这些口可当作普通的 I/O口使用。

Page 15: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展 图 5.5所示的是用 TTL芯片扩展的简单 I/O口电路。图

5.5(a) 中通过锁存器 74LS273扩展 8 位并行输出口。在通过数据总线扩展输出口时,锁存器被视为一个外部 RAM单元,输出控制信号为 WR,使用 MOVX @DPTR, A指令。当单片机向锁存器输出数据时,地址信号 P2.7和写信号 WR同时有效,使或门输出低电平接入锁存器 CLK端。当 WR由低变高时,锁存器 CLK端的信号上升沿将数据总线上的数据锁存到输出端,完成输出操作。图 5.5(b)所示为用三态门 74LS245通过数据总线扩展的 8 位并行输入接口。三态门由 P2.7和 RD进行或控制,使用 MOVX @DPTR, A指令。当单片机产生地址信号和 RD信号,经或门产生低电平信号时,控制三态门打开,输入信号便可经数据总线送入单片机内部。

Page 16: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展

图 5.5 TTL芯片扩展的简单 I/O接口电路

Page 17: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展 此外,还可以利用单片机的串行口和移位寄存器也可以实现 I/O

口的扩展。这种 I/O是通过串行口把串行数据转换为并行数据,或是把并行数据转换为串行数据,此种扩展方法速度较慢,但所扩展的I/O口不占用片外 I/O口地址。图 5.6(a)所示是利用移位寄存器74LS165(并行输入串行输出)扩展的 8 位并行输入接口电路。单片机与 74LS165的串行输出端相连的 RXD作为串行输入端,与74LS165的时钟输入端相连的 TXD端作为移位脉冲输出端,控制74LS165数据输出节拍。移位和置数过程通过单片机的一根 I/O线(如 P1.0)来控制。图 5.6(b)所示是利用串行输入并行输出移位寄存器 74LS164扩展的 8 位并行输出接口电路。单片机与 74LS164的数据输入端相连的 RXD和 TXD分别作为串行数据输出端和移位脉冲输出端,普通 I/O口 P1.0用于清除 74LS164的输出数据。

Page 18: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展 除了以上 I/O口的扩展方法外, I/O接口的扩展还可以通过专用接口芯片,例如可编程的并行 I/O接口芯片8255,图 5.7所示的就是通过 8255进行 I/O扩展的电路。

8255由并行 I/O端口、数据总线驱动器、读 / 写控制逻辑和 A 组 , B组控制块四个逻辑结构组成。 8255通过读、写控制逻辑实现全部的工作状态。在单片机应用系统中,8255的读写操作是通过单片机的地址信号线 A0和 A1、数据信号线 D0~ D7,及控制信号线 WR, RD, CS实现的。

在使用可编程接口芯片时,除要有正确的硬件,软件中应增加相应的初始化操作。这是因为,用可编程接口芯片扩展 I/O口可以通过软件灵活方便地选择接口的工作方式。初始化工作主要是根据应用对芯片的工作方式进行相应的设定,使各口线工作在输入或输出状态。

Page 19: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展

图 5.6 利用串行口扩展 I/O接口电路

Page 20: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展

图 5.7 可编程芯片扩展 I/O接口电路

Page 21: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展 在使用可编程接口芯片时,除要有正确的硬件,软件中应增加相应的初始化操作。这是因为,用可编程接口芯片扩展 I/O口可以通过软件灵活方便地选择接口的工作方式。初始化工作主要是根据应用对芯片的工作方式进行相应的设定,使各口线工作在输入或输出状态。 ( 3 )常用 I/O口扩展芯片 常用的 I/O口扩展的 TTL芯片有三态门( 74LS241, 74LS244, 74LS245)、锁存器( 74LS273, 74LS273, 74LS374)、串行输入 / 并行输出移位寄存器( 74LS164, 74LS595)、并行输入 / 串行输出寄存器( 74LS165, 74LS166)和可编程 I/O接口芯片( 8255, 8155)等。

Page 22: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展 4 .其他外围芯片扩展在单片机应用系统中,除了程序存储器、数据存储器及I/O口这些系统主要部件外,还有一些满足系统应用的十分有用的外围芯片,如中断系统、定时 / 计数器、键盘、显示控制器及串行通信控制器等。这些外围芯片内部大都设有与微处理器芯片的接口电路,接口电路主要由控制命令逻辑电路、状态存储器与设置电路、数据存储与缓冲电路三部分组成,用来实现单片机信号与外围芯片内部信号的转换工作。

由于大部分外围芯片能与微处理器芯片直接相连,因此在单片机应用系统中扩展,接口电路比较简单。图 5.8所示为外围芯片与微处理器芯片连接的典型电路,中央处理器 CPU与外围芯片连接的信号主要是总线信号,包括地址信号、数据信号、读写控制信号、定时信号、中断信号和复位信号等。

Page 23: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展

图 5.8 一般外围芯片扩展电路

Page 24: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.2.2 单片机系统的扩展此外,有些外围芯片(接口芯片)专门用来控制微处理器芯片与外围设备的连接,它们与外围设备连接的信号主要是输入 / 输出控制信号和数据信号。不同的控制方式下,接口信号的复杂程度也不同。由于中断接口与 DMA接口的控制信号更为复杂,因此通常要由接口芯片提供专用控制信号才能完成数据传输。在单片机应用系统中用到的外围芯片较常见的有:可编程控制器 8259,可编程直接存储器存取控制器( DMA) 8237, 8257;可编程 CRT控制器 8275, 8276, MC6845, MC6847,可编程键盘、显示接口8279;可编程通信接口 8250, 8251;可编程定时器8253, 8254;点阵式打印机控制器 8295; A/D和D/A转换芯片等。

Page 25: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3 Freescale HCS12单片机

1

5.3.1 Freescale HCS12 单 片机 系列简介

2

5.3.2 Freescale HCS12 单 片机 最小系统

Page 26: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.1 Freescale HCS12单片机系列简介 Freescale HCS12微控制器系列产品是飞思卡尔公司于 2002年在 68HC12微控制器的基础上升级开发出来的。它是基于 16位 CPU的控制器,其前身是 8 位的 68HC11微控制器。

HCS12系列产品的工作电压为 5 V,时钟频率最高为 25 MHz。该系列产品微控制器的结构及特点如下:

( 1 ) HCS12的核心① 16位 HCS12CPU: 20位 ALU,指令队列,增强型索引寻址;② 多种外部总线接口( MEBI);③ 模块映射控制机制( MMC);④ 中断控制( INT);

Page 27: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.1 Freescale HCS12单片机系列简介⑤ 断点( BKP);⑥ 背景调试模块( BDM)。( 2 ) CRG时钟和复位发生器① 锁相环( PLL);② 看门狗( COP WATCHDOG);③ 实时中断( RTI);④ 时钟监视器( CM)。( 3 )带中断功能的 8 位和 4 位端口可编程的上升沿或下降沿触发。

Page 28: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.1 Freescale HCS12单片机系列简介( 4 )存储器 HCS12存储器有内部寄存器、 RAM、 EEPROM和 FLASH/ROM。每个存储单元对应一个地址,共有 64K个地址,用4 位十六进制数表示( 0000H~FFFFH)。存储器中每个存储单元可存放一个 8 位二进制信息,这就是存储器存储单元内的内容。不同的存储器占用不同的存储空间。

( 5 ) 2 个 8 通道 A/D转换器 HCS12内置了 2 个 10位 /8位的 A/D模块: ATD0和ATD1。 HCS12的 ATD是逐次逼近型 A/D转换器,它内置多路器,精度为 2LSB,无需外部采样保持电路。 HCS12ATD在寄存器区内共有 28个寄存器,其中 3 个仅用于 HCS12生产线的内部调试。 HCS12ATD的最高转换频率约为 2 MHz, ATD模块的特点如下:

Page 29: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.1 Freescale HCS12单片机系列简介 8 位 /10位精度可选择; 8 位数字量转换时间仅需 6 μs, 10位数字量转换时间仅需 7 μs; 具有采样缓冲器和放大器; 可编程采样时间; 数据可选择左 / 右对齐方式和无符号 / 有符号数据方式; 转换结束标志和转换结束中断; 外部触发控制; 模拟输入的 8 个通道为复用方式,采用多通道扫描方式; 模拟 / 数字输入引脚复用; 可选择单次转换模式或连续转换模式。

Page 30: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.1 Freescale HCS12单片机系列简介( 6 ) 3 个 1 Mb/s的 CAN总线模块,兼容 CAN2.0 A/B ① 5 个接收缓冲器, 3 个发送缓冲器;② 4 个独立的中断通道(发送中断、接收中断、错误中断和唤醒中断);③ 低通滤波器唤醒功能。( 7 )增强型捕捉定时器( ECT) ECT功能相当于高速的 I/O口,由一个 16位自由运行计数器、8 个 16位的输入捕捉 / 输出比较通道、一个 16位脉冲累加器以及一个 16位模数递减计数器( MDC)组成。 HCS12 ECT有以下特点: 4 个具有 16位缓冲寄存器的输入捕捉通道; 4 个 8 位脉冲累加器可以通过级联形成 2 个 16位的脉冲累加器;

Page 31: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.1 Freescale HCS12单片机系列简介 1 个具有 4 位预分频的 16位递减模 / 数计数器; 4 个可选的延迟计数器用来增强输入抗干扰能力。( 8 ) 8 个 PWM通道① 每个通道的周期和占空比由程序决定;② 8 个 8 通道或 16个 4 通道;③ 各通道独立控制;④ 脉冲在周期内中心对称或左对齐输出;⑤ 可编程时钟选择逻辑;⑥ 紧急事件关断输入;⑦ 可作为中断输入。

Page 32: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.1 Freescale HCS12单片机系列简介( 9 )串行口① 2 个异步串行通信接口( SCI) SCI是一种采用标准的不归零数据 NRZ格式的异步串行通信接口,它内置独立的波特率产生电路和 SCI收发器,可以选择 8 或 9 个数据位(其中 9 位数据格式的第 9 位可由 SCI控制寄存器的 M 位指定位奇或偶校验位)。发送和接收的奇偶校验位可以选择是否由硬件生成。 SCI的特点是:双线串行接口,标准 NRZ格式,硬件自动生成奇偶标志,全双工操作,独立波特率产生逻辑,独立的发送器和接收器允许控制位,通信中采用中断驱动机制,具有回送方式,可以监视发送器的输出,实现通信过程的自诊断。

Page 33: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.1 Freescale HCS12单片机系列简介② 2 个同步串行设备接口( SPI) SPI系统的时钟源是总线时钟,可以通过设置 SPI波特率寄存器来选择分频系数。 HCS12 SPI的核心是一个 8位移位寄存器,数据传输时,在时钟信号 SCK的控制下,数据寄存器的数据从 8 位移位寄存器移出或移入。 SPI数据寄存器有 SPI控制寄存器 1 ( SPICR1)和 SPI控制器 2 ( SPICR2)设置。 SPI状态寄存器可以通过设置改变 SPI的工作状态。当 SPI系统使能时, PORTS端口的 PS7~ PS4四个引脚将分别为 SPI的 MISO,

MOSI, SCK, 引脚。 SPI有三种工作模式:主机模式、从机模式和双工模式。

Page 34: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.1 Freescale HCS12单片机系列简介( 10)总线① 兼容总线标准;② 多组总线模块。( 11) LQFP-112和 QFP-80封装选择① 5 V输入和带驱动能力 I/O;② 5 V A/D转换器输入;③ 50 MHz系统频率;④ 单线背景调试模块;⑤ 片上硬件断点。

Page 35: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.2 MC9S12DG128最小系统设计 MC9S12DG128芯片是全国智能汽车竞赛组委会指定各参赛队使用的 Freescale HCS12系列中的一款芯片,本节介绍以

MC9S12DG128芯片为核心的最小系统的组成,如图 5.9所示。该最小系统主要包括以下几个部分:时钟电路、串口电路、 BDM接口、供电电路、复位电路和调试用 LED灯。各个部分的功能分别如下: ( 1 )时钟电路为单片机提供一个外接的 16 Hz的石英晶振。 ( 2 )串口的 RS-232驱动电路可实现 TTL电平与 RS-232之间的转换。 ( 3 ) BDM接口允许用户通过该接口向单片机下载和调试程序。 ( 4 )供电电路主要是给单片机提供 +5 V的电源。 ( 5 )复位电路是通过一个复位芯片给单片机一个复位信号。 ( 6 )调试用 LED灯和单片机的 PORTB口相连,供程序调试使用。

Page 36: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.2 MC9S12DG128最小系统设计 1 .时钟电路时钟电路是单片机系统可靠运行的关键之一。如果时钟电路在设计上存在问题,会造成时钟电路不稳定,且时钟电路的高频噪声会引起系统的兼容性下降,会成为系统永久的隐患。这种不稳定因素带来的不可靠性会给整个系统的调试工作带来极大的困难,设计人员一般很难发现会是由于时钟电路设计不合理或辅助元器件参数有问题造成的。因此,时钟电路的设计需要引起初学者的重视,在辅助元器件参数的选择、印刷电路板的布线等方面需要给予很大程度的重视。对于初学者,在设计时钟电路时,可以首先使用有源振荡器作为外部时钟,并且振荡器的频率不必太高,积累足够的经验后再使用频率更高的晶振。若使用无源石英晶振时,也可以不使用内部锁相环倍频电路。

Page 37: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.2 MC9S12DG128最小系统设计

Page 38: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.2 MC9S12DG128最小系统设计 标准的 MC9S12DG128单片机的时钟电路,通过把一个 16 MHz

的外部晶振接到单片机的外部晶振输入接口 EXTAL和 XTAL上,然后利用 MC9S12DG128内部的压控振荡器( VCO)和锁相环( PLL)把这个频率提高到 25 MHz,使之作为单片机工作的内部总线时钟。值得注意的是, MC9S12DG128单片机的外时钟电路既可以使用串联振荡电路,也可以使用并联振荡电路。使用串联振荡电路时, XCLKS引脚即 PE7引脚要拉低,而使用并联振荡电路或外部有源振荡器时,该引脚要拉高。因此,在最小系统的设计中,通常会设计一处跳线,方便选择外部有源振荡器还是串联振荡电路。图 5.10所示是最小系统外接无源晶振的接口电路。若直接使用有源振荡器,则可以接一个 16 MHz的外部有源晶体振荡器,经单片机内部分频后得到一个 8 MHz的总线时钟。由于 EXTAL的输入电压为 2.5 V,故有源晶体振荡器输出的时钟信号必须经分压后才可以和 EXTAL连接。

Page 39: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.2 MC9S12DG128最小系统设计

图 5.10 最小系统外接无源晶振的接口电路

Page 40: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.2 MC9S12DG128最小系统设计 对于锁相环模块,需要加上一个如图 5.11所示的滤波器电路。其中, VDDPLL引脚由单片机内部提供 2.5 V电压, XFC端是压控振荡器( VCO)的电压控制端,通过给锁相环电路编程,以数字方式锁定 VCO的控制端电。而 Cs, Cp和 Rs的取值与晶振、 REFDV寄存器和 SYNR寄存器有关,需要通过计算得出,若其参数选择不当,会使得 VCO的控制端电压抖动,导致系统工作不正常。

图 5.11 锁相环滤波电路

Page 41: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.2 MC9S12DG128最小系统设计 时钟电路的振荡器一方面为单片机系统提供时钟,另一方面时钟电路又是一个很强的高频干扰源,因此,为避免对电路板上其他元件造成高频干扰,时钟电路部分的印刷电路板的设计要做得特别讲究。在设计印刷线路板的布线时,为使系统的电磁兼容性得到保证,单片机系统时钟电路和单片机电源电路印刷线路板布线必须满足以下的原则:( 1 )时钟产生器尽量靠近用到该时钟的器件。( 2 )尽量让时钟信号回路周围电场趋近于零。要用地线将时钟区圈起来,时钟线要尽量短。( 3 )石英晶振的外壳要接地。( 4 )在石英晶振的下面和对噪声特别敏感的器件下面不要布线。( 5 )锁相环的滤波电路要尽量靠近 MCU。

Page 42: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.2 MC9S12DG128最小系统设计( 6 )单片机的每个电源端和接地端都要接一个去耦电容,去耦电容要尽量靠近 MCU。对于给单片机不同电源端供电的 VDD线也要遵循上述规则,如模拟电路供电端 VDDA、给单片机 I/O模块供电端 VDDX、给 MCU内部电压调整器供电端 VDDR等。片内的电压调整器向片内各模块输出多种不同规格的电压,如 VDD1, VDD2,需要外接滤波电容时,一定不要省略。特别是时钟、锁相环电路的电源端 VDDPLL,是由内部电压调整器给出的 2.5 V电压,因此一定要接滤波器件。A/D变换用的参考电压端的供电也要经过特殊的处理才能保证 A/D变换的精度。

Page 43: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.2 MC9S12DG128最小系统设计 2 .串行口的 RS-232驱动电路通过串口驱动电路中的 RS-232电平转换芯片,单片机可以利用异步通信协议与 PC机通信。 RS-232电平转换芯片可以实现 TTL电平与 RS-232电平之间的转换,然后再通过 9 芯串行口与 PC进行串口通信。 3 .电源电路 HCS12单片机的芯片内部使用 3 V电压,而 I/O端口和外部供电电压为 5 V。通常需要采用滤波电路改善系统的电磁兼容性,降低系统对电源的高频干扰。 4 .复位电路复位电路的作用是产生一个低电压信号给 MC9S12DG128的RESET端,使系统上电启动。在最小系统中,通常使用低电压复位芯片 MC34064,使上电复位更加可靠。而在设计系统目标板时,也可以只用一只 0.1 F 的电容替代电路中的MC34064。同时,在系统目标板上通常添加一个手动复位按钮,以方便调试时使用。

Page 44: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.2 MC9S12DG128最小系统设计 5 . BDM接口 BDM接口是连接 BDM调试工具的,其中 BDMIN接口是接BDM调试工具,向 MC9S12单片机下载程序用的。若下载相应的 BDM调试工具软件到目标板后,这块目标板就具有了 BDM调试器功能。 BDMOUT接口是当开发上的应用程序为 BDM调试器程序时,此接口可以用做 BDM调试器的输出口。如果不打算将这块目标板用做 BDM调试器,可以不引出 BDMOUT接口,从而有更多的 I/O口可供用户的应用程序使用。

6 .单片机并行口及驱动能力并行口模块是单片机中最简单的 I/O模块,其他功能模块如 SCI, SPI, PWM, CAN等在不作为相应功能模块使用时,也可以作为并行口模块使用。如果在单片机的并行口上连接一些发光二极管( LED),可用于调试时显示系统应用程序的某些状态。

Page 45: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.2 MC9S12DG128最小系统设计 S12单片机的引脚共有 92个,都可以当做 I/O引脚使用。特别是 A 口、 B 口、 K 口等常用于 CPU总线扩展时的总线接口,它们不用做总线扩展时只能作为并行口使用。并行 I/O口上有一个方向寄存器,它控制并行 I/O口是用于输入还是输出。若方向寄存器相应位清零,表示该位用于输入;往方向寄存器相应位写 1 ,表示该位用于输出。为安全考虑,单片机的 I/O口在复位时,方向寄存器是清零的,即复位后所有 I/O口都默认为输入口。并行I/O口在初始化时,要往相应的方向寄存器位写 1 ,才能将该口定义为输出。

S12单片机的 I/O接口有较强的电流吸收能力,各 I/O接口可以允许 10 mA吸收电流,此时输出端仍能保证不高于 0.8 V。

Page 46: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.2 MC9S12DG128最小系统设计对于定义为输出口的单片机引脚,可输出逻辑 1 或逻辑 0 ,在 5 V供电的情况下,逻辑 1 不低于 4.2 V,逻辑 0 不高于 0.8 V。如果不作特别说明,一般单片机的 I/O的驱动能力相当于一个 TTL晶体管的驱动能力。 TTL晶体管导通时,输出为 0 ,相当于输出端接地,允许流过晶体管的典型电流为 4 mA; TTL晶体管截止时,输出端通过片内的上拉电阻保持输出端高电平。当作为高电平输出时,通过上拉电阻可以给出的电流最大仅为 0.8 mA。因此,当单片机的引脚作输出用时,与高电平可能的输出电流相比,低电平有较强的吸收电流的能力,不能指望由单片机向外提供功率,也不能指望单片机输出的高电平可以直接点亮一个 LED,而要利用晶体管的导通,靠外部供电来驱动输出设备。这样,当单片机的引脚输出低电平时,晶体管导通,相当于开关与地接通, LED点亮;当单片机的引脚输出高电平,晶体管截止,相当于开路, LED熄灭。

Page 47: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

5.3.2 MC9S12DG128最小系统设计 7 .调试用 LED灯除电源上电指示灯外,在单片机的某一个 I/O接口上可装上一些调试用 LED灯,虽然这一部分不是单片机最小系统必需的,但对最小系统的调试很有用。例如,为调试方便,可将调试用 LED灯接在 PORTB口上,当某一 PORTB口位为低电平时,则相应的 LED会亮。即使 PORTB口上接了 LED,但B 口的 8 个引脚仍可以通过 64芯插座引出,以供用户使用。若与用户定义的 PORTB口功能不发生矛盾的话, LED可以保留;若有矛盾,可通过断开相应位的上拉电阻或 LED的方式屏蔽它们。

Page 48: 第 5 章  智能汽车设计基础 — 微控制器

武汉科技大学信息科学与工程学院

思考题1 .什么是单片机的最小系统?2 .单片机系统的扩展分为哪几种?为什么要进行扩展?3 .在单片机( I/O)口扩展中,需要注意哪些问题?4 . MC9SDG128最小系统包括哪几个部分?