OpenEdv-开源电子网

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

io口被复用了,怎么推挽输出低

[复制链接]

20

主题

83

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
268
金钱
268
注册时间
2016-7-14
在线时间
49 小时
发表于 2016-8-3 09:44:55 | 显示全部楼层 |阅读模式
3金钱
STM32中,想要PB3,PB4等一些io口输出低电平,设置推挽输出的时候发现无效,后来发现他们被io复用了,这怎么解决啊

最佳答案

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

//以下代码将关闭JTAG,使能SWD调式模式 /**** RCC->APB2ENR |= 1
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

9

主题

507

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3347
金钱
3347
注册时间
2013-4-10
在线时间
333 小时
发表于 2016-8-3 09:44:56 | 显示全部楼层
//以下代码将关闭JTAG,使能SWD调式模式
     /****
     RCC->APB2ENR |= 1<<0;             //开启辅助时钟
     RCC->APB2ENR |= 1<<3;             //开启GPIOB时钟  
     DBGMCU->CR = DBGMCU->CR & ~((uint32_t)1<<5); //禁止异步跟踪,释放PB3  
     AFIO->MAPR &= 0xf8ffffff;         //清除MAPR的[26:24]
     AFIO->MAPR |= 2<<24;              //关闭JTAG,使能SWD调试方式
     ******/
回复

使用道具 举报

14

主题

1592

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
2622
金钱
2622
注册时间
2014-7-17
在线时间
350 小时
发表于 2016-8-3 10:09:49 | 显示全部楼层
分时复用!
回复

使用道具 举报

25

主题

281

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2504
金钱
2504
注册时间
2015-8-17
在线时间
383 小时
发表于 2016-8-3 10:45:41 | 显示全部楼层
[mw_shl_code=c,true]RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);[/mw_shl_code]
加上这两句就完事了,你真的不会用搜索吗?
http://www.openedv.com/forum.php?mod=viewthread&tid=79667
做事的原则:
1.每个问题重复三遍、研究三遍后再提问,直接得到答案的人什么都没学会。
2.做事要有始有终,感谢那些帮助自己解决问题的人,把解决的方法总结起来。
回复

使用道具 举报

20

主题

83

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
268
金钱
268
注册时间
2016-7-14
在线时间
49 小时
 楼主| 发表于 2016-8-3 11:12:53 | 显示全部楼层
likunxue 发表于 2016-8-3 09:44
//以下代码将关闭JTAG,使能SWD调式模式
     /****
     RCC->APB2ENR |= 1

我还没到举一反三的水平啊。手册里找不到对DBGMCU这些寄存器描述,所以你给我的代码我知道可以改PB3了。怎么改PB4呢
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-8 17:04

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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