菜鸟提问,写STM32程序的时候 怎么判断某个引脚是输入还是输出呢

比如跑马灯的时候GPIO口都是设置的输出,而到了按键实验的时候IO又是设置的输入到底怎么判断捏我要连接一个外设的话比如传感器io口又是咋设置的呢谢谢... 比如跑马灯的时候GPIO口都是设置的输出,而到了按键实验的时候IO又是设置的输入 到底怎么判断捏 我要连接一个外设的话比如传感器 io口又是咋设置的呢 谢谢 展开
 我来答
学海水手
2013-11-12 · TA获得超过1628个赞
知道小有建树答主
回答量:969
采纳率:80%
帮助的人:433万
展开全部
查看GPIO_Configuration(void)函数,

找到所用的管脚,共8中输入输出方式,自己对对

GPIO_InitStructure.GPIO_Mode =GPIO_Mode_AIN //模拟输入
GPIO_InitStructure.GPIO_Mode =GPIO_Mode_IN_FLOATING //悬空输入
GPIO_InitStructure.GPIO_Mode =GPIO_Mode_IPD //下拉输入
GPIO_InitStructure.GPIO_Mode =GPIO_Mode_IPU //上拉输入
GPIO_InitStructure.GPIO_Mode =GPIO_Mode_Out_OD //开漏输出
GPIO_InitStructure.GPIO_Mode =GPIO_Mode_Out_PP //推挽输出
GPIO_InitStructure.GPIO_Mode =GPIO_Mode_AF_OD //开漏复用
GPIO_InitStructure.GPIO_Mode =GPIO_Mode_AF_PP //推挽复用

跑马灯的话要看你是共阴极还是共阳极,共阴极推挽输出,共阳极悬空输入
传感器要看是模拟量的还是数字量的,模拟量用模拟输入,数字量用悬空输入
追问
我还是糊里糊涂的  比方说485实验的时候,PG9设置的推挽输出,PA2复用推挽,PA3浮空输入 真的不明白为啥这么设置?
追答
查查485通信协议啊,485接头9个脚,2脚串行输出,3脚串行输入,自然要设置成PA2复用推挽,PA3浮空输入,具体看485接头说明书就知道了
肥肥的爆米花
推荐于2018-04-11 · TA获得超过3771个赞
知道小有建树答主
回答量:910
采纳率:50%
帮助的人:623万
展开全部
有三种常用方式供你选择:
输入:上拉方式。
输出:推挽输出。
可输入可输出:设置为开漏输出+外部上拉电阻

由芯片控制外设,就用输出。由芯片采集外设数据,就用输入。双向的就用开漏加上拉电阻。
只提供思路,具体操作网上搜资料。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
演艺大咖
2013-11-12
知道答主
回答量:4
采纳率:0%
帮助的人:6089
展开全部
采集传感器的数据就是输入啊,分析处理以后要是对传感器进行控制就是输出啊,控制就是控制方向用的寄存器的名字叫做FIODIR全名是高速GPIO端口方向寄存器
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式