1.GPIO解释
GPIO英文全称是General-purpose input/ouput,即通用型输入输出,GPIO根据配置可以作为通用输入(GPI),通用输出(GPO)或是通用输入输出(GPIO)
1,直接输入到芯片内部检测,一般用于ADC等模拟量信号采集。
输出模式推挽输出
复用开漏输出
复用推挽输出
推挽输出
复用开漏输出
复用推挽输出

输出模式实质是两种模式,一是开漏输出,一是推挽输出
1.开漏输出:输出信号“0”时会激活N-MOS,N-MOS导通,输出管脚与VSS连通,输出低电平;输出信号“1”时不激活P-MOS,同时N-MOS也不导通,输出管脚为高阻态。因此一般开漏输出管脚与外部上拉电阻连接,输出信号“1”时管脚会被外部上拉电压钳高,该模式可以需要用于匹配电平的场合。
2.推挽输出:输出信号“0”时会激活N-MOS,N-MOS导通,输出管脚与VSS连通,输出低电平。输出信号“1”时会激活P-MOS,P-MOS导通,输出管脚与VDD连通,输出高电平电平。这个模式输出高低电平时会分别导通一个MOS管,既提高电路负载能力,又提高开关速度2。
3.复用开漏输出:实质上是和开漏模式一样,在GPIO复用功能时使用
4.复用推挽输出:实质上是和推挽模式一样,在GPIO复用功能时使用
输出速度
输出模式下,有3种输出速度可选(2MHz,10MHz和50MHz),这个速度是指IO口驱动电路的响应速度而不是输出信号的速度。通过选择速度来选择不同的驱动输出模块,达到最佳的噪声控制和降低功耗的目的。
高频信号输出会带来功耗增加和噪声增大;低频信号输出可能会带来信号失真,因此需要根据实际需要来选择合适的速度输出3。
4;
-32位端口配置锁定寄存器(LCKR)
该寄存器用于锁定端口管脚
bit16是锁键位LCKK,该位为0代表锁键未激活,为1代表锁键已激活;锁键激活需要向锁键位写入特定的写入序列(写1->写0->写1->读0->读1)(最后一次读指令可以取消)
bit[0:15]为锁位LCKy,这些位可读可写,但只能在LCKK为0(锁键未激活)时写入,该位为0代表不锁定,为1代表锁定。
4.基于V3.5库函数的GPIO配置函数(野火开发板教程)
void GPIO_configuration(void)
{
//定义结构体
GPIO_InitTypeDef GPIO_InitStructure;
//开启端口C的时钟
RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOC, ENABLE);
//选择需要控制的管脚
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_7;
//选择推挽输出模式
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
//输出速度为50MHz
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
//初始化GPIOC
GPIO_Init(GPIOC, &GPIO_InitStructure);
//置高各个管脚
GPIO_SetBits(GPIOC, GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_7);
}
肖特基触发器是一种阈值开关电路,具有突变输入——输出特性的门电路。这种电路被设计成阻止输入电压出现微小变化(低于某一阈值)而引起的输出电压的改变 ↩
http://bbs.elecfans.com/infocenter.php?mod=space&uid=961328&do=blog&id=242993 ↩
http://blog.csdn.net/dldw8816/article/details/51450833 ↩
既可以通过ODRy设置管脚(Pin),也可以通过BSy和BRy设置,但是通过ODRy设置管脚(Pin)需要首先读取保存ODRy数据,再进行设置管脚(Pin)在这个过程中有可能被中断影响—–引用http://www.cnblogs.com/shangdawei/p/4723941.html ↩
上一篇:STM32菜鸟成长记录---GPIO的使用
下一篇:stm32中gpio的学习浅谈
推荐阅读
史海拾趣



ASM10DTBD-S664






京公网安备 11010802033920号