OpenEdv-开源电子网

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

按键输入学习笔记

[复制链接]

6

主题

21

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
312
金钱
312
注册时间
2015-7-15
在线时间
36 小时
发表于 2016-2-27 00:45:39 | 显示全部楼层 |阅读模式
本帖最后由 bruceSTM32 于 2016-2-27 09:23 编辑

在学习按键输入实验的时候,碰到端口重映射的问题,在这里把学习的心得记录下来。


什么是端口重映射,可以简单的理解为将外设的复用功能重新映射到其他的管脚上,当然只有指定的外设复用功能才可以重映射其他引脚上。
1、先来说说实验中遇到的问题。我用的是原子ministm32V3.0的开发板,在按键输入实验中按键KEY1接到PA15上,PA15引脚定义如图所示。

QQ截图20160226235917.jpg


按键要使用的是PA15的IO功能,而PA15默认的却是JTAG的JTDI(数据输入引脚)功能。
图中圈起来的地方可以看到TIM2_CH1_ETR/PA15/SPI1_NSS复用功能可以重映射到PA15引脚上。
下表为JTAG/SWD调试接口复用功能重映射到GPIO端口(查stm32参考手册)

QQ截图20160227002432.jpg
通过设置复用重映射和调试I/O配置寄存器(AFIO_MAPR)的SWJ_CFG[2:0]位,可以改变上述重映像配置,如下表所示

QQ截图20160227003145.jpg
因此只需要关闭JTAG-DP,启用SW-DP,PA15脚就可以作为IO口使用了。
通过调用函数 GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE)就可以关闭JTAG,开启SW调试接口。
2、另外再举一个端口重映射的例子。
下图为usart1重映射
QQ截图20160227003726.jpg
usart1_TX/RX为PA9/PA10的复用功能,而且可以重映射到引脚PB6/PB7上。也就是说当PA9/PA10用作其他功能时,
通过配置PB6/PB7,就可以作为usart1的发送/接收引脚。
3、总结一下配置端口重映射的步骤
(1)使能外设复用功能重映射的GPIO口时钟;
(2)使能功能复用IO时钟;
(3)使能外设时钟;
(4)配置GPIO口。








正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

6

主题

21

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
312
金钱
312
注册时间
2015-7-15
在线时间
36 小时
 楼主| 发表于 2016-2-27 00:59:08 | 显示全部楼层
回复 支持 反对

使用道具 举报

6

主题

188

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
432
金钱
432
注册时间
2016-1-19
在线时间
38 小时
发表于 2016-2-27 09:02:11 | 显示全部楼层
帮赞   
回复 支持 反对

使用道具 举报

0

主题

5

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
216
金钱
216
注册时间
2016-1-2
在线时间
20 小时
发表于 2016-2-27 09:15:02 | 显示全部楼层
顶起,加油!
回复 支持 反对

使用道具 举报

6

主题

21

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
312
金钱
312
注册时间
2015-7-15
在线时间
36 小时
 楼主| 发表于 2016-2-27 09:23:44 | 显示全部楼层
加油!
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-21 04:22

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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