通用目的输入输出口GPIO
GPIO是微控制器必备的片上外设,几乎所有的基于微控制器的嵌入式应用开发都会用到他,所以第一天我们来学学GPIO。
GPIO的输入可以分为四种:
(1)模拟输入( GPIO_Mode_AIN):TTL关闭,模拟信号被提前送到片上外设
(2)上拉输入(GPIO_Mode_IPU):上拉电阻断开,打开下拉电阻开关,引脚默认输入高电平
(3)下拉输入(GPIO_Mode_IPD):打开上拉电阻开关,下拉电阻断开,引脚默认输入低电平
(4)浮空输入(GPIO_Mode_AIN):没有上拉电阻也没有下拉电阻。引脚在默认状态下为高阻态
GPIO的输出也有四种:
(1)开漏输出(GPIO_Mode_Out_OD)
(2)开漏复用输出(GPIO_Mode_AF_OD)
(3)推挽式输出(GPIO_Mode_Out_PP)
(4)推挽复用输出(GPIO_Mode_AF_PP)
关于GPIO工作模式的选择:
(1)把引脚信号读入到微控制器用输入,把内部信号更新到引脚端口用输出
(2)作为普通的GPIO和内置外设的GPIO通常使用浮空输入
(3)普通的模拟信号驶入需要用模拟信号输入(ps:不用使能该引脚对应的所有复用功能模块)
(4)对于普通的输出使用推挽输出或者开漏输出
(5)内置外设的GPIO使用复用推挽输出或者复用开漏输出
(6)如果既要输出高电平也要输出低电平则用推挽输出
(7)如果要求输出电流大,或者外部电平不匹配时用开漏输出
GPIO输出速度
没有固定要求一般使用2MHz(大部分我们现阶段都用这个),10MHz,50MHz。