打印

请问STM32的PC13怎样设为输入方式?

[复制链接]
9355|29
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
g346|  楼主 | 2013-5-12 14:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
GPIO_Init(GPIOC, &GPIO_InitStructure);
PC13引脚是高电平,读入的却是0.
沙发
hawksabre| | 2013-5-12 18:04 | 只看该作者
不是很了解   这一块   帮你顶一个   看看别人的意见   

使用特权

评论回复
板凳
hawksabre| | 2013-5-12 18:05 | 只看该作者
个人认为应该问题不是很大   呵呵   顶一个

使用特权

评论回复
地板
jiaxinhui| | 2013-5-12 20:44 | 只看该作者
GPIOC端口的时钟开启了吗

使用特权

评论回复
5
g346|  楼主 | 2013-5-12 23:38 | 只看该作者
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);

使用特权

评论回复
6
ticomi| | 2013-5-13 08:19 | 只看该作者
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN;                        //输入模式
然后看看有没有开C端口的时钟?

使用特权

评论回复
7
mmuuss586| | 2013-5-13 08:26 | 只看该作者
程序不对吧。
                GPIO_InitTypeDef  GPIO_InitStructure;
       
        // GPIO Periph clock enable
        RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA
                                                                                                |RCC_AHB1Periph_GPIOB
                                                                                                |RCC_AHB1Periph_GPIOC
                                                                                                |RCC_AHB1Periph_GPIOD
                                                                                                |RCC_AHB1Periph_GPIOE, ENABLE);
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;                                
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;
        GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
        GPIO_Init(GPIOC, &GPIO_InitStructure);

使用特权

评论回复
8
grasswolfs| | 2013-5-13 09:23 | 只看该作者
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);

GPIO_InitStructure.GPIO_Pin        = GPIO_Pin_13
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;       
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;       
GPIO_Init(GPIOC, &GPIO_InitStructure);

使用特权

评论回复
9
ljxh401| | 2013-5-13 10:22 | 只看该作者
要先开时钟 呵呵
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);

使用特权

评论回复
10
g346|  楼主 | 2013-5-13 10:49 | 只看该作者
ljxh401 发表于 2013-5-13 10:22
要先开时钟 呵呵
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);

时钟是开了的,但不行

使用特权

评论回复
11
g346|  楼主 | 2013-5-13 10:50 | 只看该作者
grasswolfs 发表于 2013-5-13 09:23
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);

GPIO_InitStructure.GPIO_Pin        = GPIO_Pin_13

程序就如你写的一样,但就是不行呢

使用特权

评论回复
12
g346|  楼主 | 2013-5-13 10:55 | 只看该作者
mmuuss586 发表于 2013-5-13 08:26
程序不对吧。
                GPIO_InitTypeDef  GPIO_InitStructure;
       

RCC_AHB1PeriphClockCmd是不能设置GPIO端口的,只有RCC_AHB2PeriphClockCmd才行,不知你用的是什么固件库,另stm32也没有GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;这样的设置项。

使用特权

评论回复
13
zzz316| | 2013-5-13 11:50 | 只看该作者
你检查下你的电路,这个IO管脚是否外接了上拉电阻或者下拉,根据实际情况设置管脚的输入方式

使用特权

评论回复
14
njchenmin| | 2013-5-13 12:05 | 只看该作者
看看是不是设置到第二功能上了

使用特权

评论回复
15
g346|  楼主 | 2013-5-13 12:23 | 只看该作者
njchenmin 发表于 2013-5-13 12:05
看看是不是设置到第二功能上了

应该不会的,因为我换为PA8就一点问题也没有。

使用特权

评论回复
16
ETjason| | 2013-5-13 12:29 | 只看该作者
你是不是端口被复用了?

使用特权

评论回复
17
mmuuss586| | 2013-5-13 12:41 | 只看该作者
难道是芯片BUG,应该不大可能啊。
你用的什么型号,我用的F4

使用特权

评论回复
18
g346|  楼主 | 2013-5-13 13:07 | 只看该作者
mmuuss586 发表于 2013-5-13 12:41
难道是芯片BUG,应该不大可能啊。
你用的什么型号,我用的F4

STM32F103,应该不会是芯片的问题,而是PC13脚有些特别,可能还是设置上的问题。

使用特权

评论回复
19
ty20130510| | 2013-5-13 14:15 | 只看该作者
专业代理分销ST/FSC/UTC/TOREX/TI电源管理IC,MOS管,功放IC,LCD/LED驱动IC
深圳市韬裕科技有限公司
电      话:075581786738/28187039/28184980
联系人: Tina Fang
移动电话:13925274612
传      真:0755 81786745
地      址:中国 广东 深圳市宝安区 民治街道民治大道民泰大厦1025室

使用特权

评论回复
20
grasswolfs| | 2013-5-13 16:34 | 只看该作者
g346 发表于 2013-5-13 13:07
STM32F103,应该不会是芯片的问题,而是PC13脚有些特别,可能还是设置上的问题。 ...

外面硬件上的连接有特别的地方么?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

14

帖子

0

粉丝