×
嵌入式 > 技术百科 > 详情

单片机引脚与端口,引脚和GPIO的区别

发布时间:2020-12-31 发布时间:
|

一,引脚与端口:


1.引脚就是芯片外接的引脚啊,一个芯片至少有VCC,GND引脚,象51单片机还有IO引脚,串口引脚等,引脚就是物理外接的一个个管腿啊。


2.端口是单片机内部(CPU单元)和外部IO的接口组,比如说PA端口,有8个引脚,PA0~PA7。端口在IO空间映射有寄存器,这个寄存器反映当前端口的状态,如PA0口上输入的电压是0~5V的信号,单片机在映射进寄存器时会定义一个门限(如1.8V),低于这个门限寄存器中相应位是0,高于这个门限相应位是1。一般端口还有其他控制寄存器,如控制端口引脚输入输出的寄存器,如控制端口引脚复用的寄存器等。当设置端口引脚为输出时,向相应的输出寄存器的相应位写1,该端口的对应IO引脚就会输出一个近似VCC的电平,当向相应位写0时,该端口的对应IO引脚会输出一个近似0V的电平。


二.引脚与GPIO:


GPIO这个问题很多人都混淆。


本身的概念

GPIO是General-Purpose Input / Output。

-------------

到了单片机上,单片机有很多管脚(PIN)


-------------

PIN除了一些特殊的,比如电源,比如地线,晶振接线等等,很多都可以任意定义成两种功能中的一种:1. 模块的管脚,2. GPIO


--------------

当定义为模块管脚时,PIN起模块中定义的功能。比如定义成SPI模块的管脚,那就按照具体芯片的规定,或者定义成MOSI,或者定义成MISO,或者定义成SCLK,这些不是任意的。SPI是模块,MISO等是功能管脚。


--------------

当定义成GPIO时,可以定义成高阻,输入,或者输出。这时候,就可以用作操作控制位,点LED灯等功能了。


--------------

很多模块的功能管脚,严格意义上来讲也是IO,比如CANH,CANL,所以这里为了避免混淆,就将没有定义成模块功能管脚的那些单片机管脚定义成General Purpose的IO了,以示区别。

 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
VR十大误区:眼睛离屏幕太近真的会瞎吗?