OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7268|回复: 6

本菜鸟一开始遇到了一个问题

[复制链接]

1

主题

3

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2015-5-26
在线时间
0 小时
发表于 2015-6-15 18:51:00 | 显示全部楼层 |阅读模式
5金钱
我刚刚开始学习STM32F407,就遇到了一个麻烦。我发现PA1作为GPIO输入特别不稳定。我先使能时钟,初始化IO口,我把其他IO口的输出作为PA1的输入,用LED来指示PA1接收到的是高电平还是低电平。。结果LED根本不受控制,乱闪。。我索性拔了导线,把PA1悬空,还是乱闪。最后我把PA1连到3.3V的VCC或GND上,LED还是有闪烁。其它的IO口暂时没发现这种现象,请问是我的设置问题吗?

以下是主程序
[mw_shl_code=c,true]#include "sys.h" #include "delay.h" #include "led.h" #include "usart.h" int main(void) { LED_Init(); delay_init(168); while(1) { if(PAin(1)) { LED0=0; delay_ms(50); } else { LED0=1; delay_ms(50); } } } [/mw_shl_code]

最佳答案

查看完整内容[请看2#楼]

PA1受了LAN8720A的REF_CLK的影响,所以,不建议用PA1做输入引脚用。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2015-6-15 18:51:01 | 显示全部楼层
PA1受了LAN8720A的REF_CLK的影响,所以,不建议用PA1做输入引脚用。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

33

主题

984

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
7952
金钱
7952
注册时间
2014-8-13
在线时间
1590 小时
发表于 2015-6-15 20:59:20 | 显示全部楼层
delay_ms(50)放到if()else()外面。

PAin(1)初始化了吗?

 给你个初始化参考:

RCC ->AHB1ENR |= 1 << 0;                                                                      //使能PA时钟

GPIO_Set(GPIOA, IN1, GPIO_MODE_IN, 0, 0, GPIO_PUPD_PD);                  //PA1输入,下拉
回复

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2015-5-26
在线时间
0 小时
 楼主| 发表于 2015-6-15 21:21:31 | 显示全部楼层
回复【2楼】mack13013:
---------------------------------
不好意思额,还是不行。。我用了您的寄存器版本的和我的库函数的,都是一样的。还有,我用万用表测了下PA1的电压,一直是1.6V,是不是不正常啊?
回复

使用道具 举报

3

主题

2164

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5757
金钱
5757
注册时间
2013-11-22
在线时间
1208 小时
发表于 2015-6-15 23:29:41 | 显示全部楼层
回复【3楼】xawthunder:
---------------------------------
应该是没初始化 A1 为输入,参考下按键输入例程,如何配置IO为输入
回复

使用道具 举报

42

主题

358

帖子

0

精华

高级会员

Rank: 4

积分
889
金钱
889
注册时间
2014-8-16
在线时间
193 小时
发表于 2015-6-15 23:47:14 | 显示全部楼层
你没有配置PA1为输入模式,而且输入引脚不要悬空,应该给一个特定的电平状态,加一个上拉电阻或者下拉电阻,空闲时提供一个稳定的电平状态。
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
21
金钱
21
注册时间
2015-6-17
在线时间
0 小时
发表于 2015-6-18 21:47:13 | 显示全部楼层
围观。。。。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-24 18:01

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表