OpenEdv-开源电子网

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

STM32F103mini开发板按键实验中,关闭JTAG问题

[复制链接]

15

主题

109

帖子

0

精华

高级会员

Rank: 4

积分
826
金钱
826
注册时间
2016-6-28
在线时间
160 小时
发表于 2017-3-23 12:54:53 | 显示全部楼层 |阅读模式
2金钱
本帖最后由 zhanming1990 于 2017-3-23 16:22 编辑

大家好,本人最近新入手一块mini开发板,正在学习当中。第一次发帖,如有问题,请多多指教。谢谢

最近在学习原子哥的教程,按键实验中(库函数版本),发下以下疑问:
      1,在void KEY_Init(void)初始化函数中,并没有开启复用时钟RCC_APB2Periph_AFIO。 1.png 但程序烧写到板子中能正常运行。我又尝试注销掉GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE), 2.png ,重新编译烧写后,依然能正常运行。
自己理解:在我调试分析中,发现PA15默认状态就是带上下拉的输入 3.png ,硬件上又带了上拉电阻, 4.jpg ,刚好跟我们关闭JTAG功能后,设置PA15为带上拉输入一样,所以歪打正着,程序能正常运行。

2,在没有开启复用时钟时候调试,监测AFIO,没有任何变化。 5.png 。于是我先在程序中开启RCC_APB2Periph_AFIO, 6.png ,编译烧录后,重新调试。又发现疑问。在程序执行完GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE)函数后,AFIO->MAPR寄存器的值为0x04000000。 7.png ,可资料中介绍的为SWJ_CFG[2:0]为010: JTAG-DP Disabled and SW-DP Enabled。所以AFIO->MAPR寄存器的值为0x02000000才对吧??


总结:对于第一个问题:我觉得还是要开启复用时钟RCC_APB2Periph_AFIO。第二个,请各位帮我分析分析,怎么回事。谢谢

最佳答案

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

1.确实是需要开启AFIO才能重映射,出现那个现象就是因为PA15本来外部有个上拉电阻,但是即使没有复用成功,PA15仍然可以读取IO, 但如果用作输出,那就会出问题了 2.应该是仿真显示的问题,正确值应该0x02000000;
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

2170

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5789
金钱
5789
注册时间
2013-11-22
在线时间
1214 小时
发表于 2017-3-23 12:54:54 | 显示全部楼层
1.确实是需要开启AFIO才能重映射,出现那个现象就是因为PA15本来外部有个上拉电阻,但是即使没有复用成功,PA15仍然可以读取IO, 但如果用作输出,那就会出问题了
2.应该是仿真显示的问题,正确值应该0x02000000;
回复

使用道具 举报

15

主题

109

帖子

0

精华

高级会员

Rank: 4

积分
826
金钱
826
注册时间
2016-6-28
在线时间
160 小时
 楼主| 发表于 2017-3-23 12:55:55 | 显示全部楼层
怎么图片都不见了??
回复

使用道具 举报

15

主题

109

帖子

0

精华

高级会员

Rank: 4

积分
826
金钱
826
注册时间
2016-6-28
在线时间
160 小时
 楼主| 发表于 2017-3-24 15:41:53 | 显示全部楼层
lycreturn 发表于 2017-3-23 23:05
1.确实是需要开启AFIO才能重映射,出现那个现象就是因为PA15本来外部有个上拉电阻,但是即使没有复用成功, ...

我烧录寄存器版本的程序,调试,也是显示0x04000000。能确定是仿真显示的问题吗?
回复

使用道具 举报

3

主题

2170

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5789
金钱
5789
注册时间
2013-11-22
在线时间
1214 小时
发表于 2017-3-24 16:59:22 | 显示全部楼层
zhanming1990 发表于 2017-3-24 15:41
我烧录寄存器版本的程序,调试,也是显示0x04000000。能确定是仿真显示的问题吗?

是的  实际写入0x02000000, 但显示的是0x04000000
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-8-22 20:26

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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