这是一个初学者不会去了解的问题,但,会使老司机掉坑的问题。这也是最近在技术交流群看到的一个问题,所以,就出来简单分享一下。
概述
这个问题看起来比较简单,我相信很多人都能说出答案。但是,很多人都只是停留在表面,没有在项目中经历过,也没有更深入的去了解。
很早之前年的单片机可能没有输出速度这个配置选项,但是这后面的单片机基本都有配置速度的选项,下面结合stm32来简单介绍一下。
gpio输出速度
不管标准外设库,还是stm32cubemx配置gpio输出引脚,都会有速度gpio_initstruct.speed这个选项。
类似如下:
gpio_initstruct.pin = gpio_pin_5;gpio_initstruct.mode = gpio_mode_output_pp;gpio_initstruct.pull = gpio_nopull;gpio_initstruct.speed = gpio_speed_freq_low;hal_gpio_init(gpioa, gpio_initstruct);
根据不同mcu型号,速度选项,有些有3个,有些有4个。一般定义在xxx_gpio.h文件中。
#define gpio_speed_2mhz gpio_speed_level_1 /*!< i/o output speed: low 2 mhz*/#define gpio_speed_10mhz gpio_speed_level_2 /*!< i/o output speed: medium 10 mhz */#define gpio_speed_50mhz gpio_speed_level_3 /*!< i/o output speed: high 50 mhz */#define gpio_speed_freq_low (0x00000000u) /*!< low speed */#define gpio_speed_freq_medium (0x00000001u) /*!< medium speed */#define gpio_speed_freq_high (0x00000002u) /*!< high speed */#define gpio_speed_freq_very_high (0x00000003u) /*!< very high speed */
对于普通输出gpio,使用stm32cubemx配置,默认配置低:
当然,如果配置成其他模式,有可能是中,或高。
比如:配置uart、can引脚,速度会是高。
提问:你想过为什么会是低、高吗?
测量gpio输出波形
不知道大家用示波器测量过gpio输出波形没有,特别是在高速(单位m)的时候。
我以前经常测量mco引脚输出时钟,测量过的人应该都知道,如果输出速度高于配置速度,会明显看到波形不正常。波形会出现不完整,幅度低等失真现象。相信不用我说,有一定常识的人都能理解。
差异原因
速度的配置,就是决定io口驱动电路的响应速度。我们需要结合实际情况配置速度,不同速度会有不同的影响。
高低速差异:配置高速:输出频率高,噪音大,功耗高,电磁干扰强;
配置低速:输出频率低,噪音小,功耗低,电磁干扰弱;提高系统emi(电磁干扰)性能;
看到差异,相信很多人就能理解了。实际情况中,比如:低功耗的产品,你会考虑功耗。环境不好的场合,通信不稳定,你会考虑电磁干扰等。
举例:如果你使用9600波特率uart通信,建议速度配置为低。所以,如果你想使产品更加完美,速度配置也是关键的一项。
来源:strongerhuang
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理
德州仪器推出业界最灵活的触觉及电容式触摸组合解决方案
焊接电弧的特性_焊接电弧的导电特性
中国能源需求和结构变化以及带来的影响进行预测分析
iPhone8概念真机美图大猜想,6.2寸+腮红金新配色,这颜值就想问买多少钱?
太阳能4G无线灌溉控制器,助力智慧灌溉,节水增产
单片机IO配置不同速度有啥区别?
华为将进一步发布全堆栈的AI战略和解决方案
“小铭”来啦!铭普光磁IP形象正式亮相!
噪音来源于PCB设计/电路振荡/磁元件三方面
涂鸦Wi-Fi和BLE SoC开发幻彩灯带
LDO中使用cascode运放的补偿方法
主板上的3.0接口,你知道多少?
视频监控的大数据分析是一个完整的大数据技术应用
运放参数解析:输入偏置电流(Ibias)和失调电流(Ios)
聚合物电池的特点_聚合物电池的性能作用
无人机如何保我们平安
无纸化会议系统满足现代会议的需求
高精度传感器信号变送器 | 灵活应对各种电信号需求
自制家庭水能源发电机
iphone8什么时候上市?iphone8最新消息:iphone8出货量预计为一亿台,其中8000万台在中国销售