一、GPIO结构框架图与工作原理
1、接下来我们介绍一下这个GPIO结构框图和工作原理,我们使用51单片机的GPIO分为了P0,P1,P2,P3这四组端口,下面我们就分别来介绍这四组端口它的一个内部结构,只有了解了内部的结构,对于我们单片机的IO口的一些使用会非常清楚。
2、P0端口
(1)那我们列举的是这个P0端口的一个内部结构框图,从这张图我们可以看到,它是有锁存器,还有输入缓冲器,以及切换开关。一个非门,一个与非门,以及场效应管,它这些组成的驱动电路构成。这个图当中的最左边,最右边是标记的是这个引脚,这个引脚是我们肉眼可以看到的芯片的引脚,那么这个引脚,是左边这一部分是芯片封装内部的一些东西,那么这里写了P零点X引脚,这个X代表的是0~7,因为我们P0端口有8个,它这里是P000~P007,所以你了解了一个引脚,那对于其他引脚也是一样的。
(2)下面我们看一下这些模块资源的介绍,首先我们看一下,我们的输入缓冲器,输入缓冲器在P0口当中呢,有两个三态的,一个输缓冲器。在学数字电路的时候,我们已经知道,三态门呢,他有三个状态,也就是输出端口可以是高电平,也可以是低电平,同时还有一种是高阻态,这是三态门的一个输出的一个特点。
(3)那么大家在这张图当中,我们上面有一个输入缓冲器,也就是读锁存器,读取D锁存器输出端的Q,读取Q的时候,就得使用这个读锁存器,这个输入缓冲器的三态控制端上图的这个读锁存器有效,只有这个有效,我们的Q才能到达我们的一个读的这一块;下面是我们的读引脚的一个输入缓冲器,要读取P0、X的这个引脚上的数据,也要使能这个读引脚这个三态缓冲器的一个控制端有效,才能直接读引脚,那么这是我们的一个输入缓冲器。
(4)再看一下我们的这个D储存器,构成一个储存器,通常要用一个时序电路,那么时序的单元电路在学数字电路是呢,我们已经知道一个触发器可以保存一位的二进制数,也就是具有保持功能,那么在51单片机的32根IO口线当中呢,都是用了一个D触发器来构成的一个锁存器,那么大家在这张图当中呢,可以看到D储存器D端是它的一个数据输入端,那么CP也就是CLK是它的一个控制端,也就是时序控制信号的一个输入端,那么Q,Q是我们第一锁存器的一个输出端,QC呢,是这个反向输出端,也就是跟Q呢是输出相反的一个状