3576|7

111

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

求助 关于AFIO和端口复用 [复制链接]

最近在学STM32,对端口复用现在理解的有点混乱,希望大家给指导一下:首先我需要搞清楚一个概念 AFIO是端口复用的意思吗?串口通信实验,通过USART1发送数据到上位机,上位机收到之后原封不动的发送给USART1,需要将板子上的RXD和TXD用短路帽和PA9和PA10接起来,这里是不是也用到了端口复用啊,是不是需要使能复用时钟啊?RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1|RCC_APB2Periph_GPIOA, ENABLE);这句里面有使能复用端口时钟吗?
外部中断实验,按照库函数开发指南上写的是肯定需要使能复用时钟的,RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);这句是使能复用时钟吗?

如果串口中断和外部中断都需要使能复用时钟,为什么这两个还不一样啊。我现在特别混乱,希望大家帮我理一理,谢谢。

此帖出自stm32/stm8论坛

最新回复

哎 你这是被误导了看图!串口的TX只是用的是推挽复用输出配置,而不是复用功能,外部中断的的中断输入才是用的复用功能,再看你贴的图,只是配置串口时钟和相应的IO口时钟,并没有配置复用(AF)时钟,在另一张图里中断配置时才配置复用功能,这也是手册上要求的   详情 回复 发表于 2015-11-8 22:31
点赞 关注
 

回复
举报

503

帖子

1

TA的资源

一粒金砂(高级)

沙发
 
本帖最后由 曾经in 于 2015-11-7 00:26 编辑

1,复用就是一个IO脚同时具有多个功能,相当于内部有多路开关切换,具体哪种功能由端口配置高寄存器、端口配置低寄存器决定,库函数用GPIO_init()
2,第一句是打开USART1和GPIOA的时钟,就是启动串口和GPIOA模块,这两个是在APB2高速时钟总线上的,所以用RCC_APB2PeriphClockCmd(),第二句是打开(使能)AFIO时钟,外部中断要用到AFIO模块(外部中断配置寄存器在AFIO里)

复用是说引脚接到哪个模块上。RCC_APB2PeriphClockCmd是打开哪个模块的时钟,也就是让那个模块开始工作


此帖出自stm32/stm8论坛
 
 

回复

111

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
曾经in 发表于 2015-11-7 00:13
1,复用就是一个IO脚同时具有多个功能,相当于内部有多路开关切换,具体哪种功能由端口配置高寄存器、端口 ...

外部中断要用到AFIO模块(外部中断配置寄存器在AFIO里RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);),所以需要使能AFIO时钟;串口实验要用到USART,所以使能串口时钟(RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1|RCC_APB2Periph_GPIOA, ENABLE);)。也就是说这两个表述都是笼统的讲都是来使能复用时钟的,只是串口通信有串口通信的时钟,而外部中断因为外部中断配置寄存器在AFIO里,所以使能的是AFIO时钟。
我这么理解对吗
此帖出自stm32/stm8论坛
 
 

回复

503

帖子

1

TA的资源

一粒金砂(高级)

4
 
我不知道“复用时钟”这个词你在哪看到的
此帖出自stm32/stm8论坛
 
 
 

回复

111

帖子

0

TA的资源

一粒金砂(中级)

5
 
曾经in 发表于 2015-11-7 22:15
我不知道“复用时钟”这个词你在哪看到的

实验室战舰STM32开发板光盘里面的一个叫STM32库函数开发指南的PDF文档,我一直在根据这个文档来学,看视频学习的话感觉太慢了。

串口.PNG (87.92 KB, 下载次数: 0)

串口.PNG

外部中断.PNG (56.77 KB, 下载次数: 0)

外部中断.PNG
此帖出自stm32/stm8论坛
 
 
 

回复

503

帖子

1

TA的资源

一粒金砂(高级)

6
 
本帖最后由 曾经in 于 2015-11-8 22:23 编辑


也许之前是放在一起的,才会有这样的注释
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1|RCC_APB2Periph_GPIOA|RCC_APB2Periph_AFIO, ENABLE)



此帖出自stm32/stm8论坛
 
 
 

回复

1234

帖子

4

TA的资源

纯净的硅(高级)

7
 
哎 你这是被误导了看图!串口的TX只是用的是推挽复用输出配置,而不是复用功能,外部中断的的中断输入才是用的复用功能,再看你贴的图,只是配置串口时钟和相应的IO口时钟,并没有配置复用(AF)时钟,在另一张图里中断配置时才配置复用功能,这也是手册上要求的

QQ图片20151108222026.jpg (48.09 KB, 下载次数: 0)

串口配置I/O口

串口配置I/O口

QQ图片20151108222033.jpg (33.05 KB, 下载次数: 0)

外部配置I/O 口

外部配置I/O 口

QQ图片20151108222043.png (27.6 KB, 下载次数: 0)

基本I/O口结构

基本I/O口结构
此帖出自stm32/stm8论坛
 
个人签名天地庄周马;江湖范蠡船。
个性签名还是放QQ号吧,2060347305,添加说明EEworld好友
 
 

回复

111

帖子

0

TA的资源

一粒金砂(中级)

8
 
ywlzh 发表于 2015-11-8 22:31
哎 你这是被误导了看图!串口的TX只是用的是推挽复用输出配置,而不是复用功能,外部中断的的中断输入才是 ...

嗷嗷,这样子啊,我一开始还以为串口和外部中断都需要复用时钟来,我理解错了,我查过 网上说只有端口重映射、外部中断、事件需要开启复用功能时钟。
此帖出自stm32/stm8论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表