EDN首页   博客首页 用户登陆  |  注册

日志档案

发表于 2008/4/12 17:39:12

4

标签: STM32  GPIO  优越功能  I/O口速度  

STM32 GPIO端口的输出速度设置

当STM32的GPIO端口设置为输出模式时,有三种速度可以选择:2MHz、10MHz和50MHz,这个速度是指I/O口驱动电路的速度,是用来选择不同的输出驱动模块,达到最佳的噪声控制和降低功耗的目的。

高频的驱动电路,噪声也高,当你不需要高的输出频率时,请选用低频驱动电路,这样非常有利于提高系统的EMI性能。

当然如果你要输出较高频率的信号,但却选用了较低频率的驱动模块,你很可能会得到失真的输出信号。


实际上芯片内部在I/O口的输出部分安排了多个响应速度不同的输出驱动电路,用户可以根据自己的需要选择合适的驱动电路。

注意:GPIO的引脚速度是指I/O口驱动电路的响应速度而不是输出信号的速度,输出信号的速度与你的程序有关。


关键是,GPIO的引脚速度跟应用匹配。

比如对于串口,假如最大波特率只需115.2k,那么用2M的GPIO的引脚速度就够了,既省电也噪声小。

对于I2C接口,假如使用400k波特率,若想把余量留大些,那么用2M的GPIO的引脚速度或许不够,这时可以选用10M的GPIO引脚速度。

对于SPI接口,假如使用18M或9M波特率,用10M的GPIO的引脚速度显然不够了,需要选用50M的GPIO的引脚速度。

系统分类: 单片机   |   用户分类: 性能分析   |   来源: 原创   |   【推荐给朋友】   |   【添加到收藏夹】

阅读(2827)  |  评论(5)  |  收藏(0)  |  举报  

投一票您将和博主都有获奖机会!

最新评论

  • STM32

    2009/5/16 22:56:01

    I/O口驱动电路的响应速度就是我们通常说的带宽。

  • gavinkwok

    2009/5/13 12:57:20

    GPIO的引脚速度是指I/O口驱动电路的响应速度........ 这个I/O口驱动电路的响应速度是什么意思呢?

  • STM32

    2008/4/15 10:37:55

    GPIO设置成ADC输入时,此项设置当然不起作用了。实际上,GPIO口设为输入时,输出驱动电路与端口是断开的。

  • golfee

    2008/4/15 9:38:41

    只是对输出起作用吗?如果GPIO口设置成ADC输入,此项设置是不是就无所谓多少了?

  • cqcrr

    2008/4/12 21:52:53

    good,很有帮助,再接再厉