arm的gpio可以配置输入,输出,特殊功能(比如串口,mmc),使用前一定要配置,否则状态不确定。
GPIO引脚是一个连接的端子,通过软件配置设置多路选择器选择到GPIO的输入还是输出还是特殊功能的控制器。
设置为GPIO功能,可以选择输入功能或者输出功能。
设置为GPIO的输入功能后,还可以配置为上拉还是下拉功能,上拉还是下拉的电阻大小选择比如,2MA,4MA,8MA,16MA
设置为GPIO的输出功能后,还要设置输出的电平为高电平还是低电平。
要设置为特殊功能口,要查看datasheet,因为一般GPIO的特殊功能有好几种,比如功能0一般是普通GPIO,功能1可能是USB的TX,功能2可能是UART1的RX,功能3可能是I2C的CLK,。。。。。所以要查datasheet的功能表,和原理图的连接,看看这个引脚是什么功能,在引脚的初始化的时候配置为对应的功能。