• 沒有找到結果。

单片机原理及应用设计(第二版) - 万水书苑-出版资源网

N/A
N/A
Protected

Academic year: 2021

Share "单片机原理及应用设计(第二版) - 万水书苑-出版资源网"

Copied!
20
0
0

加載中.... (立即查看全文)

全文

(1)

本章学习目标

本章主要讲解单片机的基本概念、单片机的发展概况、单片机的特点及应用。 介绍单片机应用技术的预备知识,单片机的数制表示法,以便为读者在后续章节的 学习打下基础。最后对于市场上常用的单片机技术及 32 位微处理器做了个简单的介 绍,为初学者做一个学习的引导。通过本章学习,读者应该掌握以下内容: l 了解单片机及微型计算机的基本概念 l 了解单片机的特点及单片机的发展和应用 l 掌握二进制数、十进制数和十六进制数之间的换算关系 l 了解二进制数原码、反码和补码的表示方法 l 了解 BCD 码和 ASCII 码 l 了解市场上常用单片机的特点及选择方法 

1.1  概述

单片机是单片微型计算机的简称,是典型的嵌入式微控制器(Microcontroller Unit),它由 运算器、控制器、存储器、输入输出设备构成,相当于一个微型的计算机(最小系统),和计 算机相比,单片机缺少了外围设备等。单片机的体积小、质量轻、价格便宜,为学习、应用和 开发提供了便利条件。同时,学习使用单片机是了解计算机原理及结构的最佳选择。  1.1.1  单片机的基本概念 随着微型计算机的高速发展,微型计算机系统、微处理器、单片微型计算机、嵌入式系 统和  SOC(片上系统)等新系统的不断涌现。为了学习掌握好单片微型计算机,从概念上弄 清这些系统之间的关系是十分重要的。  1.微处理器的概念  MPU 是微处理器的缩写(Microprocessor),简称为 MP。MPU 是集成在同一块芯片上的 具有运算和控制功能逻辑的中央处理器。 微处理器不仅是构成微型计算机、 单片微型计算机系 统、嵌入式系统的核心部件,而且也是构成多微处理器系统和现代并行结构计算机的基础。  2.微型计算机的概念 微型计算机(Microcomputer)是指由微处理器加上采用大规模集成电路制成的程序存储 器和数据存储器,以及与输入/输出设备相连接的 I/O 接口电路,微型计算机简称 MC。如果将 微处理器、存储器和输入/输出接口电路集成在一块集成电路芯片上,称为单片微型计算机; 如果将组成微型计算机的各功能部件都做在一块电路板上, 称为单板机; 如果分做在多块电路 板上,称为多板机。如图 1­1 所示为微型计算机基本组成框图。

(2)

图 1­1  微型计算机结构框图  3.单片机的基本概念 单片机是单片微型计算机的简称,也就是把微处理器(CPU)、一定容量的程序存储器 (ROM)和数据存储器(RAM)、输入/输出接口(I/O)、时钟及其他一些计算机外围电路, 通过总线连接在一起并集成在一个芯片上,构成的微型计算机系统。 单片机的另外一个名称就是嵌入式微控制器,原因在于它可以嵌入到任何微型或小型仪 器或设备中。Intel  公司在单片机在出现时,就给其取名为嵌入式微控制器(embedded  microcontroller)。单片机的最明显的优势,就是可以嵌入到各种仪器、设备中,这一点是其他 机器和网络所不能做到的。 因此了解单片机知识, 掌握单片机的应用技术, 更具有重要的意义。 单片微型计算机具有体积小、重量轻、价格低和可靠性好等许多优点。经常应用在家用 电器、智能仪器仪表中。在工业控制领域可以很方便地实现多机和分布式控制。  4.嵌入式系统的基本概念 嵌入式系统是以应用技术产品为核心,以计算机技术为基础,以通信技术为载体,以消 费类产品为对象,引入各类传感器加入,进入 Internet 网络技术的连接,而适应应用环境的产 品。嵌入式系统是计算机技术、通信技术、半导体技术、微电子技术、语音图像数据传输技术、 甚至传感器等先进技术和具体应用对象相结合后的更新换代产品。 因此往往是技术密集, 投资 强度大,高度分散,不断创新的知识密集型系统。反映当代最新技术的先进水平。针对不同的 具体应用而设计的嵌入式系统之间差别也很大。 一般的嵌入式系统功能简单, 且在兼容性方面 要求不高,但是在大小、成本方面限制较多。 嵌入式系统泛指嵌入于宿主设备的系统中,嵌入的目的主要是用智能化提升宿主设备的 功能。嵌入式系统可大可小,位数可多可少,完全由能满足宿主设备的功能要求而定。一般的 嵌入式系统都具有计算机的功能。 嵌入式系统的核心是嵌入式微处理器。嵌入式微处理器一般具备以下 3 个特点: (1)嵌入式微处理器对实时多任务有很强的支持能力,能完成多任务并且有较短的中断 响应时间,而使内部的代码和实时内核心的执行时间减少到最低限度。可扩展的处理器结构, 能最迅速地开展出满足应用的最高性能的嵌入式微处器。 (2)嵌入式微处理器具有功能很强的存储区保护功能。这是由于嵌入式系统的软件结构

(3)

已模块化, 而为了避免在软件模块之间出现错误的交叉作用, 需要设计强大的存储区保护功能, 同时也有利于软件诊断。 (3)嵌入式微处理器功耗很低,因为嵌入式微处理器用于便携式的无线及移动的通信设 备中,是靠电池供电的,因此它的功耗只有 mW 甚至 μW 级。 嵌入式系统一般都具有在系统编程的功能。其可靠性高、成本低、体积小、功耗低,因 此它已广泛地应用到各种不同类型设备当中,且具有不断创新特征,系统中采用片上系统 (SOC)将是其发展趋势。  5.SOC 的基本概念  SOC 是片上系统的简称。所谓 SOC 技术,是一种高度集成化、固件化的系统集成技术。 使用 SOC 技术设计系统的核心思想,就是要把整个应用电子系统全部集成在一个芯片中。在 使用 SOC 技术设计应用系统时,除了那些无法集成的外部电路或机械部分以外,其他所有的 系统电路全部集成在一起。 在传统的应用电子系统设计中,根据设计要求的功能选择合适的集成电路组合在一起, 对整个系统进行综合, 这种设计是一个以功能集成电路为基础, 器件分布式的应用电子系统结 构。因此传统应用电子系统的实现,采用的是分布功能综合技术。 对于 SOC 来说,应用电子系统的设计也是根据功能和参数要求设计系统,但与传统方法 有着本质的差别。SOC 是以功能 IP 为基础的系统固件和电路综合技术。首先,功能的实现不 再针对功能电路进行综合,而是针对系统整体固件实现进行电路综合,也就是利用 IP 技术对 系统整体进行电路结合。其次,电路设计的最终结果与 IP 功能模块和固件特性有关,使设计 的电磁兼容特性得到极大提高。  1.1.2  单片机的发展概况 从单片机走过 40 多年的发展历程可以看出, 单片机的发展趋势将是向大容量、 高性能化, 外围电路内装化等方面发展。单片机技术的发展以微处理器(MPU)技术及超大规模集成电 路技术的发展为先导,以广泛的应用领域为动力,表现出较微处理器更具个性的发展趋势。目 前,把单片机嵌入式系统和 Internet 连接已是一种趋势。  1.单片机的发展阶段 单片机的发展大致经历了以下三个阶段。 (1)单片机的初级阶段。 单片机始于 20 世纪 70 年代中期,我们将 1978 年以前的单片机称为单片机的初级阶段。 这时,美国的仙童公司(Fairchild)首先推出了第一款单片机 F­8,随后,Intel 公司推出了那 一阶段具有代表意义的 MCS­48 单片机,此阶段的单片机是 8 位机,有并行 I/O 口,没有串行 口,寻址范围小于 4K。 (2)单片机的中级(成熟)阶段。 将 1978 年~1982 年称为单片机的成熟阶段,在这个时期,单片机的性能得到了很大的发 展, 硬件结构日趋成熟, 指令系统逐渐完善。 最具代表意义的单片机就是 Intel 公司的 MCS­51、  Motorola 公司的 6801 以及 Zilog 公司的 Z8 等, 这些单片机具有多级中断处理系统、 16 位中断 定时器/计数器、串行端口。存储器寻址范围可达 64K,有些芯片还扩展了 A/D 转换器接口。 由此, 这一类单片机的应用领域极其广泛, 在我国工业控制领域和电子测量方面也得到了广泛 的应用。

(4)

(3)单片机的高级(发展)阶段。  1982  年以后单片机的发展进入了高级阶段,这一时期的主要特征是速度越来越快、功能 越来越强、品种越来越多。8 位机进入改良阶段,16 位机和 32 位机相继出现,8 位、16 位、  32  位单片机共同发展,这是当前单片机技术发展的另一动向。目前,单片机技术的发展仍然 以 8 位机为主的。随着移动通讯、网络技术、多媒体技术等高科技产品进入家庭,32 位单片 机应用得到了长足发展。而 16 位单片机的发展无论从品种和产量方面,近年来都有较大幅度 的增长。  2.单片机技术的发展方向 目前,计算机系统的发展已明显地朝巨型化、单片化、网络化等三个方向发展。巨型机 用以解决复杂系统计算和高速数据处理。单片机的最明显的优势,就是可以嵌入到各种仪器、 设备中。这一点是巨型机和网络不可能做到的。随着单片机需求的发展,各个生产厂家都在不 断的改善单片机的功能。其主要表现在内部结构上,增加了各种新的功能,提高了运算速度; 降低了功耗;提高了存储能力;增加了与 Internet 连接的能力,并在电源电压方面、工艺方面 及抗干扰能力方面有了较大的进步和发展。 (1)内部结构。 单片机在内部已集成了越来越多的部件,这些部件包括一般常用的电路,例如:定时器、 比较器、A/D 转换器、D/A 转换器、串行通信接口、Watchdog 电路、LCD 控制器等。 为了构成控制网络或形成局部网,有些单片机内部设计了内部含有局部网络控制模块  CAN。有些单片机内部设置了专门用于变频控制的脉宽调制控制电路,在这些单片机中,脉 宽调制电路有 6 个通道输出,可产生三相脉宽调制交流电压,并内部含死区控制等,形成最具 经济效益的嵌入式控制系统。 有些单片机使用了锁相环技术或内部倍频技术使内部总线速度大大高于时钟产生器的 频率。 目前单片机采用的最先进技术是所谓的三核(TrCore)结构。这是一种建立在系统级芯片 (System  on a chip)概念上的结构。这种单片机由三个核组成:一个是微控制器和 DSP 核, 一个是数据和程序存储器核,最后一个是外围专用集成电路(ASIC)。这种单片机的最大特点 在于把 DSP 和微控制器同时做在一个片上。虽然从结构定义上讲,DSP 是单片机的一种类型, 但其作用主要反映在高速计算和特殊处理,如快速傅立叶变换等上面。 (2)功耗和电源电压方面。 单片机的进步还表现在单片机的功耗越来越低,许多单片机都设置了多种工作方式,这 些工作方式包括等待、暂停、睡眠、空闲、节电等。例如 Philips 公司的 P87LPC762 单片机在 空闲时,其功耗为 1.5  mA,而在节电方式中,其功耗只有 0.5mA。TI 公司的单片机 MSP430  系列,它是一个 16 位的系列,有超低功耗工作方式。它的低功耗方式有 LPM1、LPM3、LPM4  等三种。当电源为 3V 时,功耗达到 μA 级。有些厂家最近推出的单片机可在 1.8V 电压下以  50M/48MIPS 全速工作,功率约为 20mW。0.9V 供电的单片机已经问世。几乎所有的单片机都 有 Wait、Stop 等省电运行方式。允许使用的电源电压范围也越来越宽。一般单片机都能在 3~  6V 范围内工作,对电池供电的单片机不再需要对电源采取稳压措施。 (3)工艺的进步及抗干扰能力的提高。  CMOS 工艺的单片机代替 NMOS 工艺单片机,使得功耗大幅度下降,随着超大规模集成 电路技术由 3μm 工艺发展到 1.5、1.2、0.8、0.5、0.35 近而实现 0.2μm 工艺,全静态设计使功

(5)

耗不断下降。 为了提高单片机系统的抗电磁干扰能力,使产品能适应恶劣的工作环境,满足电磁兼容 性方面更高标准的要求, 各单片机厂家在单片机内部电路中采取了一些新的技术措施。 如美国 国家半导体的单片机内部增加了抗 EMI 电路,并增强了“看门狗”的功能。Motorola 也推出 了低噪声的 LN 系列单片机。 采用 EFT (Electrical Fast Transient) 抗干扰技术。 在振荡电路的正弦信号受到外界干扰时, 其波形上会迭加各种毛刺信号, 如果使用施密特电路对其整形, 则毛刺会成为触发信号干扰正 常的时钟,在交替使用施密特电路和 RC 滤波电路时,就可以消除这些毛刺,从而保证系统的 时钟信号正常工作。这样,就提高了单片机工作的可靠性。 (4)存储能力和 Internet 连接。 过去的单片机存储器是以掩膜型为主的。由于掩膜需要一定的生产周期,为了降低产品 的成本, 一些生产厂家推出的单片机不再是掩膜型, 而是具有在线可编程功能的单片机。 目前,  MTP  可多次编程的单片机被普遍使用。一些单片机厂家如  ATMEL  AVR  单片机,片内采用  FLASH,可多次编程。华邦公司生产的与 8051 兼容的单片机也采用了 MTP 性能。 有些公司把单片机为核心的嵌入式系统和 Internet 相连,给用户带来了更大的方便。这个 技术包括三个主要部分:即 emMicro,emGateway 和网络浏览器。其中,emMicro 是嵌入设备 中的一个只占内存容量 1K 字节的极小的网络服务器; emGateway 作为一个功能较强的用户或 服务器,它用于实现对多个嵌入式设备的管理,还有标准的 Internet  通信接入以及网络浏览器 的支持。网络浏览器使用 emObjicts 进行显示和嵌入式设备之间的数据传输。  1.1.3  单片机的特点和应用 从单片机的结构和发展概况上,可以看出单片机的特点和应用。  1.单片机的特点 (1)体积小、使用灵活、成本低、易于产业化。它能方便地嵌入到各种智能式测控设备 及各种智能仪器仪表中。 (2)可靠性好、适应温度范围宽。由于单片机的生产厂商不断的提高产品的抗干扰能力, 单片机芯片本身也是按工业测控环境要求设计的, 能适应各种恶劣的环境, 其抗工业噪声干扰 的能力优于一般通用的 CPU。 (3)易扩展,很容易构成各种规模的应用系统、控制功能强。I/O  接口多,指令系统丰 富,易于单片机的逻辑控制功能的实现。 (4)系统内无监控或系统管理程序。单片机系统内部一般无监控或系统管理程序,使用 简单,只有用户设计和调试好的应用程序。  2.单片机的应用 (1)测控系统。用单片机可以构成各种工业控制系统、数据采集系统、分布式测控系统、 机器人控制系统和机电一体化产品。 (2)智能仪器仪表。把单片机应用在智能仪器仪表中,促进仪表向数字化、智能化、多 功能化、综合化方面发展。 (3)通讯产品。用于调制解调器与程控交换技术。 (4)民用产品。用于家用电器、电子玩具、录像机、激光唱机等民用产品。 (5)军用产品。用于导弹控制、制导控制、智能武器装备、航天飞机导航系统等军用产

(6)

品之中。 (6)计算机外部设备。用于打印机、硬盘驱动器与复印机等计算机外部设备当中。 单片机应用的意义不仅在于它的广阔应用范围及所带来的经济效益。更重要的意义在于, 单片机的应用从根本上改变了传统的控制系统设计思想和设计方法。 以前采用硬件电路实现的 控制功能,现在用单片机的软件就可实现。这种以软件取代硬件的功能,提高系统的性能。 

1.2  单片机的数制表示法

在人们的日常生活和数学计算中,我们经常采用的是十进制,但计算机只能“识别”二 进制数。所以,二进制数及其编码是所有计算机的基本语言。其基本信息只有“0”和“1” , 这是因为数字电路中的开关只有“通”和“断”两个状态。如果计算机要进行十进制或其他进 制的计算,那么都要转换成二进制进行计算。用“0”或“1”两种状态表示数字,鲜明可靠, 容易识别,实现方便,计算机正是利用只有两种状态的双稳态电路来表示和处理信息的。但二 进制数值数多,书写和识读不便,在计算机软件编制过程中又常常需要用到十六进制数表示。 了解二进制数、十进制数、十六进制数之间的关系,相互转换和运算方法,是学习计算机技术 必备的基础知识。  1.2.1  二进制、十进制与十六进制  1.二进制 以 2 为基数的数制叫二进制,它只包括“0”和“1”两个符号。进位规则是“逢二进一” 。 每左移一位,数值增大一倍;右移一位,数值减小一半。对于整数,从右往左各位的权依次是  1、2、4、8、16…;对于小数,从左往右各位的权分别是 1/2、1/4、1/8、1/16…。二进制数可 以在数的后面放一个 B 作为标识符,表示这个数是二进制数。 如果 Xi 表示“0”和“1”两个数的任一个,那么一个含有 n 位整数,m 位小数的二进制 数可表示为:  N=Xn­1×2  n­1  +Xn­2×2  n­2  +…+X0×2  0  +X­1×2  ­1  +X­2×2  ­2  +…+X­m×2  ­m  也可以表示为:  n 1  i  i  i m  N X 2 = = - =

å

´ (公式 1) 式中:N 为二进制的值;Xi 为第 i 位的系数;2  i 为第 i 位的权。 例如:二进制数 101.101B 等于十进制的 5.625。 其各位数码代表的数值为 1×2 2  +0×2 1 +1×2 0 +1×2 ­1 +0×2 ­2 +1×2 ­3 =5.625。 例如:十进制的 7 等于二进制的 111B。  2.十进制 以 10 为基数的数制叫十进制,十进制用 0、1、2、3、4、5、6、7、8、9 等 10 个符号来 表示。进位规则是“逢十进一” 。十进制数可以在数的后面放一个 D 作为标识符,表示这个数 是十进制数,也可以省略。 如果 Xi 表示 0、1、2、3、4、5、6、7、8、9 等 10 个数中的任一个数,那么一个含有 n  位整数,m 位小数的十进制数可表示为:  N=Xn­1×10  n­1  +Xn­2×10  n­2  +…+X0×10  0  +X­1×10  ­1  +X­2×10  ­2  +…+X­m×10  ­m

(7)

也可以表示为:  n 1  i  i  i m  N X 10 = =- =

å

´ (公式 2)

式中:N 为十进制的值;Xi 为第 i 位的系数;10 i 为第 i 位的权。 

3.十六进制 尽管计算机内部采用二进制来表示信息,但为了书写和阅读的方便,我们经常采用十六 进制。以 16 为基数的数制叫十六进制,进位规则是“逢十六进一” 。十六进制数可以在数的后 面放一个 H 作为标识符,表示这个数是十六进制数。 十六进制用 0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F 共 16 个符号来表示。 如果 Xi 表示 0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F 中的任何一个,那么,一 个含有 n 位整数,m 位小数的十六进制数可表示为:  N=Xn­1×16 n­1 +Xn­2×16 n­2 +…+X0×16 0 +X­1×16 ­1 +X­2×16 ­2 +…+X­m×16 ­m  也可以表示为:  n 1  i  i  i m  N X 16 = =- =

å

´ (公式 3)

式中:N 为十进制的值;Xi 为第 i 位的系数;16 i 为第 i 位的权。 

1.2.2  数制的转换  1.二进制→十进制的转换 二进制→十进制的转换可用公式 1 来转换。 【例 1­1】10011011B=1×2 7  +0×2 6 +0×2 5 +1×2 4 +1×2 3 +0×2 2 +1×2 1 +1×2 0 =155  1101.11B=1×2 3 +1×2 2 +0×2 1 +1×2 0 +1×2 ­1 +1×2 ­2 =13.75  2.十六进制→十进制的转换 十六进制→十进制的转换可用公式 3 来转换。 【例 1­2】3BH=3×16 1  +11×16 0 =59  1A6CH=1×16 3 +10×16 2 +6×16 1 +12×16 0 =6764  3.十进制→二进制的转换 把一个十进制整数依次除以 2,并记下每次所得的余数(1 或 0),最后所得的余数的组合 即为转换的十进制数。第一位余数为最低位(LSB),最后一个余数为最高位(MSB)。 【例 1­3】126=1111110B  要将一个十进制小数转换成二进制,则应将十进制小数连续小断地乘以 2,并且记录所得 的溢出的整数部分,直到乘积为零为止。但有时结果永不为 0,此时,只要转换到所要求的精 度为止即可。第—次溢出的数为小数的最高位,最后一次溢出的为最低位。

(8)

【例 1­4】要将十进制数 0.318 转换成二进制。 则:0.318=010100010…B。 溢出整数 小数部分×2  剩余小数部分  0  0.318×2=0.636  0.636  1  0.636×2=1.272  0.272  0  0.272×2=0.544  0.544  1  0.544×2=1.088  0.088  0  0.088×2=0.176  0.176  0  0.176×2=0.352  0.352  0  0.352×2=0.65  0.65  1  0.65×2=1.3  0.3  这是一个无限循环的二进制数。 如果十进制数包含整数和小数两部分,则必须将整数和小数分别进行转换。  4.十六进制→二进制的转换 十六进制→二进制的转换非常简单,因为十六进制的每位都与四位二进制相对应,要将 十六进制转换成二进制,只要将每位十六进制数转换成相应的四位二进制数即可。 【例 1­5】8AH=10001010B  E46AH=1110010001101010B  5.二进制→十六进制的转换 由于四位二进制数正好与一位十六进制数相对应,那么二进制→十六进制的转换时,只 需从二进制数的最低位算起,每四位一个数,到最高位不够四位填 0,即可按位转换成十六进 制数。 【例 1­6】10011101000110=0010、0111、0100、0110=2746H  1100111000101011=1100、1110、0010、1011=CE2BH  1.2.3  原码、反码与补码 在数学中, “+” 、 “­”表示数的正与负。在计算机中,为了运算的方便,数的最高位用来 表示正、负数。最高位为“0”表示正数,最高位为“1”表示负数。8 位微型计算机中约定, 最高位 D7 用来表示符号位,其他 7 位用来表示数值,如图 1­2 所示。 图 1­2  计算机符号表示法 例如:7  位数+1011001B,则在计算机中表示为,01011001B(59H);而­1011001B  则在 计算机中表示为,11011001B(D9H)。为了区别原来的数与它在计算机中的表示形式,我们 将已经数码化了的带符号数称为机器数。而把原来的数称为机器数的真值。那么上例中的  1011001B 为真值,而 01011001B、11011001B 为机器数。 在计算机中,机器数有三种表示方法:原码、反码、补码。

(9)

1.原码 在符号位用 0 表示正数,在符号位用 l 表示负数,而数值位保持原样的数,这样的机器数 称为原码。由于最高位为符号位,因此,8 位二进制原码表示的数的范围为:­127~+127。 (1)正数。正数的原码与原来的数相同。 【例 1­7】+6=+00000110B  而:[+6]原=00000110B  (2)负数。负数的原码为符号位置 1,而数值位不变。 【例 1­8】­6=­00000110B  而:[­6]原=10000110B  (3)0 的原码表示。0 的原码表示法有两种,即正 0 和负 0。  [+0]原=00000000  [­0]原=10000000  2.反码 由于最高位为符号位,因此,8 位二进制反码表示的数的范围为:­127~+127。 (1)正数。正数的反码与正数的原码相同。 【例 1­9】+6=+00000110B  而:[+6]反=00000110B  (2)负数。负数的反码为数值位的值按位求反后,符号位取“1” 。 【例 1­10】­6=­00000110B  [­6]反=11111001B  (3)0 的反码表示。0 在反码中也有两种表示法,正 0 和负 0。  [+0]反=00000000  [­0]反=11111111  3.补码 在计算机中,用补码来表示数使得计算机的加减运算十分简单,因为它不必判断正负数, 只要让符号位参加运算,即可得到正确的结果。8  位二进制补码表示的数的范围为:­128~  +127。 为了进一步理解补码的意义,现以一个钟表的例子来说明。假若现在正确的时间为  5  点 整,而钟表却错误地指在  8  点整。为了校准时钟,有两种拨正时针的方法:一种是倒拨  3  格 (8­3=5),第二种是顺拨 9 个格(8+9=5)。因为钟表指示的最大数为 12,从 12 开始又重新计 数了。因此,模为  12,9  就是­3  的补码。由于有了补码的概念,就可以将减法转换为加法计 算了。 (1)正数。正数的补码与正数的原码相同。 【例 1­11】+6=+00000110B  而:[+6]补=00000110B  (2)负数。负数的补码由它的绝对值求反加 1 后得到。 【例 1­12】­6=­00000110B  [­6]补=11111010B  (3)0 的补码表示。0 的补码表示只有一种,其表达式为:  [+0]补=[­0]补=00000000B

(10)

(4)补码的运算。对于一个数按位求反后,再在末位加  1,就可以得到这个数的正数相 对应的负数的补码表示。把这种运算叫做求补运算。 补码的加法规则是:  [X+Y]补=[X]补+[Y]补 补码的减法规则是:  [X­Y]补=[X]补+[­Y]补 【例 1­13】求十进制数 76­28 的运算。 运算时将­28 转换成补码,然后进行加法运算就可以了。 【例 1­14】求十进制数 36­52 的运算。  [­16]补=11110000  综上所述,8 位二进制数的原码、反码和补码有下列关系: 对于正数:[x]原=[x]反=[x]补 对于负数:[x]反=[x]原数值位取反,符号位不变。  [x]补=[x]反+1  采取求补运算,可以将计算机中的减法运算转换成加法运算,从而节约了计算机的硬件 成本。 1.2.4  计算机中常用的编码  1.BCD(8421)码  BCD 码最常用的编码为 8421 码。由于人们在工作中习惯上用十进制数进行数据的输入  /输出,而计算机又必须用二进制数进行分析运算,因此就要求计算机将十进制数转换成二 进制数,这将会影响计算机的工作速度。为了简化硬件电路和节省转换时间,可采用二进制 数对每一位十进制数字编码,这种编码方式称为 BCD 码(Binary  Coded  Decimal),用标识 符[……]BCD 表示,这种编码方式的特点是保留了十进制的权,数字则用二进制数表示。 (1)BCD  码的表示。8421 码的编码原则是将一个十进制数的每一位用  4  位二进制数来 表示,8421 代表了每一位的权。而 4 位二进制数有 16 种状态,在这种编码里将 1010、1011、  1100、110l、1110 和 1111 这 6 个编码舍去不用,用余下的 10 种状态表示 0~9 等 10 个数字。 它们之间的对应关系如表 l­1 所示。 (2)BCD 码的换算。在 BCD 码与二进制的换算时,要注意的是,不能把[0101 0101]BCD  误认为是二进制码,0101  0101B 转化为十进制后的值为 85,而[0101  0101]BCD 的值为 55,显 然两者是不一样的。  BCD 码用 4 位二进制数表示,而 4 位二进制数可表示 16 种状态,余下的 6 种状态 10l0~  1111 在 BCD 编码中称为非法码或冗余码。在 BCD 码的运算中将会出现冗余码,需要作某些

(11)

修正,才能得到正确的结果。 表 1­1  十进制与二进制的对照 十进制  BCD 码 十进制  BCD 码  0  0000  5  0101  1  0001  6  0110  2  0010  7  0111  3  0011  8  1000  4  0100  9  1001  (3) BCD 码加法。 由于 BCD 码的低位与高位之间是 “逢十进一” , 而 4 位二进制数是 “逢 十六进一” 。因此,当两个 BCD 码相加时,若各位的和均在 0~9 之间,则其加法运算规则完 全同二进制数加法的规则一样;若相加后的低 4 位(或高 4 位)二进制数大于 9,或大于 15  (即低 4 位或高 4 位的最高位有进位),则应对低 4 位(或高 4 位)加 6 修正。 【例 1­15】BCD 码 X=23,Y=35,求 X+Y。  X=0010 0011,Y=0011 0101  X+Y=[01011000]BCD = 58,因为高 4 位和低 4 位都小于 9,不需要调整,于是就得出了正 确结果。 【例 1­16】BCD 码 X=59,Y=78,求 X+Y。  X=0101 1001,Y=0111 1000  X+Y=[100110111]BCD =137,因为高 4 位大于 9,低 4 位向高 4 位有进位,因此高 4 位和 低 4 位都需要调整,最后结果正确。 综上所述:当低 4 位向高 4 位进位,或低 4 位大于 9,那么低 4 位加 6 修正;当高 4 位大 于 9,或高 4 位向更高位进位,高 4 位加 6 修正;若低 4 位或高 4 位,同时出现向高位进位或 大于 9 这两种情况,则只需作一次加 6 修正。在单片机 51 汇编指令中有自动修正 BCD 码的 指令。 (4)BCD 码减法。BCD 码进行减法时,也会出现需要修正的现象,BCD 码减法修正的 条件和方法是:低 4 位向高 4 位借位,或低 4 位出现非法码,低 4 位减 6 修正;高 4 位出现非 法码,或高 4 位向更高的借位,高 4 位减 6 修正。 【例 1­17】BCD 码 X=55,Y=38,求 X­Y。  X=0101 0101,Y=0011 1000

(12)

X­Y=[00010111]BCD,做减法运算时,低 4 位有借位,所以需要在低 4 位减 6 修正。 

2.ASCII 码

在计算机中,除了做数字运算外,还有一些其他的字符需要表示。如用来组织、控制或

表示数据的字母 (英文 26 个字母等)。 计算机与外围设备之间通信, 需要识别许多特殊的符号,

这些字母和符号统称字符,它们也必须按特定的规则用二进制编码才能在计算机中表示。

目前, 在微型计算机系统中, 世界各国普遍采用 ASCII 编码表 (American Standard Code for 

Information Interchange,美国信息交换标准代码),内容如表 1­2 所示。

表 1­2  ASCII 编码表  b6b5b4 

b3b2b1b0  000  001  010  011  100  101  110  111 

0000  NUL  DLE  SP  0  @  P  ’  p 

0001  SOH  DC1  !  1  A  Q  a  q 

0010  STX  DC2  ″  2  B  R  b  r 

0011  ETX  DC3  #  3  C  S  c  s 

0100  EOT  DC4  $  4  D  T  d  t 

0101  ENQ  NAK  %  5  E  U  e  u 

0110  ACK  SYN  &  6  F  V  f  v 

0111  BEL  ETB  ‘  7  G  W  g  w 

1000  BS  CAN  (  8  H  X  h  x 

1001  HT  EM  )  9  I  Y  i  y 

1010  LF  SUB  *  :  J  Z  j  z 

1011  VT  ESC  +  ;  K  [  k  { 

1100  FF  FS  ­  <  L  \  l  ¦ 

1101  CR  GS  ,  =  M  ]  m  } 

1110  SO  RS  .  >  N  ^  n  ~ 

1111  SI  US  /  ?  O  _  o  DEL 

ASCII 码用 7 位二进制数表示,可表达 128 个字符,其中包括数码 0~9,英文大小写字 母,标点符号和控制字符。7 位 ASCII 码分成二组:高 3 位一组,低 4 位一组,分别表示这些 符号的列序和行序,ASCII 码的分组如图 1­3 所示。

(13)

1.3  常用单片机的选择及简介

随着半导体技术的飞速发展,MPU 更新换代的速度越来越快,以 386、486、586 为代表 的 MPU,很短的时间内就被淘汰出局,而传统的单片机如 805 系列已有了近 20 年的应用,市 场占有率仍在上升。一方面是由于其对相应应用领域的适应性,另一方面是由于以该类  CPU  为核心,集成以更多 I/O 功能模块的新单片机系列层出不穷。8 位、16 位、32 位单片机共同 发展是当前单片机技术发展的一个方向。目前市场单片机种类繁多,随着 I/O 功能模块的不断 丰富,有着相当长的生存周期。新的 CPU 类型的加盟,使单片机队伍不断壮大,给用户带来 了更多的选择余地。  1.3.1  单片机的选择 一般用户选择单片机可以从以下几个方面考虑。  1.单片机的存储器 根据设计任务的复杂程度来决定选择什么样的单片机存储器研发阶段, 使用 Flash 单片机, 它有电写入、电擦除的优点,使得修改程序很方便,可以提高开发速度;对于初具规模的产品 可选用 OTP 单片机,可省去掩膜时间,加快产品的上市时间。选用时程序存储器的容量只要 够用即可,选择太大容量会增加成本。  2.单片机运行速度 单片机的运行速度首先看时钟频率、指令集,以及几个时钟为一个机器周期。在选用单 片机时要根据需要选择速度,不要片面追求高速度,单片机的稳定性、抗干扰性等参数基本上 是与速度成反比的,另外速度快功耗也会较大。  3.I/O 口的数量  I/O 口的数量和功能是选用单片机时首先要考虑的问题之一,根据实际需要确定数量,I/O  多余不仅芯片的体积增大, 也增加了成本。 驱动能力, 驱动电流大的单片机可以简化外围电路。  4.定时/计数器 大多数单片机提供  2~3  个定时/计数器,有些定时/计数器还具有输入捕获、输出比较和  PWM(脉冲宽度调制)功能,利用这些模块不仅可以简化软件设计,而且能少占用 CPU 的资 源。有些单片机提供了看门狗定时器(WDT),当单片机“死机”后可以自动复位。  5.串行接口 一般单片机都提供了  UART  接口,也有部分单片机没有串行接口。单片机常见的串行接 口有标准 UART 接口、增强型 UART 接口、I 2  C  总线接口、CAN  总线接口、SPI 接口、USB  接口等。  6.模拟电路功能 现在很多单片机内部提供了 A/D 转换器、D/A 转换器、PWM 输出和电压比较器。单片机 集成片内  A/D  转换器的同时,还集成了采样/保持电路,很容易实现数据采集系统。PWM  模 块可用来产生不同频率和占空比的脉冲信号。可方便实现 D/A 输出功能。PWM 输出模块也可 以用来实现直流电机的调速等功能。  7.工作电压及功耗 单片机的功耗参数主要是指正常模式、空闲模式、掉电模式下的工作电流,用电池供电

(14)

的系统要选用电流小的产品, 同时要考虑是否要用到单片机的掉电模式。 单片机的工作电压最 低可以达到 1.8V,最高为 6V,常见的是 3V 和 5V。如果产品为手持设备应选择低电压供电的 单片机。  8.封装形式 单片机常见的封装形式有 DIP(双列直插式封装)、PLCC(PLCC  要对应插座)、QFP(四 侧引脚扁平封装)、SOP(双列小外形贴片封装)等,设计者可根据焊接的条件进行选择。  9.抗干扰性能及保密性 选用单片机要选择抗干扰性能好的,特别是用在干扰比较大的工业环境中的尤应如此。 单片机加密后的保密性能也要好,这样可保证用户的知识产权不容易被侵犯。  10.其他方面 在单片机的性能上还有很多要考虑的因素,比如中断源的数量和优先级、工作温度范围、 有没有低电压检测功能、单片机内部有无时钟振荡器、有无上电复位功能等。  1.3.2  单片机系列产品简介 单片机种类繁多,而且还在不断推出新的更高性能的单片机品种。从国内使用情况来看,  MCS­51 型系列单片机的应用最为广泛。  1.8051 类单片机  MCS­51 内核系列兼容的单片机仍是应用的主流产品 (比如目前流行的 89S51、 89C51 等), 各高校仍将MCS­51 单片机作为教学内容。 由 Intel 公司推出的 8051/31 类单片机也是世界上用 量最大的几种单片机之一。后来 8051 类单片机主要由 Philips、三星、华邦和 ATMEL 等公司 生产。这些公司都在保持与 8051 单片机兼容的基础上改善了 8051 许多特性(如时序特性)。 提高了速度、降低了时钟频率,放宽了电源电压的动态范围,降低了产品价格。表 1­3 列出了 常用的 MCS­51 系列单片机的产品。 表 1­3  MCS­51 系列单片机的产品 片内存储容量 寻址 速度  I/O 特性 其他功能 单片机

型号  ROM  EPROM  E 

PROM  RAM  ROM/RAM  MHz  并行口 串行口 计数器  DMA  A/D  ISP  中断源  8031  ­  ­  ­  128B  64KB  12  4×8  1  2×16  ­  ­  ­  5  80C51  ­  ­  ­  256B  64KB  12  4×8  1  3×16  ­  ­  ­  6  80C451  ­  ­  ­  128B  64KB  12  7×8  1  2×16  ­  ­  ­  5  8051/80C51  4KB  ­  ­  128B  64KB  12  4×8  1  2×16  ­  ­  ­  5  8751/87C51  ­  4KB  ­  128B  64KB  12  4×8  1  2×16  ­  ­  ­  5  8032  ­  ­  ­  256B  64KB  12  4×8  1  3×16  ­  ­  ­  6  8052AH  8KB  ­  ­  256B  64KB  12  4×8  1  3×16  ­  ­  ­  6  8752/87C52  ­  8KB  ­  256B  64KB  33  4×8  1  3×16  ­  ­  ­  6  87C452  ­  8KB  ­  256B  64KB  33  5×8  1  2×16  2  ­  ­  5  W78E51  ­  4KB  ­  128B  64KB  40  4×8  1  2×16  ­  ­  ­  5  W78E52  ­  8KB  ­  256B  64KB  40  4×8  1  3×16  ­  ­  ­  6

(15)

续表 片内存储容量 寻址 速度  I/O 特性 其他功能

单片机

型号  ROM  EPROM  E PROM  RAM  ROM/RAM  MHz  并行口 串行口 计数器  DMA  A/D  ISP  中断源 

W78E54  ­  16KB  ­  256B  64KB  40  4×8  1  3×16  ­  ­  ­  6  W78E58  ­  32KB  ­  256B  64KB  40  36  1  3×16  ­  ­  ­  6  W78E516  ­  64KB  ­  256B  64KB  40  36  1  3×16  ­  ­  ­  6  89C51  ­  ­  4KB  128B  64KB  24  4×8  1  2×16  ­  ­  ­  6  89C52  ­  ­  8KB  256B  64KB  33  5×8  1  2×16  2  ­  ­  7  89S52  ­  ­  8KB  256B  64KB  33  5×8  1  2×16  2  ­  有  7  由于MCS­51 单片机影响极深远,许多公司都推出了兼容系列单片机,就是说 MCS­51 内 核实际上已经成为一个 8 位单片机的标准。其他的公司的51 单片机产品都是和 MCS­51 内核 兼容的产品而以。同样的一段程序,在各个单片机厂家的硬件上运行的结果都是一样的,随着 单片机技术的发展,市场上许多 51 单片机已经停产,如 ATMEL 的 89C51。目前市场上流行 的 51 单片机是具有在系统编程功能的 89S51/52,其相对于 89C51 性能有了较大提升,价格基 本不变,具有 ISP 在线编程功能,最高工作频率为 33MHz,而 89C51 的极限工作频率是 24M。 具有双工UART  串行通道。内部集成看门狗计时器,不再需要像  89C51  那样外接看门狗计时 器单元电路。另外还具有双数据指示器,电源关闭标识。全新的加密算法,使得  89S51  的保 密性能大大加强,这样就可以有效的保护知识产权不被侵犯。  2.AVR 单片机  1997 年,ATMEL 公司研发出 RISC精简指令集的高速 8 位单片机,简称 AVR。相对于出 现较早也较为成熟的 51 系列单片机,AVR 系列单片机片内资源更为丰富,接口也更为强大, 同时由于其价格低等优势,在很多场合可以替代 51 系列单片机。 早期单片机主要有工艺及设计水平不高、功耗高和抗干扰性能差等缺点,所以采用较高 的分频系数对时钟分频,使得指令周期长,执行速度慢。AVR  单片机的推出,废除了机器周 期和复杂指令计算机(CISC)追求指令完备的做法;采用精简指令集,以字作为指令长度单 位,将内容丰富的操作数与操作码安排在一字之中(指令集中占大多数的单周期指令都是如 此),取指周期短,又可预取指令,实现流水作业,故可高速执行指令。  AVR 单片机硬件结构采取 8 位机与 16 位机的折中策略,具有 32 个通用工作寄存器,克 服 了 如  8051  MCU  采 用 单 一  ACC  进 行 处 理 造 成 的 瓶 颈 现 象 ; 提 高 了 指 令 执 行 速 度 (1Mips/MHz),增强了功能;AVR 单片机内嵌高质量的 Flash 程序存储器,擦写方便,支持  ISP  和  IAP,便于产品的调试、开发、生产、更新。内嵌长寿命的 EEPROM  可长期保存关键 数据,避免断电丢失。片内大容量的 RAM 不仅能满足一般场合的使用,同时也更有效的支持 使用高级语言开发系统程序,并可像 51 单片机那样扩展外部  RAM。  AVR 单片机的 I/O 线全部带可设置的上拉电阻、可单独设定为输入/输出、可设定(初始) 高阻输入、驱动能力强(可省去功率驱动器件)等特性,使得 I/O 口资源灵活、功能强大、可 充分利用。 

(16)

位定时器配合的具有多达 10 位的预分频器,可通过软件设定分频系数提供多种档次的定时时 间。AVR 单片机独有的以定时器/计数器(单)双向计数形成三角波,再与输出比较匹配寄存 器配合,生成占空比可变、频率可变、相位可变方波的设计方法,即脉宽调制输出 PWM。增 强性的高速同/异步串口,具有硬件产生校验码、硬件检测和校验侦错、两级接收缓冲、波特 率自动调整定位(接收时)、屏蔽数据帧等功能,提高了通信的可靠性,方便程序编写,更便 于组成分布式网络和实现多机通信系统的复杂应用,串口功能大大超过  MCS­51/96  单片机的 串口,加之 AVR 单片机高速,中断服务时间短,故可实现高波特率通信。  AVR 单片机有自动上电复位电路、独立的看门狗电路、低电压检测电路 BOD,多个复位 源(自动上下电复位、外部复位、看门狗复位、BOD 复位),可设置的启动后延时运行程序, 增强了嵌入式系统的可靠性。 AVR 单片机具有多种省电休眠模式, 且可宽电压运行 (5~2.7V)。 

AVR 单片机技术体现了单片机集多种器件, 包括 FLASH 程序存储器、 看门狗、 EEPROM、

同/异步串行口、TWI、SPI、A/D 模数转换器、定时器/计数器等,以及多种功能增强可靠性的 复位系统、降低功耗抗干扰的休眠模式、品种多门类全的中断系统、具输入捕获和比较匹配输 出等多样化功能的定时器/计数器、具替换功能的  I/O  端口地等于一身,充分体现了单片机技 术向“片上系统 SoC”过渡的发展方向。  3.PIC 单片机  PIC 单片机是 MICROCHIP 公司的产品,其突出的特点是体积小,功耗低,精简指令集, 抗干扰性好,可靠性高,有较强的模拟接口,代码保密性好。在一些小型的应用中,比传统的  51 单片机更加灵活,外围电路更少,因而得到了广泛的应用。PIC 单片机的指令少,PIC 中低 档系列单片机共有 35 条指令,非常有利于记忆和掌握,指令为单字节,占用程序存储器的空 间小,而且中档系列单片机每一条指令为 14 位,前 6 位存操作指令,后 8 位存操作数,大部 分芯片有其兼容的 Flash 程序存储器的芯片,支持低电压擦写,擦写速度快,允许多次擦写, 程序修改方便。  PIC 系列单片机目前已形成具有高、中、低 3 档共 50 多种型号的庞大家族,功能灵活多 样,能适应多种应用场合的不同需要。PIC 单片机在办公自动化设备,消费电子产品,电讯通 信,智能仪器仪表,汽车电子,金融电子,工业控制不同领域都有广泛的应用,PIC 系列单片 机在世界单片机市场份额排名中逐年提高。  4.MSP430 单片机  MSP430 系列单片机是美国德州仪器 (TI)公司 1996 年开始推向市场的一种 16  位超低功

耗的混合信号处理器(Mixed  Signal  Processor)。称之为混合信号处理器,主要是由于其针对 实际应用需求,把许多模拟电路、数字电路和微处理器集成在一个芯片上,以提供“单片”解 决方案。  MSP430 系列单片机以优异的性能在中国市场上得到了广泛的应用。MSP430 在高整合性 与高性能方面与其他 MCU 比较有较大优势。该系列芯片的价格也较为合理,目前整合性最好 的 MAP430F44X 系列, 整合了 60K 字节程序存储 (可记录数据)、 2K 字节片内 RAM、 6 个 I/O  端口(P1、P2 能中断)、160 段液晶驱动、两个串行端口、4 个定时器、看门狗、模拟比较器、 硬件乘法器、8 路 12 位 A/D 转换器、还有频率调整电路 FLL+、系统复位 SVS 模块等。而较 为基本型的 MSP430F1101、MSP430C1101 只有 1K 字节程序存储、128 字节片内 RAM、模拟 比较器、两个定时器等。 与 51 单片机相比 MSP430 片上资源较丰富, 采用 RISC精简指令集, 单个时钟周期就可以

(17)

执行一条指令,相同晶振,速度较 51 单片机快 12 倍。  5.ARM 处理器  ARM 处理器是 ARM 公司的产品,ARM 公司是微处理器设计厂商,主要是设计 ARM 处 理器的标准, 提出 ARM指令集, 自己不生产芯片, 将 ARM 架构授权给其他芯片商生产。 ARM  公司全称是 Advanced RISC Machines,即高级精简指令集机器。ARM 公司利用这种双赢的伙 伴关系迅速成为了全球性 RISC 微处理器标准的缔造者。 这种模式也给用户带来了巨大的好处, 因为用户只需掌握了一种 ARM 内核结构及其开发手段,就能够使用多家公司相同 ARM 内核 的芯片。  ARM 处理器架构是面向市场设计的第一款低成本 RISC 微处理器,它具有极高的性价比 和代码密度,以及出色的实时中断响应和极低的功耗,并且占用硅片的面积极少,从而使它成 为嵌入式系统的理想选择,因此应用范围非常广泛,比如手机、PDA、MP3、MP4  和种类繁 多的便携式消费产品中。2004 年 ARM 公司的合作伙伴生产了 12 亿片 ARM 处理器。ARM 处 理器有以下的结构特性。 (1)具有大量的通用寄存器; (2)通过装载/保存(load/store)结构使用独立的 load 和 store 指令完成数据在寄存器和 外部存储器之间的传送,处理器只处理寄存器中的数据,从而可以避免多次访问存储器,  load/store 指令可以批量传输数据,从而实现了最大数据吞吐量; (3)使用统一和固定长度的指令格式,寻址方式非常简单,所有装载/保存的地址都只由 寄存器内容和指令域决定; (4)每一条数据处理指令都可以同时包含算术逻辑单元(ALU)的运算和移位处理,以 实现对 ALU 和移位器的最大利用; (5)使用地址自动增加和自动减少的寻址方式优化程序中的循环处理; (6)大多数 ARM 指令是可“条件执行”的,也就是说只有当某个特定条件满足时指令 才会被执行。通过使用条件执行,可以减少指令的数目,从而改善程序的执行效率和提高代码 密度。

ARM 公司开发了很多系列的 ARM 处理器核, 应用比较多的是 ARM7 系列、 ARM9 系列、 

ARM10 系列、ARM11 系列、Intel 的 Xscale 系列和 MPCore 系列,还有针对低端 8 位 MCU  市场最新推出的 Cortex­M3 系列,其具有 32 位 CPU 的性能、8 位 MCU 的价格。用户可以根 据各自的应用需求,从性能、功能等方面考察,在许多具体型号中选择最合适的芯片来设计自 己的应用系统。  ARM CortexTM­M3 处理器是一个面向低成本、小管脚数目以及低功耗应用,并且具有极 高运算能力和中断响应能力的一个处理器内核。CortexTM­M3  处理器采用了纯  Thumb2  指令 的执行方式, 使得这个具有 32 位高性能的 ARM 内核能够实现 8 位和 16 位处理器级数的代码 存储密度,非常适用于那些只需几 K 存储器的 MCU 市场。在增强代码密度的同时,该处理器 内核是 ARM 所设计的内核中最小的一个,其核心的门数只有 33K,在包含了必要的外设之后 的门数也只为 60K。这使它的封装更为小型,成本更加低廉。在实现这些的同时,它还提供性 能优异的中断能力, 通过其独特的寄存器管理并以硬件处理各种异常和中断的方式, 最大程度 的提高了中断响应和中断切换的速度。 

CortexTM­A8  是  ARM  公司所开发的基于  ARMv7  架构的首款应用级处理器,同时也是  ARM 所开发的同类处理器中性能最好、能效最高的处理器。从 600MHz 开始到 1GHz 以上的

(18)

运算能力使 CortexTM­A8 能够轻易胜任那些要求功耗小于 300mW 的、 耗电量最优化的移动电 话器件;以及那些要求有 2000 MIPS 执行速度的、性能最优化的消费者产品的应用。  6.STM32 系列处理器  STM32 是意法半导体公司的产品。STM32 系列是专为要求高性能、低成本、低功耗的嵌 入式应用专门设计的 ARM Cortex­M3 内核。 按性能分成 STM32F103“增强型” 和 STM32F101  “基本型”两个系列。增强型系列时钟频率达到  72MHz,是同类产品中性能最高的产品;基 本型时钟频率为 36MHz,以 16 位产品的价格得到比 16 位产品大幅提升的性能,是 16 位产品 用户的最佳选择。两个系列都内置  32~128K  的闪存,不同的是  SRAM  的最大容量和外设接 口的组合。时钟频率为 72MHz 时,从闪存执行代码,STM32 功耗为 36mA,是 32 位市场上 功耗最低的产品,相当于 0.5mA/MHz。

(1)高性能的 Cortex­M3 内核 1.25DMips/MHz,而 ARM7TDMI 内核只有 0.95DMips/MHz。 (2)1μs 的双 12 位 ADC,4 兆位/秒的 UART,18 兆位/秒的 SPI,18MHz 的 I/O 翻转 速度。 (3)低功耗设计,在 72MHz 时消耗 36mA,待机时下降到 2μA。 (4)内部集成了复位电路、低电压检测、调压器、精确的 RC 振荡器等电路。 (5)STM32F10x 的供电电压为 2~3.6V,容忍 5V 的 I/O 管脚,有优异的安全时钟模式, 工作温度范围为­40℃~+85℃或­40℃~105℃。  STM32 系列微控制器的新型产品是互连型(Connectivity)的,其内部增加一个全速 USB  (OTG)接口,使终端产品在连接另一个 USB 设备时既可以充当 USB 主机又可充当 USB 从 机;还增加一个硬件支持 IEEE1588 精确时间协议(PTP)的以太网接口,用硬件实现这个协 议可降低  CPU  开销,提高实时应用和联网设备同步通信的响应速度;有些型号还集成两个  CAN2.0B 控制器的产品,可连接两条工业标准 CAN(控制器区域网)总线的网关设备。此外, 新系列微控制器还支持以太网、USB  OTG 和 CAN2.0B 外设接口同时工作。STM32 互连型系 列产品强化了音频性能,采用一个先进的锁相环机制,实现音频级别的  I 2  S  通信。STM32  互 连型系列产品分为 STM32F105 和 STM32F107 两个型号。 新增的强化型 STM32 的标准外设包括 10 个定时器、 两个 12 位 1­Msample/s  模数转换器、 两个 12 位数模转换器、两个 I 2  C 接口、五个 USART 接口和三个 SPI 端口。新产品外设共有  12 条DMA 通道,还有一个 CRC 计算单元,像其他 STM32 微控制器一样,支持 96 位唯一标 识码。 7.DSP 处理器 

DSP(Digital  Signal  Processing)是数字信号处理的简称。数字信号处理就是用数值计算 的方式对信号进行加工的理论和技术,它是集成专用计算机的一种芯片。DSP  芯片也称数字 信号处理器, 是一种特别适合于进行数字信号处理运算的微处理器, 其主要应用是实时快速地 实现各种数字信号处理算法。根据数字信号处理的要求,DSP 芯片一般具有如下主要特点: (1)在一个指令周期内可完成一次乘法和一次加法; (2)程序和数据空间分开,可以同时访问指令和数据; (3)片内具有快速 RAM,通常可通过独立的数据总线在两块中同时访问; (4)具有低开销或无开销循环及跳转的硬件支持; (5)快速的中断处理和硬件 I/O 支持; (6)具有在单周期内操作的多个硬件地址产生器;

(19)

(7)可以并行执行多个操作; (8)支持流水线操作,使取指、译码和执行等操作可以重叠执行。  DSP  处理器技术是研究用数字方法对信号进行分析、变换、滤波、检测、调制、解调以 及快速算法的一门技术学科。但很多人认为:数字信号处理主要是研究有关数字滤波技术、离 散变换快速算法和谱分析方法。 具体的应用体现在数字控制、 运动控制方面的应用主要有磁盘 驱动控制、引擎控制、激光打印机控制、喷绘机控制、马达控制、电力系统控制、机器人控制、 高精度伺服系统控制、数控机床等。面向低功耗、手持设备、无线终端的应用主要有手机、  PDA、GPS、数传电台等。随着数字电路与系统技术以及计算机技术的发展,数字信号处理技 术也相应地得到发展,其应用领域会更加广泛。

本章小结

学习单片机的应用技术,首先要了解计算机的发展历程,掌握单片机的基本概念。单片 机是单片微型计算机的简称,也就是把微处理器(CPU)、一定容量的程序存储器(ROM)和 数据存储器(RAM)、输入/输出接口(I/O)、时钟及其他一些计算机外围电路,通过总线连接 在一起并集成在一个芯片上构成的微型计算机系统。 单片机的发展经历了三个阶段,目前,单片机技术的发展仍然以  8  位机为主。随着移动 通讯、网络技术、多媒体技术等高科技产品进入家庭,32  位单片机应用得到了长足发展。单 片机技术的发展方向主要表现在内部结构上, 增加了各种新的功能, 提高运算速度; 降低功耗; 改善工艺水平;提高了抗干扰能力;增加了存储能力和 Internet 连接功能。目前单片机已应用 在测控系统、智能仪器仪表、通讯产品、民用产品、军用产品中。 在学习 51 汇编语言之前,首先要了解二进制数、十进制数、十六进制数之间的关系、相 互转换和运算方法等计算机技术必备的基础知识。 在计算机中,机器数有三种表示方法:原码、反码、补码。在计算机中,为了运算的方 便,数的最高位用来表示正、负数。最高位为“0”表示正数,最高位为“1”表示负数。在计 算机中,用补码来表示数使得计算机的加减运算变得十分简单,因为它不必判断正负数,只要 让符号位参加运算,即可得到正确的结果。 采用 BCD 码编码可以简化硬件电路和节省转换时间。计算机与外围设备之间通信,需要 识别许多特殊的符号, 这些字母和符号统称字符, 它们也必须按特定的规则用二进制编码才能 在计算机中表示。目前,在微型计算机系统中,世界各国普遍采用 ASCII 编码表。 市场上单片机种类繁多,一些相对年轻的  CPU,随着  I/O  功能模块的不断丰富,有着相 当长的生存周期。新的 CPU 类型的加盟,使单片机队伍不断壮大,给用户带来了更多的选择 余地。目前初学者对于众多的芯片处理器技术认识不足,面临着产品的选择问题,因此针对市 场上应用较多的单片机和微处理器技术做个简单的介绍。

习题一 

1­1  名词解释 微处理器、微型计算机、单片机、嵌入式系统  1­2  单片机经历了几个发展阶段?

(20)

1­3  单片机的发展方向是什么?  1­4  单片机有哪些种类?各有何特点?  1­5    8 位机和 16 位机的本质区别是什么?  1­6  单片机主要应用于哪些领域?  1­7    MCS­51 系列单片机中 8031、80C51、8751 的区别是什么?  1­8  将下列一组二进制数转换成十进制数。 (1)10011100B  (2)110001101001B  (3)1001101000110110B  1­9  将下列一组十六进制数转换成十进制数。 (1)65H  (2)0B9H  (3)3FA6H  (4)290H  1­10  将下列一组十进制数转换成二进制数和十六进制数。 (1)35D  (2)209D  (3)387D  (4)7462D  (5)2495D  1­11  将下列一组十六进制数转换成二进制数。 (1)72H  (2)0A9H  (3)0F89H  (4)0A000H  1­12  求下列一组数字的原码、反码、补码。 (1)86  (2)116  (3)­34  (4)­79  1­13  利用补码求十进制数的运算 (1)89­36  (2)52­79  1­14  已知 BCD 码 X=75,Y=34,求 X­Y。  1­15  已知 BCD 码 X=66,Y=47,求 X­Y。  1­16    AVR 单片机与 51 单片机有什么不同?  1­17    PIC 单片机的特点是什么?  1­18    STM32 处理器是多少位的处理器?其主要特点是什么?  1­19    DSP 处理器内部有 CPU 吗?它与单片机的区别是什么?

參考文獻

相關文件

22 韩立余: 《当代单边主义与多边主义的碰撞及其发展前景》 , 《国际经济法学刊》2018 年第 4 期,第 3 9-40

的确如此。人在遇到鲨鱼时,心跳就会加速,正是那快速跳动的心脏引

通过 YCT(三级)的考生可以用汉语就熟悉的日常话题进行简单而直接的 交流,达到初级汉语优等水平。..

通过 YCT(三级)的考生可以用汉语就熟悉的日常话题进行简单而直接的 交流,达到初级汉语优等水平。..

通过 HSK(二级)的考生可以用汉语就熟悉的日常话题进行简单而直接的 交流,达到初级汉语优等水平。..

通过 HSK(二级)的考生可以用汉语就熟悉的日常话题进行简单而直接的 交流,达到初级汉语优等水平。..

信度(reliability):當受試者的信度越高越好,也就表示其越具可信度;信度的值介於 1 至 0 之間,最高值為 1,而 0.7 以上都算可信範圍。效度(validity):Infit Zstd

更能有效且快速評估之目的,Hoosier Riverwatch (2000) 提出市民版 的 QHEI 評 估 法 (Citizens Qualitative Habitat Evaluation Index,