GPIO学习笔记1
GPIO简介:
—–没有外设的的单片机是没有意义的,而单片机的IO口是连接单片机和相关外设的唯一桥梁,所以学会IO口的使用对于学习单片机来说是基本功,至关重要!
—–IO口是单片机和外界交换信息的桥梁,那么首先得了解IO口通过什么传递信息。每一个IO口都可以输入和输出高低两种电平信号,但有一些IO口可以输入和输出电压信号(用于AD和DA转换)。
IO口例子:
—–下面是一个用IO口点亮LED灯的小程序:
注:假如 LED用IO口PA.0控制,且当PA.0输出高时LED被点亮。
#include "sys.c"
void main()
{
RCC->APB2ENR|=1<<2; //使能GPIOA.0~GPIOA.15共16个IO口的时钟
GPIOA->CRL|=0X00000003; //配置IO口PA.0的工作方式
GPIOA->ODR|=1<<0; //设置PA.0为高电平
}
使用步骤:
通过上面的例子,可以看出GPIO口的使用步骤:
第一步:打开IO口的时钟
第二步:配置IO口的工作方式
第三步:设置IO口电平
相关寄存器:
—APB2外设时钟使能寄存器 RCC->APB2ENR:
bit0~bit15对应不同的外设的使能位,当该位置1时该外设的时钟使能(打开)。
—端口配置低寄存器 GPIOx->CRL
—端口输出数据寄存器 GPIOx->ODR
—端口输入数据寄存器 GPIOx->IDR