GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_4 | GPIO_Pin_5 |
GPIO_Pin_8 | GPIO_Pin_9
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_Init(GPIOD, &GPIO_InitStructure);
我见别人有上面这样写的初始化不同的IO口只写了一次 作用可以实现GPIOD
的PIN 0 1 4 5 8 9 的速度和模式是50 和浮空输入 ,那比如如果我现在还想对GPIOD的pin6 pin7 设置成推挽输出 10MHZ
我就又写了
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOD, &GPIO_InitStructure);
假设上面的代码都在一个初始化函数内
那么这样子GPIOD的输出模式和速度会不会被全部又改成了 推挽和10MHZ?使一开始的初始化被覆盖?
请各位大神指导一下,很疑惑 |