通过查看单片机的规格书,我们可以知道单片机有很多引脚,有8引脚的,16引脚等。不同引脚的单片机可以实现不同的功能,在应用在产品上时,先确定功能再选择需要什么功能的引脚,比如常见的I/O端口、AD/DA转换器、定时计数器和应用程序中经常使用的串行通信。今天就为大家详细讲解一下单片机引脚功能。
由于单片机的引脚数量是有限的,而功能太多的话有时候一个引脚就需要承担多种功能,以便软件选择要使用的功能。常用的单片机引脚功能有以下几种:
一、通用I/O端口(GPIO)
输入(I)端口输入某种信号,例如开关或传感器,输出(O)端口提供驱动LED等负载的输出。端口是一个引脚(终端),它是一个输入/输出窗口,也称为GPIO(通用输入/输出)。
GPIO在参考手册和图纸中可能缩写为“PA1”,PA1表示“GPIO端口A的第一个引脚”。
输入端口和输出端口通常是共享的,可以通过寄存器设置进行切换。由于GPIO是数字输入/输出端口,在输入的情况下,根据输入电压区分0或1,在输出的情况下,给出0或1的状态。
如果电源电压为3。3V,H电平将处于约2V或更高的上参考值,而L电平将处于约0。8V或更低的下参考值。通常,在单片机内部,H电平表示为1,L电平表示为0。H电平为1,L电平为0称为正逻辑,H电平为0,L电平为1称为负逻辑。在创建程序时,这个逻辑经常被反转并用于输出。
一些I/O端口可以处理模拟信号,由于可以使用的端口(引脚)有限,因此在设计阶段仔细检查规格的同时分配它们。
二、控制引脚
控制引|脚包括RST、ALE、PSEN、EA/VPP,此类引|脚提供控制信号,有些|脚具有复用功能。
1.RST:复位输入。晶振工作时,RST脚持续2个机器周期高电平将使单片机复位。看门狗计时完成后,RST脚输出96个晶振周期的高电平。特殊寄存器AUXR(地址8EH)。上的DISRTO位可以使此功能无效。在DISRTO默认状态下,复位高电平有效。
2.ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。在flash编程时,此引脚也用作编程输入脉冲。在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,
特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置”1”,ALE操。作将无效。这--位置"1”,ALE仅在执行MOVX或MOVC指令时有效。否则,ALE将被微弱拉高。这个ALE使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。
3.PSEN:外部程序存储器选通信号。当AT89S52从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。
4.EANVPP:访问外部程序存储器控制信号。为了能从0000H到FFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接Vcc。在flash编程期间,EA也接收12伏VPP电压。
三、外接晶振引脚
外接晶振引脚与片内的反相放大器构成一个振荡器,提供了单片机的时钟控制信号,也可采用外部晶体振荡器。
1.XTAL1:接外部晶体的一个引脚,在单片机内部,它是-一个反相放大器的输入端.若采用外部振荡器,该蚂|脚接收振荡器的信号,即把此信号直接接到内部时钟发生器的输入端。
2.XTAL2:接外部晶体的另一端 ,在单片机内部接到反相放大器的输出端,当采用外接晶体振荡器时,此引脚可以不接。