单片机的各个引脚都有啥功能及作用?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单片机的各个引脚都有啥功能及作用?相关的知识,希望对你有一定的参考价值。
谢谢支持#11
40条引脚说明如下:⑴.主电源引脚Vss和Vcc
·Vss 接地。
·Vcc 正常操作时为十5伏电源。
⑵.外接晶体引脚XTAl1和XTAL2
·XTAL1 内部振荡电路反相放大器的输入端,是外接晶体的一个引脚。当采用外部振荡器时,此引脚接地(见图2-3(B))。
·XTAL2 内部振荡器的反相放大器的输出端,是外接晶体的另一端。当采用外部振荡器时,此引脚接外部振荡源。
⑶.控制或与其它电源复用引脚
RST/Vpd,ALE/PROG,PSEN 和EA/Vpp。
·RST/Vpd 当振荡器运行时。在此引脚上出现两个机器同期的高电平(由低到高跳变),将使单片机复位。
在 Vcc掉电期间,此引脚可接上备用电源,由 Vpd向内部 RAM提供备用电源,以保持内部RAM中的数据。
·ALE/PROG 正常操作时为ALE功能(允许地址钱存),提供把地址的低字节锁存到外部锁存器。ALE引脚以不变的频率(振荡周期的1/6)周期性地发出正脉冲信号。因此,它可用作对外输出的时钟,或用于定时目的。但要注意,每当访问外部数据存储器时,将跳过一个 ALE脉冲。 ALE端可以驱动(吸收或输出电流)八个 LSTTL电路。
对于 EPROM型单片机,在 EPROM编程期间,此引脚接收编程脉冲(PROG功能)。
·PSEN 外部程序存储器读选通信号输出端。在从外部程序存储器取指令(或数据)期间;PSEN 在每个机器周期内两次有效。 PSEN 同样可以驱动八个LSTTL输入。
·EA/Vpp EA为内部程序存储器和外部程序存储器选择端。当EA为高电平时,访问内部程序存储器(PC值小于4K)。当EA为低电平时,则访问外部程序存储器。对于EPROM型单片机,在EPROM编程期间,此引脚上加21VEPROM编程电源(Vpp)。
⑷.输入/输出引脚
P0.0~P0.7,P1.0~P1.7,P2.0~P2.7,P3.0~P3.7
·P0.0~P0.7: P0是一个 8位漏极开路型双向 I/O口。在访问外部存储器时,它是分时传送的低字节地址和数据总线。PO口能以吸收电流的方式驱动八个LSTTL负载。
·P1.0~P1.7: P1是一个带有内部提升电阻的 8位准双向 I/O口。它能驱动(吸收或输出电流)四个LSTTL负载。
·P2.0~P2.7: P2是一个带有内部提升电阻的8位准双向I/O口。在访问外部存储器时,它输出高8位地址。P2口可以驱动(吸收或输出电流)四个LSTTL负载。
· P3.0~P3.7:P3是一个带有内部提升电阻的 8位准双向 I/O口。能驱动(吸收或输出电流)四个LSTTL负载。P3口还用于第二功能请参看表2-1。 参考技术A 大多数是IO口,用来输入输出,可接各种外部设备,其中有些端口有第二功能,可通过内部的寄存器切换。只有少数几个脚是固定用途的,如电源脚,外接晶振脚,复位脚,这些脚的外围电路是固定的,且不可接外部设备。 参考技术B www.pp51.com
STM32共用中断线的外部中断引脚的判断
因为STM32的中断线有多个外部中断引脚共用的,比如中断线1,由PA1,PB1,PC1,PD1,PE1,PF1来共用,假设这些引脚都设置成了中断源且都为下降沿触发,其中任一个产生中断都会进入到中断线1的中断服务程序,那么在中断服务程序中如何来判断是哪个引脚的中断源产生了中断呢?我现在查到的方法只是去判断各个管脚的电平高低,我觉得这样是非常不可靠的,现求教更可靠的方法,请用库函数的方法写出程序并加注释。务必详细.
同时配置了多个管脚(比如,PE1,PA1,PB1)的中断到同一中断线(比如EXTI_LINE1),只有最后的一个配置生效(PB1有 效,PE1,PA1进不了中断) 参考技术A 不对吧?根据AFIO->EXTICR1寄存器的定义来看,一次只能从PA1,PB1,PC1,PD1,PE1,PF1、PG1中选一个作为中断源。本回答被提问者和网友采纳 参考技术B 如果需要在两个不同的引脚上引入不同的两个外部中断,这两个中断的处理函数两个中断的处理函数不一定分别在两个子函数中写。如果两个中断没共用一个追问请看清我的条件:中断线1,由PA1,PB1,PC1,PD1,PE1,PF1来共用,假设这些引脚都设置成了中断源且都为下降沿触发,其中任一个产生中断都会进入到中断线1的中断服务程序,那么在中断服务程序中如何来判断是哪个引脚的中断源产生了中断呢?
不共用中断源的话,入口地址就已经区分来开了,也不会有这个问题。
以上是关于单片机的各个引脚都有啥功能及作用?的主要内容,如果未能解决你的问题,请参考以下文章