第1章 单片机入门与C语言基础
1.1 单片机简介
1.1.1 什么是单片机
单片机是单片微型计算机(Single Chip Microcomputer)的简称,由于单片机主要用于控制领域,所以又称作微型控制器(Microcontroller Unit,MCU)。单片机与微型计算机都是由CPU、存储器和输入输出接口电路(I/O接口电路)等组成的,但两者又有所不同,微型计算机(PC)和单片机(MCU)的基本结构分别如图1-1(a)、(b)所示。
图1-1 微型计算机与单片机的结构
从图1-1可以看出,微型计算机是将CPU、存储器和输入/输出接口电路等安装在电路板(又称电脑主板)上,外部的输入/输出设备(I/O设备)通过接插件与电路板上的输入/输出接口电路连接起来。单片机则是将CPU、存储器和输入/输出接口电路等做在半导体硅片上,再接出引脚并封装起来构成集成电路,外部的输入/输出设备通过单片机的外部引脚与内部输入/输出接口电路连接起来。
单片机是一种内部集成了很多电路的IC芯片(又称集成电路、集成块),图1-2列出了几种常见的单片机,有的单片机引脚较多,有的引脚少,同种型号的单片机,可以采用直插式引脚封装,也可以采用贴片式引脚封装。
图1-2 几种常见单片机外形
与单片机相比,微型计算机具有性能高、功能强的特点,但其价格昂贵,并且体积大,所以在一些不是很复杂的控制场合,如电动玩具、缤纷闪烁的霓虹灯、家用电器等设备中,完全可以采用价格低廉的单片机进行控制。
1.1.2 单片机应用系统的组成及举例说明
1. 组成
单片机是一块内部包含有CPU、存储器和输入/输出接口等电路的IC芯片,但单独一块
单片机芯片是无法工作的,必须给它增加一些有关的外围电路来组成单片机应用系统,才能完成指定的任务。典型的单片机应用系统的组成如图1-3所示,即单片机应用系统主要由单片机芯片、输入部件、输入电路、输出部件和输出电路组成。
2. 工作过程举例说明
图1-3 典型的单片机应用系统的组成
图1-4是一种采用单片机控制的DVD影碟机托盘检测及驱动电路,下面以该电路来说明单片机应用系统的一般工作过程。
当按下“OPEN/CLOSE”键时,单片机a脚的高电平(一般为3V以上的电压,常用1或H表示)经二极管VD和闭合的按键S2送入b脚,触发单片机内部相应的程序运行,程序运行后从e脚输出低电平(一般为0.3V以下的电压,常用0或L表示),低电平经电阻R3送到PNP型三极管VT2的基极,VT2导通,+5V电压经R1、导通的VT2和R4送到NPN型三极管VT3的基极,VT3导通,于是有电流流过托盘电机(电流途径是:+5V→R1→VT2的发射极→VT2的集电极→接插件的3脚→托盘电机→接插件的4脚→VT3的集电极→VT3的发射极→地),托盘电机运转,通过传动机构将托盘推出机器,当托盘出仓到位后,托盘检测开关S1断开,单片机的c脚变为高电平(出仓过程中S1一直是闭合的,c脚为低电平),内部程序运行,使单片机的e脚变为高电平,三极管VT2、VT3均由导通转为截止,无电流流过托盘电机,电机停转,托盘出仓完成。
图1-4 一种采用单片机控制的DVD影碟机托盘检测及驱动电路
在托盘上放好碟片后,再按压一次“OPEN/CLOSE”键,单片机b脚再一次接收到a脚送来的高电平,又触发单片机内部相应的程序运行,程序运行后从d脚输出低电平,低电平经电阻R2送到PNP型三极管VT1的基极,VT1导通,+5V电压经R1、VT1和R5送到NPN型三极管VT4的基极,VT4导通,马上有电流流过托盘电机(电流途径是:+5V→R1→VT1的发射极→VT1的集电极→接插件的4脚→托盘电机→接插件的3脚→VT4的集电极→VT4的发射极→地),由于流过托盘电机的电流反向,故电机反向运转,通过传动机构将托盘收回机器,当托盘入仓到位后,托盘检则开关S1断开,单片机的c脚变为高电平(入仓过程中S1一直是闭合的,c脚为低电平),内部程序运行,使单片机的d脚变为高电平,三极管VT1、VT4均由导通转为截止,无电流流过托盘电机,电机停转,托盘入仓完成。
在图1-4中,检测开关S1和按键S2均为输入部件,与之连接的电路称为输入电路;托盘电机为输出部件,与之连接的电路称为输出电路。
1.1.3 单片机的分类
设计生产单片机的公司很多,较常见的有Intel公司生产的MCS-51系列单片机、Atmel公司生产的AVR系列单片机、MicroChip公司生产的PIC系列单片机和美国德州仪器(TI)公司生产的MSP430系列单片机等。
8051单片机是Intel公司推出的最成功的单片机产品,后来由于Intel公司将重点放在PC机芯片(如8086、80286、80486和奔腾CPU等)开发上,故将8051单片机内核使用权以专利出让或互换的形式转给世界许多著名IC制造厂商,如Philips、NEC、Atmel、AMD、Dallas、siemens、Fujutsu、OKI、华邦、LG等,这些公司在保持与8051单片机兼容的基础上改善和扩展了许多功能,设计生产出与8051单片机兼容的一系列单片机。这种具有8051硬件内核且兼容8051指令的单片机称为MCS-51系列单片机,简称51单片机。新型51单片机可以运行8051单片机的程序,而8051单片机可能无法正常运行新型51单片机新增功能编写的程序。
51单片机是目前应用最为广泛的单片机,生产51单片机的公司很多,且型号众多,但不同公司各型号的51单片机之间也有一定的对应关系。表1-1是部分公司的51单片机常见型号及对应表,对应型号的单片机功能基本相似。
表1-1 部分公司的51单片机常见型号及对应表
1.1.4 单片机的应用领域
单片机的应用非常广泛,已深入到工业、农业、商业、教育、国防、日常生活等各个领域。下面简单介绍一下单片机在一些领域的应用。
(1)单片机在家电方面的应用
单片机在家电方面的应用主要有:彩色电视机、影碟机内部的控制系统;数码相机、数码摄像机中的控制系统;中高档电冰箱、空调器、电风扇、洗衣机、加湿机和消毒柜中的控制系统;中高档微波炉、电磁灶和电饭煲中的控制系统等。
(2)单片机在通信方面的应用
单片机在通信方面的应用主要有:移动电话、传真机、调制解调器和程控交换机中的控制系统、智能电缆监控系统、智能线路运行控制系统、智能电缆故障检测仪等。
(3)单片机在商业方面的应用
单片机在商业方面的应用主要有:自动售货机、无人值守系统、防盗报警系统、灯光音响设备、IC卡等。
(4)单片机在工业方面的应用
单片机在工业方面的应用主要有:数控机床、数控加工中心、自动操作、机械手操作、工业过程控制、生产自动化、远程监控、设备管理、智能控制、智能仪表等。
(5)单片机在航空、航天和军事方面的应用
单片机在航空、航天和军事方面的应用主要有:航天测控系统、航天制导系统、卫星遥控遥测系统、载人航天系统、导弹制导系统、电子对抗系统等。
(6)单片机在汽车方面的应用
单片机在汽车方面的应用主要有:汽车娱乐系统、汽车防盗报警系统、汽车信息系统、汽车智能驾驶系统、汽车全球卫星定位导航系统、汽车智能化检验系统、汽车自动诊断系统、交通信息接收系统等。