打印

PA15做输出不能改变状态

[复制链接]
4855|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
motor666|  楼主 | 2012-7-1 21:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
a15, GPIO, IO, pi, gp
本帖最后由 motor666 于 2012-7-1 21:55 编辑

STM32F105用SWD方式JLINKV8仿真,PA15被省出来做输出口,配置成GPIO_Mode_Out_PP,但是,无论置0还是置1,PA15都输出3.3V,仿真状态时,查看GPIOA_ODR15有变化。这个脚是JTDI,有什么讲究吗?请高手指点。
沙发
dyc1229| | 2012-7-1 22:15 | 只看该作者
要端口复用,建议查一下参考手册 AFO那部分

使用特权

评论回复
板凳
logokfu| | 2012-7-1 22:16 | 只看该作者
需要重映射下

使用特权

评论回复
地板
logokfu| | 2012-7-1 22:19 | 只看该作者
另外重映射之前要打开复用功能时钟

使用特权

评论回复
5
motor666|  楼主 | 2012-7-2 12:39 | 只看该作者
我理解是将AFIO_MAPR寄存器的SWJ_CFG位配置成02就可以了。可是,运行起来是F0,复用功能时钟也没找到在哪里。

使用特权

评论回复
6
zh5202| | 2012-7-2 13:12 | 只看该作者
需要重新映射一下,但是映射也有讲究,我用的是STM32F103单片机,重新映射方法如下:
首先要打开GPIOA的AFIO时钟:
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
然后调用GPIO重映射函数,根据需求实现重映射:
GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable,ENABLE);

你看一下具体你使用的是哪个引脚,它的复位初始化状态是什么情况,然后看看它对应重映射的章节,这样就知道该如何操作了。

使用特权

评论回复
7
motor666|  楼主 | 2012-7-2 13:25 | 只看该作者
搞定了,多谢诸位。

使用特权

评论回复
8
logokfu| | 2012-7-2 13:28 | 只看该作者
手册上有说明得,重映射之前必须先打开复用功能时钟。

使用特权

评论回复
9
motor666|  楼主 | 2012-7-2 14:21 | 只看该作者
从别的单片机转到STM的,肯定要熟悉一段时间,手里的这个项目还挺难,要是用我原来熟悉的单片机,差不多该结束了,用ST的还有一段路要摸索。

使用特权

评论回复
10
悠然科技| | 2012-7-2 16:04 | 只看该作者
人总是有惯性思维的,从这个角度,学一个新东西,新手反而比老手更容易

使用特权

评论回复
11
miao5061| | 2016-1-8 14:08 | 只看该作者
zh5202 发表于 2012-7-2 13:12
需要重新映射一下,但是映射也有讲究,我用的是STM32F103单片机,重新映射方法如下:
首先要打开GPIOA的AFI ...

兄弟啊,你这句话吧SW模式也关掉了,现在我下载不了程序,该怎么解决啊?

使用特权

评论回复
12
miao5061| | 2016-1-8 14:09 | 只看该作者
zh5202 发表于 2012-7-2 13:12
需要重新映射一下,但是映射也有讲究,我用的是STM32F103单片机,重新映射方法如下:
首先要打开GPIOA的AFI ...

兄弟啊,你这句话吧SW模式也关掉了,现在我下载不了程序,该怎么解决啊?

使用特权

评论回复
13
DannyDeng| | 2016-8-28 17:55 | 只看该作者
boot0下拉 用串口刷回去

使用特权

评论回复
14
cornrn| | 2017-9-27 17:35 | 只看该作者
DannyDeng 发表于 2016-8-28 17:55
boot0下拉 用串口刷回去

净胡说啊

使用特权

评论回复
15
cornrn| | 2017-9-27 17:36 | 只看该作者
GPIO_Remap_SWJ_JTAGDisable应该这样

使用特权

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

本版积分规则

173

主题

419

帖子

1

粉丝