GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;//针对某组的一个引脚进行初始化 //GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1;//针对某组的两个引脚进行初始化 //GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All;//针对某组的16个引脚进行初始化 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 请教,后面两个是对全部16个引脚进行设置,还是只对选择的引脚进行设置?看.h文件一头零水,没有看明白。 |
可以,很详细的说明 |
suinile 发表于 2020-4-2 16:49 是的。相当于对参数进行了两次赋值,当然,最后一次保留,然后通过初始化函数把参数设置传递到端口寄存器去。我也是初学者,不一定对。彼此学习 |
优秀,学习一下 |
优秀,学习一下 |
本帖最后由 suinile 于 2020-4-7 15:18 编辑 同一个端口的不同引脚配置成不同的输出模式,比如:端口A的1脚输出配置成频率2M 推挽输出、2脚输出配置设置成频率10M 开漏输出。 GPIO_InitTypeDef GPIO_INIT_GPIOA; //端口参数配置 GPIO_INIT_GPIOA.GPIO_Pin = GPIO_Pin_1; GPIO_INIT_GPIOA.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_INIT_GPIOA.GPIO_Speed = GPIO_Speed_2MHz; GPIO_INIT_GPIOA.GPIO_Pin = GPIO_Pin_2; GPIO_INIT_GPIOA.GPIO_Mode = GPIO_Mode_Out_OD; GPIO_INIT_GPIOA.GPIO_Speed = GPIO_Speed_10MHz; GPIO_Init(GPIOA,&GPIO_INIT_GPIOA);//端口配置初始化 这种写法的话,是不是1脚的输出配置被2脚的输出配置覆盖掉了?? |
可以,很详细的说明 |
![]() |
可以,够详细 |
优秀!!!!!! |
复用,映射 |
优秀![]() |