MCS-51系列单片机的特点及应用1-1 单片机及其特点单片微型计算机(Single-Chip Microcomputer),简称单片计算机.就是将CPU,RAM,ROM,定时/计时器和多种接口集成在一块芯片上的微型计算机.※其主要特点如下:片内存储容量较小:原因是受集成度的限制.ROM一般小于8KB,RAM一般小于256B,但可以在外部扩展.通常ROM,RAM可分别扩展至64KB.可靠性高:因为芯片是按工业测控环境要求设计的,故抗干扰的能力优于PC 机.系统软件(如:程序指令,常数,表格)固化在ROM中,不易受病毒破坏.许多信号的通道均在一个芯片内,故运作时系统稳定可靠.便于扩展:片内具有计算机正常运行所必需的部件,片外有很多供扩展用的(总线,并行和串行的输入/输出)管脚,很容易组成一定规模的计算机应用系统.控制功能强:具有丰富的控制指令:如:条件分支转移指令,I/O口的逻辑操作指令,位处理指令.实用性好:体积小,功耗低,价格便宜,易于产品化.1-2 单片机的发展第1阶段(1971年—1978年),以MCS-48系列为代表,称4位单片机.在片内:CPU有4位或8位;ROM有1KB或2KB;RAM有64B或128B;只有并行接口,无串行接口;只有1个8位的定时/计时器;中断源只有2个.在片外:寻址范围只有4KB;芯片引脚有40个.第2阶段(1978年—1983年),以MCS-51系列为代表,称8位单片机.在片内:CPU有8位;ROM有4KB或8KB;RAM有128B或256B;有串/并行接口;有2个或3个16位的定时/计时器;中断源有5至7个.在片外:寻址范围有64KB;芯片引脚有40个.第3阶段(1983年以后),以MCS-96系列为代表,称16位单片机.在片内:CPU有16位;ROM有8KB;RAM有232B;有串/并行接口;有4个16位的定时/计时器;中断源有8个;增加了D/A和A/D转换电路.在片外:寻址范围有64KB;芯片引脚有48个或68个.※以上MCS-51系列以其优良的性价比,在我国得到了广泛的应用.1-3 单片机的应用单片机主要有单机应用和多机应用.单机应用:(一个系统使用一块单片机——普通应用模式)家用电器:如高档的洗衣机,空调器,电冰箱,彩电,DVD,音响,手机,高档电子玩具等电器,用单片机做自动控制.智能设备:用单片机改造普通仪器,仪表,读卡机等,使其(集测量,处理,控制功能为一体)智能化,微型化.网络与通信的智能接口:在大型计算机控制的网络或通信电路与外围设备的接口电路中,用单片机来控制或管理,可大大提高系统的运行速度和接口的管理水平.工业测控:对工业设备(如机床,汽车,高档中西餐厨具,锅炉,供水系统,生产自动化,自动报警系统,卫星信号接收等)进行智能测控,大大地降低了劳动强度和生产成本,提高了产品质量的稳定性. 多机应用:(一个系统使用多块单片机——高科技应用模式)功能弥散系统:并行多机处理系统:局域网络系统:单片机的发展趋势单片机从8位、16位到32位,数不胜数,应有尽有,有与主流C51系列兼容的,也有不兼容的,但它们各具特色,互成互补,为单片机的应用提供广阔的天地。
纵观单片机的发展过程,可以预示单片机的发展趋势,大致有:1.低功耗CMOS化MCS-51系列的8031推出时的功耗达630mW,而现在的单片机普遍都在100mW左右,随着对单片机功耗要求越来越低,现在的各个单片机制造商基本都采用了CMOS(互补金属氧化物半导体工艺)。
象80C51就采用了HMOS(即高密度金属氧化物半导体工艺)和CHMOS(互补高密度金属氧化物半导体工艺)。
CMOS虽然功耗较低,但由于其物理特征决定其工作速度不够高,而CHMOS则具备了高速和低功耗的特点,这些特征,更适合于在要求低功耗象电池供电的应用场合。
所以这种工艺将是今后一段时期单片机发展的主要途径。
2.微型单片化现在常规的单片机普遍都是将中央处理器(CPU)、随机存取数据存储(RAM)、只读程序存储器(ROM)、并行和串行通信接口,中断系统、定时电路、时钟电路集成在一块单一的芯片上,增强型的单片机集成了如A/D转换器、PMW(脉宽调制电路)、WDT(看门狗)、有些单片机将LCD(液晶)驱动电路都集成在单一的芯片上,这样单片机包含的单元电路就更多,功能就越强大。
甚至单片机厂商还可以根据用户的要求量身定做,制造出具有自己特色的单片机芯片。
此外,现在的产品普遍要求体积小、重量轻,这就要求单片机除了功能强和功耗低外,还要求其体积要小。
现在的许多单片机都具有多种封装形式,其中SMD(表面封装)越来越受欢迎,使得由单片机构成的系统正朝微型化方向发展。
3.主流与多品种共存现在虽然单片机的品种繁多,各具特色,但仍以80C51为核心的单片机占主流,兼容其结构和指令系统的有PHILIPS公司的产品,ATMEL公司的产品和中国台湾的Winbond系列单片机。
所以C8051为核心的单片机占据了半壁江山。
而Microchip公司的PIC精简指令集(RISC)也有着强劲的发展势头,中国台湾的HOLTEK公司近年的单片机产量与日俱增,与其低价质优的优势,占据一定的市场分额。
此外还有MOTOROLA公司的产品,日本几大公司的专用单片机。
在一定的时期内,这种情形将得以延续,将不存在某个单片机一统天下的垄断局面,走的是依存互补,相辅相成、共同发展的道路。
MCS-51单片机原理一、 MCS-51单片机的基本组成(以AT89C51为例)1.单片机内部有几个并行I/O端口名称是什么(答:4个,是P0~P3 )2.内部程序存储器ROM空间是多大六个特定单元的作用是什么(答:内部集成了4K的程序存储器ROM.在ROM中有六个单元具有特定作用:0000H单元:复位时程序计数器PC所指向的单元;0003H单元:外部中断/INT0的程序入口地址;000BH单元:定时器T0溢出中断的程序入口地址;0013H单元:外部中断/INT1的程序入口地址;001BH单元:定时器T1的溢出中断的程序入口地址;0023H单元:串行口的中断程序入口地址。
)3.内部的数据存储器RAM空间多大普通数据存储区和SFR各自的位置(答:内部具有256B的数据存储器RAM.内部RAM从功能上将256B空间分为二个不同的块:低128B的普通数据存储区RAM块,特殊功能寄存器SFR在256B字节中的高128B中,仅仅使用了21寄存器.)4.哪些SFR(特殊功能寄存器)可以按位寻址(答:凡是SFR的地址能被8整除,则这些单元就可以按位寻址. 如:累加器A E0H程序状态字PSW D0H中断允许寄存器IE A8H定时器控制寄存器TCON 88H并行端口P0~P3 80H、90H、A0H、B0H等)5.单片机内部定时/计数器有几个名称是什么(答:2个16位的定时/计数器 T0、T1)6.MCS-51单片机的中断源有几个各是什么(答:设有5个中断源T0、T1、Int0、Int1、ES )二、MCS-51单片机的指令系统1.51单片机的指令系统有多少条指令几种寻址方式(答:111条指令和7种寻址方式)2.什么是指令的长度什么是指令周期(答:指令的长度是指令的字节数.单字节,双字节和三字节.指令周期是执行一条指令所需要的时间,它是时序图中最大的时间单位。
)3.若系统采用12MHZ晶体,一个单机器周期的指令执行时间是多少(答:1/12μs×12×1=1μs)三、使用指令分别完成下面操作:1.开放(使能)串口中断;(答:SETB EA )2.将定时/计数器T0设定为定时方式、模式一;(答:MOV TM0D,#01H )3.将累加器A中的数据通过串行口发送出去;(答:MOV SBUF, A )4.将累加器A赋值0FH并通过P1口输出;(答:MOV A,0FH MOV P1,A)四、编程试编程,将数据存储器20H~2FH单元分别赋值00H~0FH;答:MOV CX, 0FHMOV AX, 00HMOV BX, 001FHLP: INC BXMOV [BX],AXINC AXLOOP LPMOV [0020H],00HMOV [0021H],01HMCS-51单片机存储器结构MCS-51单片机在物理结构上有四个存储空间:1、片内程序存储器2、片外程序存储器3、片内数据存储器4、片外数据存储器但在逻辑上,即从用户的角度上,8051单片机有三个存储空间:1、片内外统一编址的64K的程序存储器地址空间(MOVC)2、256B的片内数据存储器的地址空间(MOV)3、以及64K片外数据存储器的地址空间(MOVX)在访问三个不同的逻辑空间时,应采用不同形式的指令(具体我们在后面的指令系统学习时将会讲解),以产生不同的存储器空间的选通信号。
程序内存ROM寻址范围:0000H ~ FFFFH 容量64KBEA = 1,寻址内部ROM;EA = 0,寻址外部ROM地址长度:16位作用:存放程序及程序运行时所需的常数。
七个具有特殊含义的单元是:0000H ——系统复位,PC指向此处;0003H ——外部中断0入口000BH —— T0溢出中断入口0013H ——外中断1入口001BH —— T1溢出中断入口0023H ——串口中断入口002BH —— T2溢出中断入口内部数据存储器RAM物理上分为两大区:00H ~ 7FH即128B内RAM 和 SFR区。
作用:作数据缓冲器用。
上图是8051单片机存储器的空间结构图程序存储器一个微处理器能够聪明地执行某种任务,除了它们强大的硬件外,还需要它们运行的软件,其实微处理器并不聪明,它们只是完全按照人们预先编写的程序而执行之。
那么设计人员编写的程序就存放在微处理器的程序存储器中,俗称只读程序存储器(ROM)。
程序相当于给微处理器处理问题的一系列命令。
其实程序和数据一样,都是由机器码组成的代码串。
只是程序代码则存放于程序存储器中。
MCS-51具有64kB程序存储器寻址空间,它是用于存放用户程序、数据和表格等信息。
对于内部无ROM的8031单片机,它的程序存储器必须外接,空间地址为64kB,此时单片机的端必须接地。
强制CPU从外部程序存储器读取程序。
对于内部有ROM的8051等单片机,正常运行时,则需接高电平,使CPU先从内部的程序存储中读取程序,当PC值超过内部ROM 的容量时,才会转向外部的程序存储器读取程序。
当=1时,程序从片内ROM开始执行,当PC值超过片内ROM 容量时会自动转向外部ROM空间。
当=0时,程序从外部存储器开始执行,例如前面提到的片内无ROM的8031单片机,在实际应用中就要把8031的引脚接为低电平。
8051片内有4kB的程序存储单元,其地址为0000H—0FFFH,单片机启动复位后,程序计数器的内容为0000H,所以系统将从0000H单元开始执行程序。