论坛
进入论坛
商行-迷你打铁铺
技术讨论区
|
上位机软件开发
|
应用技术讨论区
|
免费工具使用讨论
|
松鼠--开发板
|
豆皮--开发板
|
思维--可编程控制器
|
开源单端反激电源
|
项目综合讨论区
|
作品交流、逻辑电路、无刷驱动
|
精品下载区
转至论坛
你的位置:
StmFans思蜕盟 OPELC 自由电子联盟
>>
论坛
>>
技术讨论区
>>
查看帖子
各位大侠,在stm32中io位可不可以设置输出模式
发布: 2010-1-19 11:46 | 作者:
boboecit
| 来源: StmFans思蜕盟 OPELC 自由电子联盟
各位大侠,在stm32中io位可不可以设置输出模式,比如pb设置out_pp,但是我想把pb中某一个口设置成out_od,怎么做到
binglin
(2010-1-19 17:34:47)
当然可以,每个IO口的输出输入模式都可单独配置的。
binglin
(2010-1-19 17:43:33)
例如你想将PB8配置为GPIO_Mode_Out_OD,其它的GPIO口配置为GPIO_Mode_out_pp,代码如下:
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = |GPIO_Pin_0|GPIO_Pin_0|GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_11|GPIO_Pin_12|GPIO_Pin_12|GPIO_Pin_14|GPIO_Pin_15;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
GPIO_InitStructure.GPIO_Mode =GPIO_Mode_out_pp;
GPIO_Init(GPIB, &GPIO_InitStructure);
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
GPIO_InitStructure.GPIO_Mode =GPIO_Mode_Out_OD;
GPIO_Init(GPIB, &GPIO_InitStructure);
另外上面“GPIO_InitStructure.GPIO_Pin = |GPIO_Pin_0|GPIO_Pin_0|GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_11|GPIO_Pin_12|GPIO_Pin_12|GPIO_Pin_14|GPIO_Pin_15; ”也可改为:GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All,使用这种方式的前提取决于你的外设可以这么做。
简单说是GPIOX口的每一位都可以单独配置并初始化不同的模式。
boboecit
(2010-1-20 08:30:05)
3#
binglin
谢谢,我昨天也是这样的,后来我看了一下,是我没重新定义结构
我也来说两句
查看全部回复
网络资源
思蜕盟QQ群: 65081316(满) 68584951(满) 61958672(空) 59804115(空)
最新发表
linew
MDK中在指定地址定义数组问题
haiyuexing
自制STM32板完成温度传感器并验证通过
yyjslna
谁调试成功STM32 中的DS18B20程序,可否
luding
各位可有模拟仿真的例子说明?
luding
关于SysTick_Config()函数请教
luding
怎么找不到systick具体的寄存器说明?
skyline1982
新手求助,请问把别人移植好的FAFS如何加
vvccyy
新手问题 松鼠 isp
eemkutay
I'm looking to buy for stm32 and oth
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = |GPIO_Pin_0|GPIO_Pin_0|GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_11|GPIO_Pin_12|GPIO_Pin_12|GPIO_Pin_14|GPIO_Pin_15;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
GPIO_InitStructure.GPIO_Mode =GPIO_Mode_out_pp;
GPIO_Init(GPIB, &GPIO_InitStructure);
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
GPIO_InitStructure.GPIO_Mode =GPIO_Mode_Out_OD;
GPIO_Init(GPIB, &GPIO_InitStructure);
另外上面“GPIO_InitStructure.GPIO_Pin = |GPIO_Pin_0|GPIO_Pin_0|GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_11|GPIO_Pin_12|GPIO_Pin_12|GPIO_Pin_14|GPIO_Pin_15; ”也可改为:GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All,使用这种方式的前提取决于你的外设可以这么做。
简单说是GPIOX口的每一位都可以单独配置并初始化不同的模式。
谢谢,我昨天也是这样的,后来我看了一下,是我没重新定义结构