打印

请教关于USART和ADC的端口的AFIO问题

[复制链接]
2888|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tiankai001|  楼主 | 2008-3-25 08:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近在学习ST公司固件库中的关于USART和ADC的例子的时候,有个疑问:在使用USART2的例子程序中有把USART所在IO端口重映射为USART端口功能,
/* Enable GPIOD and AFIO clocks */
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD | RCC_APB2Periph_AFIO, ENABLE);
而在ADC的例子程序中,则没有把ADC所在IO端口重映射为ADC功能,

哪位大侠知道这是为什么?
沙发
香水城| | 2008-3-25 10:20 | 只看该作者

你给出的那句语句只是打开时钟,并没有重映射功能

估计你说的是STM32,下次请说明白,谢谢。

使用特权

评论回复
板凳
lut1lut| | 2008-3-25 10:47 | 只看该作者

不是“把USART所在IO端口重映射为USART端口功能”

“重映射”是把某个功能模块映射到不同的I/O端口;而不是把某个I/O端口“重映射”为某个功能模块

使用USART2的时候,本来USART2对应的I/O口是PA,由于PA端口可能作为它用,于是把USART2对应的I/O口“重映射”到PD。由于使用了这个“重映射”功能,所以要打开AFIO的时钟。

ADC的例子中,就用的本来ADC所暂用的I/O端口,并且ADC本身并不支持“重映射”到其它I/O上。

使用特权

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

本版积分规则

31

主题

72

帖子

2

粉丝