OpenEdv-开源电子网

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

PB5一直输出高电平,不法输出低电平

[复制链接]

25

主题

281

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2504
金钱
2504
注册时间
2015-8-17
在线时间
383 小时
发表于 2015-8-19 21:33:40 | 显示全部楼层 |阅读模式
5金钱
void LED_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure1;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);

GPIO_InitStructure1.GPIO_Pin = GPIO_Pin_5;
GPIO_InitStructure1.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure1.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOB, &GPIO_InitStructure1);
}

void LED_Open(uint8_t status)
{
if(status)
GPIO_SetBits(GPIOB, GPIO_Pin_5)

else
GPIO_ResetBits(GPIOB, GPIO_Pin_5);

}
int main(void)
{
    delay_init();
    LED_Init();

     while(1)
    {
          LED_Open(1);
         delay_ms(500);
          LED_Open(0);
          delay_ms(500);
    
}
}
灯是共阳的,为什么灯不灭啊,之前拿这个口来控制舵机(http://www.openedv.com/posts/list/0/58052.htm?privmsg=39618&&sysid=4#330318  这是之前的帖子),后来突然就不行了,示波器上的波形很乱,是不是芯片被我搞坏了?

做事的原则:
1.每个问题重复三遍、研究三遍后再提问,直接得到答案的人什么都没学会。
2.做事要有始有终,感谢那些帮助自己解决问题的人,把解决的方法总结起来。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

14

主题

1592

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
2622
金钱
2622
注册时间
2014-7-17
在线时间
350 小时
发表于 2015-8-19 22:07:39 | 显示全部楼层
看这程序好像没错啊。。。
回复

使用道具 举报

2

主题

41

帖子

0

精华

初级会员

Rank: 2

积分
104
金钱
104
注册时间
2014-4-28
在线时间
5 小时
发表于 2015-8-19 22:26:13 | 显示全部楼层
初始化加上这句试试GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);
回复

使用道具 举报

42

主题

358

帖子

0

精华

高级会员

Rank: 4

积分
890
金钱
890
注册时间
2014-8-16
在线时间
193 小时
发表于 2015-8-19 22:34:48 | 显示全部楼层
PB5是调试接口的RST
你需要关闭jtag或swd的RST功能或者完全关闭jtag或swd
你加这两句
 RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
 GPIO_PinRemapConfig(GPIO_Remap_SWJ_NoJTRST,ENABLE);
或者使用原子sys.c文件下的JTAG_Set这个函数
回复

使用道具 举报

3

主题

2170

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5781
金钱
5781
注册时间
2013-11-22
在线时间
1212 小时
发表于 2015-8-19 22:53:25 | 显示全部楼层
你这灯是不是接反了?
回复

使用道具 举报

25

主题

281

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2504
金钱
2504
注册时间
2015-8-17
在线时间
383 小时
 楼主| 发表于 2015-8-19 23:05:01 | 显示全部楼层
回复【3楼】Llinuxu:
---------------------------------
加了,我之前的那个帖子就已经发现了这个问题,而且之前是可以控制舵机的,现在控制灯都不行了。
做事的原则:
1.每个问题重复三遍、研究三遍后再提问,直接得到答案的人什么都没学会。
2.做事要有始有终,感谢那些帮助自己解决问题的人,把解决的方法总结起来。
回复

使用道具 举报

25

主题

281

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2504
金钱
2504
注册时间
2015-8-17
在线时间
383 小时
 楼主| 发表于 2015-8-19 23:06:59 | 显示全部楼层
回复【4楼】Theone:
---------------------------------
LED程序上没加,但是我是用来控制舵机的,那个程序上加了,可以看我之前的那个帖,PB4是可以正常驱动舵机的,就是PB5突然不行了,之前是可以的。
做事的原则:
1.每个问题重复三遍、研究三遍后再提问,直接得到答案的人什么都没学会。
2.做事要有始有终,感谢那些帮助自己解决问题的人,把解决的方法总结起来。
回复

使用道具 举报

25

主题

281

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2504
金钱
2504
注册时间
2015-8-17
在线时间
383 小时
 楼主| 发表于 2015-8-19 23:07:18 | 显示全部楼层
回复【5楼】lycreturn:
---------------------------------
接反了是不亮,不是不灭吧。
做事的原则:
1.每个问题重复三遍、研究三遍后再提问,直接得到答案的人什么都没学会。
2.做事要有始有终,感谢那些帮助自己解决问题的人,把解决的方法总结起来。
回复

使用道具 举报

25

主题

281

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2504
金钱
2504
注册时间
2015-8-17
在线时间
383 小时
 楼主| 发表于 2015-8-19 23:12:32 | 显示全部楼层
回复【4楼】Theone:
---------------------------------
我之前用的是GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);
和你说的GPIO_PinRemapConfig(GPIO_Remap_SWJ_NoJTRST,ENABLE); 有什么区别呢?能给我说一下吗?万分感谢。
做事的原则:
1.每个问题重复三遍、研究三遍后再提问,直接得到答案的人什么都没学会。
2.做事要有始有终,感谢那些帮助自己解决问题的人,把解决的方法总结起来。
回复

使用道具 举报

3

主题

2170

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5781
金钱
5781
注册时间
2013-11-22
在线时间
1212 小时
发表于 2015-8-19 23:13:21 | 显示全部楼层
回复【8楼】wszdxmh:
---------------------------------
看代码 好像没什么问题啊
回复

使用道具 举报

25

主题

281

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2504
金钱
2504
注册时间
2015-8-17
在线时间
383 小时
 楼主| 发表于 2015-8-20 00:02:32 | 显示全部楼层


我看了JTAG的引脚表,并没有提到PB5这个引脚啊,所以跟JTAG禁用好像没有什么关系啊。
做事的原则:
1.每个问题重复三遍、研究三遍后再提问,直接得到答案的人什么都没学会。
2.做事要有始有终,感谢那些帮助自己解决问题的人,把解决的方法总结起来。
回复

使用道具 举报

25

主题

281

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2504
金钱
2504
注册时间
2015-8-17
在线时间
383 小时
 楼主| 发表于 2015-8-20 10:36:38 | 显示全部楼层
原子哥,求救啊
做事的原则:
1.每个问题重复三遍、研究三遍后再提问,直接得到答案的人什么都没学会。
2.做事要有始有终,感谢那些帮助自己解决问题的人,把解决的方法总结起来。
回复

使用道具 举报

3

主题

2170

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5781
金钱
5781
注册时间
2013-11-22
在线时间
1212 小时
发表于 2015-8-20 10:51:17 | 显示全部楼层
回复【12楼】wszdxmh:
---------------------------------
你直接测试PB5 口电平有没有翻转试试   看是代码的问题还是 灯的问题
回复

使用道具 举报

25

主题

281

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2504
金钱
2504
注册时间
2015-8-17
在线时间
383 小时
 楼主| 发表于 2015-8-20 11:24:28 | 显示全部楼层
回复【13楼】lycreturn:
---------------------------------
不是灯的问题,代码改成其他的口就可以,如PB6什么的,灯是可以闪烁的。不知道什么问题啊
做事的原则:
1.每个问题重复三遍、研究三遍后再提问,直接得到答案的人什么都没学会。
2.做事要有始有终,感谢那些帮助自己解决问题的人,把解决的方法总结起来。
回复

使用道具 举报

25

主题

281

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2504
金钱
2504
注册时间
2015-8-17
在线时间
383 小时
 楼主| 发表于 2015-8-20 11:27:14 | 显示全部楼层
有可能出现只坏一个IO口而TIM3可以用,芯片不坏的情况吗?
做事的原则:
1.每个问题重复三遍、研究三遍后再提问,直接得到答案的人什么都没学会。
2.做事要有始有终,感谢那些帮助自己解决问题的人,把解决的方法总结起来。
回复

使用道具 举报

42

主题

358

帖子

0

精华

高级会员

Rank: 4

积分
890
金钱
890
注册时间
2014-8-16
在线时间
193 小时
发表于 2015-8-20 12:40:40 | 显示全部楼层
回复【9楼】wszdxmh:
---------------------------------
这个只是仅用了jtag的复位引脚 也就是pb4当作io不涉及其他jtag接口

我也是粗心 把pb5当复位引脚了  说了半天没用的东西

你试试把pb5浮空 然后改变电平 用万用表测一下看看电平状态是否改变
回复

使用道具 举报

1

主题

67

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2015-6-6
在线时间
2 小时
发表于 2015-8-20 12:43:18 | 显示全部楼层
这个引脚如果误接过有限流的高电压上,是有可能会造成对VCC的保护二极管击穿短路的;或者是该引脚输出高电平但又长时间短路到地了,也会导致推挽输出的上管烧毁短路。表现都是输出始终为高,不受指令控制。。
三更有梦书当枕,千里怀人月在峰!
回复

使用道具 举报

25

主题

281

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2504
金钱
2504
注册时间
2015-8-17
在线时间
383 小时
 楼主| 发表于 2015-8-20 12:56:09 | 显示全部楼层
回复【17楼】laidaihua:
---------------------------------
现像是你说的这个现象,负载过重,舵机好像是卡过一下,不知道是不是这个造成的,有没有什么电路可以防止这种事情下一次的发生?
做事的原则:
1.每个问题重复三遍、研究三遍后再提问,直接得到答案的人什么都没学会。
2.做事要有始有终,感谢那些帮助自己解决问题的人,把解决的方法总结起来。
回复

使用道具 举报

1

主题

67

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2015-6-6
在线时间
2 小时
发表于 2015-8-20 12:58:19 | 显示全部楼层
在引脚输出串一个1K的电阻再接到外部设备上就不容易坏了。当然,如果输出的电流较大就不合适了。。
三更有梦书当枕,千里怀人月在峰!
回复

使用道具 举报

25

主题

281

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2504
金钱
2504
注册时间
2015-8-17
在线时间
383 小时
 楼主| 发表于 2015-8-20 13:33:47 | 显示全部楼层
 回复【19楼】 laidaihua :
---------------------------------



这个电路可行吗?电阻用10K的下拉
做事的原则:
1.每个问题重复三遍、研究三遍后再提问,直接得到答案的人什么都没学会。
2.做事要有始有终,感谢那些帮助自己解决问题的人,把解决的方法总结起来。
回复

使用道具 举报

1

主题

67

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2015-6-6
在线时间
2 小时
发表于 2015-8-20 13:43:34 | 显示全部楼层
有一定作用,但仅能防护灌电流,输出短路没有保护。
因为二极管也有压降,感觉还不如直接串电阻的方式。。
三更有梦书当枕,千里怀人月在峰!
回复

使用道具 举报

25

主题

281

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2504
金钱
2504
注册时间
2015-8-17
在线时间
383 小时
 楼主| 发表于 2015-8-20 16:00:42 | 显示全部楼层
回复【21楼】laidaihua:
---------------------------------
好的,谢谢,学习了。
做事的原则:
1.每个问题重复三遍、研究三遍后再提问,直接得到答案的人什么都没学会。
2.做事要有始有终,感谢那些帮助自己解决问题的人,把解决的方法总结起来。
回复

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
25
金钱
25
注册时间
2019-5-9
在线时间
6 小时
发表于 2019-6-22 12:44:13 | 显示全部楼层
同样问题,pb5一直高电平
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-13 17:47

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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