单片机学习心得之12020/5/25孙关荣说明名称说明名称名称说明名称说明52系列可用作定时器/计数器2的计数脉冲输入端T2—P1.0—140—VCC接+5V电源正极52系列可用作定时器/计数器2的外部控制端T2EX—P1.1—239—P0.0AD0P1.2—338—P0.1AD1P1.3—437—P0.2AD2P1.4—536—P0.3AD3P1.5—635—P0.4AD4P1.6—734—P0.5AD5P1.7—833—P0.6AD6RSTVPD—932—P0.7AD7串行通信数据信号输入RXD—P3.0—1031—EA片内、外程序存储器选用端(接高低电平,接低电平选用片外)VDD21V编程电源VDD的输入端串行通信数据信号输出TXD—P3.1—1130—ALEP0口低8位地址锁存信号有效输出端(接片外地址锁存芯片)当系统没有扩展地址/数据总线时,作为时钟脉冲(1/6fosc)输出端PROG编程脉冲输入端外部中断0信号输入端INT0—P3.2—1229—PSEN外部中断1信号输入端INT1—P3.3—1328—P2.7A15定时器/计数器0脉冲信号输入端T0—P3.4—1427—P2.6A14定时器/计数器1脉冲信号输入端T1—P3.5—1526—P2.5A13接片外数据存储器“写选通信号”输出端WR—P3.6—1625—P2.4A12接片外数据存储器“读选通信号”输出端RD—P3.7—1724—P2.3A11同右片内反相放大器输出端XTAL2—1823—P2.2A10同右片内反相放大器输入端XTAL1—1922—P2.1A9接+5V电源地端VSS—2021—P2.0A8归纳:1:51系列单片机功能多,引脚数少,致使许多引脚具有第二功能。其中P0、P2兼作地址/数据总线使用,P3兼作输出控制信号和输入外部状态信息使用,2:单片机对外呈三总线结构:1:由P0、P2组成16位地址总线A0~A15(P0口分时复用为低8位地址,P2口用为高8位地址),因为是16位地址线,使片外存储器的寻址范围达到64K;2:由P0分时复用为数据总线D0~D7;3:由ALE、PSEN、RST、EA与P3口的INT0、INT1、T0、T1、WR、RD共10个引脚组成控制总线。3:ALE地址锁存脉冲信号每机器周期出现两次,在不访问片外数据存储器时,由于ALE信号不出现,可用作对外输出的时钟脉冲,脉冲频率为晶振频率fosc的1/6(或机器周期的1/3),但在访问片外数据存储器时,由功能151系列单片微机引脚功能图功能2外接晶振与片内反相放大器构成振荡器(外接晶振一般选用11.0592M,因为可以准确地得到9600波特率和19200波特率,电容通常取30pF,尽量靠近芯片安装)也可采用片外振荡器,CHMOS型芯片XTAL1接脉冲输入(带上拉电阻),XTAL2悬浮;HMOS型芯片XTAL1接地,XTAL2接脉冲输入(带上拉电阻)。O引脚号引脚号芯片功能1功能2既可作为片外存储器扩展接口(独立用作高8位地址总线出口),也可作为通用I/O接口使用。该口的每一位输出级均内含上拉电阻。用于I/O输入时,必须先向锁存器写入1才能实现读操作。P2口的每一位输出可驱动4个LS型TTL负载(每个负载100uA,总计400uA)。扩展总线归纳:在51上面做复杂的并行扩展是没有必要的。比如,扩展I/O口、RAM、EPROM和A/D、D/A等等。可以直接购买带有较大片内存储或A/D、D/A的单片机;可以使用I2C接口的芯片以扩展I/O口和A/D、D/A,以及SPI接口扩展LED显示,例如:MAX7219等芯片。或者直接使用嵌入式单片机ARM(I/O接口多,还可以在arm上加一个操作系统,程序既可靠又容易编写)。接有片外存储器与扩展I/O接口且寻址超过256个字节时,用作高8位地址总线。这时,P2口不再作为I/O口使用。准双向I/O接口,专用于通用I/O的输入输出.该口的每一位输出级均内含上拉电阻。用于I/O输入时,必须先向锁存器写入1实现读操作。P1口的每一位输出可驱动4个LS型TTL负载(每个负载100uA,总计400uA)。准双向I/O接口,该口的每一位均兼有第二功能,即输出控制信号和输入外部状态信息。该口的每一位输出级均内含上拉电阻。用于I/O输入时,必须先向锁存器写入1实现读操作。P3口的每一位输出可驱动4个LS型TTL负载(每个负载100uA,总计400uA)。复位端。振荡器工作时出现持续2个机器周期的高电平就可复位,上电复位须10ms以上。通常做法是把看门狗电路和复位电路结合在一起,以增强抗干扰能力.。既可作为片外扩展接口(分时复用为地址/数据总线,其中地址总线用作低8位,数据总线由其独立担任),也可作为通用I/O接口使用。该口的每一位输出级均不含上拉电阻。如果当作通用I/O接口,用作I/O输出时,因其输出级是开漏电路(片内输出级的上拉场效应管V1处于截止状态,输出级变为漏极开路电路),故有些情况下(如用其输出去驱动普通晶体管的基极或NMOS、TTL输入电路时)需外接上拉电阻;用作I/O输入时,应先向端口锁存器(80H)写1,使片内输出级的场效应管V1、V2全部截止,从而使引脚能输入正确的高低电平信号,防止误读。但此时片内场效应管管脚处于悬浮状态,因此如果输入由集电极开路或漏极开路电路驱动,也应外加提升电阻。P1、P2、P3口用于输出时与P0一样,用于输入时由于它门的输出级有上拉电阻,任何TTL或NMOS电路都能正常驱动P1~P3口。P0口的每一位输出可驱动8个LS型TTL负载(每个负载100uA,总计800uA)。接有片外存储器与扩展I/O接口时,分时复用为低8位地址总线和双向数据总线。如果当作地址/数据总线使用时,无需上拉电阻,且作数据输入时无需进行先写“1”的操作。由于是分时复用,片外应添加专用的地址锁存芯片,单片机通过ALE发出地址锁存信号。这时,P0口不再作为I/O口使用。接片外程序存储器读选通信号(低电平)输出端,在访问片外数据存储器时,该信号将不出现。I/O接口要点:单片机的输入输出口线是最容易引进干扰的地方;如产品是工作在干扰比较大的环境,需要将所有的I/O口线光电隔离。有时在采取了所有能够想到的光电隔离等措施之后,还是不行,可以试试选用不同品牌的单片机如intel的8031等往往能解决问题。51系列的单片机比较容易受到干扰;没有看门狗电路(常用的有max691和ca1161等)是不行的,当程序跑飞时就回不来,死机。最佳性价比是直接选用AT89S51等内置看门狗的单片机。单片机学习心得之12020/5/25孙关荣于ALE脉冲信号每机器周期出现两次,因而ALE脉冲会跳空一个,因此就不能作为时钟输出。ALE一般用来连接外接地址锁存器芯片的锁存引脚。4:51系列单片机常见的晶振频率有12MH、24MH、40MH等,振荡器输出的脉冲经2分频(分成P1、P2两相位)成为内部时钟信号,用作单片机的内部控制信号,其周期称为时钟周期,6个时钟周期构成1个机器周期。5:设计产品时,要在关键的地方:电源、串口、看门狗的输出和输入、I/O口等加不同颜色的LED指示,便于调试;查看门狗的复位输出可在电路板上加一个下拉LED,这样比较直观。