1.1 单片机的基本概念
单片机的全称为单片微型计算机(Single Chip Microcomputer),它是将计算机的基本部件微型化并集成在一块芯片上的微型计算机,在一块硅片上集成了中央处理器(CPU)、存储器(RAM、ROM、FLASH、E2PROM等)、输入/输出接口(并行I/O接口、同步串行口、异步串行口等)及各种外围设备(定时器、计数器、A/D、D/A、PWM等)。从应用领域来看,单片机主要用于控制,所以又称为微控制器(Microcontroller Unit)或嵌入式控制器(Embedded Controller)。
1.1.1 单片机的分类
目前市面上的单片机品种很多,至少有五十多个系列、三百多个品种,可按以下方式进行分类。
(1)按适用范围分
通用型——是指可把开发资源(如FLASH、RAM、I/O接口、外设等)全部提供给应用者的单片机。其内部资源比较丰富,性能全面且适用性强,能覆盖多种应用需求,如80C51单片机。用户可以根据需要,设计不同的应用控制系统。
专用型——是指其硬件结构和指令是按照某个特定用途而专门设计的单片机。例如,打印机控制器、录音机机芯控制器等。这类单片机不属于本书讨论的范围。
(2)按制造工艺分
HMOS工艺——高密度短沟道MOS工艺,具有高速度、高密度的特点。
CHMOS(或HCMOS)工艺——互补的金属氧化物的HMOS工艺,是CMOS与HMOS的结合,具有高密度、高速度、低功耗的特点。
(3)按字长分
字长是指单片机内部参与运算的数的位数。它决定了单片机内部寄存器、算术逻辑单元(Arithmetic Logic Unit, ALU)和数据总线的位数,直接影响着机器的硬件规模和造价。字长直接反映了单片机的计算精度。
单片机按字长可分为4位机(如NEC公司的μPD75XX系列)、8位机(如Intel公司的MCS-51系列)、16位机(如Intel公司的MCS-96/98系列)和32位机(如Motorola公司的MC683XX系列)等,字长越长其运算处理的速度越快,功能越强大。从近年来的使用情况看,8位单片机使用率最高,其次是32位。前者主要用于满足大量低端控制领域应用的需求,后者主要用于满足一些高端新兴领域(如网络、通信、多媒体、数码产品和信息家电等)对海量数据处理能力的需要。对于工作速度不高、数据处理量不大、控制过程不很复杂的场合,如家用电器、商用产品等,可选用8位单片机;对于要求很高的实时控制及复杂的过程控制,如机器人、信号处理等,则最好选用32位单片机。
尽管单片机种类繁多,但它们的基本结构和功能类似,因此可以选择以一种单片机为主进行学习,并熟练掌握。目前,教学的首选机型仍然是8位单片机。
1.1.2 单片机的指标
衡量单片机的性能指标有很多,包括速度、位数、功耗、I/O接口数量、存储容量、工作电压、价格、体积、重量等。
(1)速度
CPU处理速度,用每秒执行百万条指令表征,单位是MIPS(Million Instruction Per Second),目前最快的单片机可达200MIPS。单片机的速度与系统时钟相关联,但并不是频率越高处理速度就越快。对于同一型号的单片机来说,采用频率高的时钟一般比频率低的速度快。
(2)位数
位数是指CPU一次基本操作处理的数据位数。它与CPU内部数据总线宽度是一致的。位数越多,所表示的数据精度就越高。在完成同样精度的运算时,位数较多的单片机比位数较少的单片机运算速度快。
(3)功耗
为了满足广泛使用于便携式系统的要求,目前许多单片机内的工作电压仅为1.8~3.6V,工作电流仅为数百毫安,一些低功耗单片机的静态电流甚至可以达到μA或nA级。几乎所有的单片机都有WAIT、STOP等省电运行方式。目前,低电压供电的单片机电源下限已达1~2V甚至更低。
(4)I/O接口数量
不同类型的单片机其输入/输出接口有很大差别。一般从几个到几十个。例如,MCS-51系列单片机有4个8位并行I/O接口,使用上很方便。在片内接口不够时,可考虑进行接口扩展。
(5)存储器
存储器包括数据存储器和程序存储器。数据存储器字节数通常在几十字节到几百字节之间。程序存储器空间较大,从几KB到几百MB。
(6)外设数量
随着半导体集成技术的高速发展,单片机集成的外设数量越来越多,功能也越来越强大,提供给用户的硬件资源非常丰富。例如,一些高性能单片机集成了A/D、D/A、PWM、SPI、I2C、CAN、比较器等多达十几个模块。
(7)扩展能力
当单片机片内资源不够时,需要扩展外部硬件模块,扩展能力决定了单片机最多能扩展多少容量的外部硬件设备。