单片机概述
什么是单片机
单片机=单片微型计算机(也称MCU微控制器,也叫嵌入式控制器EMCU)
在一块半导体硅片上集成微处理器(CPU),存储器(RAM,ROM,EPROM)和各种输入输出接口(定时器\计数器,并行I/O口,串行口,A/D转换器以及脉宽调制器PWM等),具有计算机的属性。
主要实现:测试和控制功能。
按用途分类:通用型和专用型
通用型–性能全,适应性强
专用型–针对某一个特定的用途设计的单片机
按操作位数可分为:1位单片机、4位单片机、8位单片机、16位单片机、32位单片机
MCS-51单片机的硬件结构
把作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上,其功能部件组成如下:
MCS-51单片机片内结构
1、微处理器(CPU)
包含运算器和控制器两部分
2、数据存储器(RAM)
相当于内存,只负责存储单片机运行期间的工作变量、运算的中间结果、数据缓存和缓冲、标志位等。
3、程序存储器(ROM/EPROM),8031没有此部件
用来存储程序(只读存储器)
4、4个8位并行I/O口(P0口、P1口、P2口、P3口)
4个并行8位I/O口
5、1个串行口
一个全双工的串行口,4中工作方式,用来串行通信,扩展并行I/O口
6、2个16位定时器/计数器
定时和计数
7、中断系统
5个中断源,2级中断优先权(为使系统能及时响应并处理发生的所有中断,系统根据引起中断事件的重要性和紧迫程度,硬件将中断源分为若干个级别,称作中断优先级。等级越高越先响应)
8、特殊功能寄存器(SFR)
共21个,用于CPU对片内各功能部件进行管理、控制、监视。(实际是一些控制寄存器和状态寄存器,是一个具有特殊功能的RAM区)
注:
串行口和并行口的区别+I/O口
a、串行口==串口
相当于一条通道,数据和控制信息是一位接一位地传送出去的。虽然这样速度会慢一些,但传送距离较并行口更长,因此若要进行较长距离的通信时,应使用串行口。无数据干扰
b、并行口
相当于8个通道,同时传出八位数据(一个位元组)。有数据干扰
c、I/O端口
CPU与外部设备连接和数据交换使用I/O接口
CPU与存储器的连接和数据交换使用存储器接口
MCS-51引脚
具体需要根据芯片手册来设计,此处以MCS-51双列直插封装方式的引脚
共40个引脚,按功能划分为3类:
(1)、电源及时钟引脚:Vcc、Vss;XTAL1、XTAL2
电源引脚接入单片机的工作电源
a、Vcc(40引脚):接+5V电源
b、Vss(20引脚): 接地
时钟引脚
外接晶体+片内的反向放大器构成1个振荡器,提供时钟信号
(2)、控制引脚:PSEN 、ALE、EA 、RESET(RST)
此类引脚提供控制信号,有的还具有复用功能
a、RST/VPD:RST-复位信号输入端,高电平有效。运行时,在此引脚上加上持续时间大于2个机器周期(24个时钟振荡周期)的高电平,就可以完成复位。
VPD-备用电源输入端,当Vcc故障,电平下降到规定值,将+5v电源自动接入RST端,为内部RAM供电,保证数据不丢失。
b、ALE/PROG :ALE-输出地址锁存允许信号,不断输出正脉冲信号,当单片机访问外部存储器时,ALE输出信号的负跳沿用于单片机发出的低8位地址经外部锁存器锁存的锁存控制信号。判断单片机芯片的好坏,可看该引脚是否输出正脉冲信号。
PROG对片内EPROM编程写入时,此引脚作为编程脉冲输入端。
c、PSEN:程序存储器允许输出控制端,访问外部程序存储器时,此引脚输出脉冲负跳沿作为外部程序存储器的选通信号,连接外部程序存储器的OE(输出允许)端
d、EA:内外程序存储器选择控制端,引脚为高电平时,访问片内程序存储器,当PC(程序计数器)值超过0FFFH时(超出了地址范围),将自动转向执行外部程序存储器的程序。
Vpp,进行固化编程时,用于施加较高的编程电压(+21V或+12V)
(3)、I/O口引脚:P0、P1、P2、P3
注
振荡器和晶体振荡器
振荡器-能量转换装置,将直流电能转换为一定频率的交流电能
晶体振荡器-产生频率高度稳定的交流信号
复用
在发送端使用一个复用器,让A、B、C共用一个信道通信,在接收端使用分用器将合起来的数据分发到目标位置,就叫做信道的复用。
时分复用:用户是在不同的时间占用同样的频带宽度
频分复用:用户在同样的时间占用不同的带宽资源
码分复用:用户可以在同样的时间使用同样的频带进行通信,但用户使用不同码型
周期
[引自百度]
单片机的机器周期=12s/晶振频率
锁存
地址锁存是因为复用信号线和引脚时,会同时包含地址和数据,用一些专用的信号联络线来区分这些信号。
锁存器是一种对脉冲电平敏感的存储单元电路,它们可以在特定输入脉冲电平作用下改变状态。
锁存,就是把信号暂存以维持某种电平状态。