51单片机概述

控制/MCU

1878人已加入

描述

单片机是什么?

在学之前必须要明白这个东西是什么,怎么用,为什么能这样用。理解这三个问题,那么51单片机就可以学得很好。

单片机的对比

这里只对8051与8052进行对比:

型号 Flash(ROM) RAM I/O 定时/计数器 中断源 引脚数

AT89C51 4KB 128B 32 2 5 40

AT89c52 8KB 256B 32 3 8 40

引脚描述


晶体

20引脚VSS:电源负极

40引脚VCC:电源正极(+5V)

19引脚XTAL1:片内时钟振荡器的输入端;当使用片内时钟振荡器时,这个引脚接石英晶体和微调电容。

18引脚XTAL2:片内时钟振荡器的输出端;当使用片内时钟振荡器时,这个引脚接石英晶体和微调电容。

9引脚RST:复位信号输入端;高电平有效(无效状态电平必须低于0.5V)。

31引脚EA/Vpp:

EA=1,访问片内程序存储器,但在PC(程序计数器)值 超过0FFFH时,即超出片内程序存储器的4K字节地址范围时,将自动转向执行外部程序存储器内的程序。

EA=0,单片机只访问外部程序存储器

Vpp:对片内Flash进行编程时,该引脚接入编程电压。

通常情况下,将此引脚与VCC接在一起。

30引脚ALE/PROG:

ALE:地址锁存控制信号端。不访问外部ROM与RAM时不使用。

PROG:为编程脉冲输入端。

29引脚PSEN:片外程序存储器的选通信号,低电平有效。

以下为I/O端口:

P0:

第一功能:8位,漏极开路的双向I/O口。用时要加上拉电阻。

第二功能:低8位地址线和8位数据线分时复用;此时为真正的双向三态口。

电源时钟,晶振电路

1、内部时钟方式


晶体

1.起振电容C1和C2典型值15~33pF,通常选择为30pF的瓷片电容。

2.晶体的振荡频率一般为12MHz(方便定时计算)和 11.0592MHz(方便串口波特率设置)。

3.晶体和电容尽量安装得与单片机靠近。

2、外部时钟方式


晶体

这种方式常用于多片单片机同时工作。

时序

1、时钟周期: 单片机的基本时间单位。若时钟的晶体的振荡频率为fosc,则时钟周期Tosc=1/fosc。

2、机器周期:CPU完成一个基本操作所需的时间称为机器周期。

AT89S51单片机每12个时钟周期为1个机器周期。

通常,一条指令的执行要分为好几个基本操作,每个基本操作耗时一个机器周期。

3、指令周期:指令周期是执行一条指令所需的时间。

单片机的指令按字节可分为单字节(1个机器周期)、双字节(2个机器周期)、三字节指令(3个机器周期),乘法、除法指令需要(4个机器周期),因此执行一条指令的时间也不相同。

时钟周期==1/fosc ; 机器周期=12*时钟周期 ; 指令周期=1~4机器周期。当使用12M晶振,执行单字节指令的时间 t=12*(1/fosc)=12*(1/12M)=1us。

复位电路

上电自动复位电路:引脚RST加上大于2个机器周期的高电平(2us)就可使单片机复位。


晶体

1.工程上通常认为t=3rc~5rc,充放电结束。

2.先确定复位时间t,然后根据条件确定rc。

最小系统

复位电路的探讨: 若采用上图制作复位电路,使上电延迟100ms复位,选择10K电阻,则计算出电容为109mF,选择100mF。典型值通常选取,10K与10uF,则上电复位时间为:51ms

晶振电路的探讨: 上面已经说了…

I/O口的探讨:“灌电流”:由外设向单片机引脚灌入电流,此时单片机输出低电平;“拉电流”:由单片机引脚向外设输出电流,此时单片机输出高电平;P0口的灌电流最大电流可达26mA,其他I/O稍弱些。而拉电流比较差,大概在1mA。所以通常是以低电平点亮LED灯。P0口用做通用I/O时,需加上拉电阻(1~10K),否则P0口作地址 / 数据总线。
       责任编辑:tzh

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分