STM32G070填坑(1)--默认下拉的4个引脚

3 篇文章 2 订阅

STM32G070填坑(1)–默认下拉的4个引脚

意法半导体新系列STM32微控制器STM32G0系列,基于Arm Cortex-M0 +内核,在严格的功率预算内提供出色的性能。
新系列意味着资料少,网上分享的调试经验也少(目前是几乎没有);不像STM32F系列铺天盖地的资料和各种调试经验。
最近因项目需要进行STM32G070的开发调试,记录下遇到的一些问题。

PD0/PD2/PB15/PA8默认4K下拉

在项目中,PB15和PA8被用于按键检测,同时外接了10K的上拉电阻,上电(3.3V)后发现两引脚的电压为0.9V左右;在排除了其他可能的情况后,我拔掉了MCU(没错,就是这么简单粗暴),引脚电压恢复为3.3V,正常了。如此看来,问题出在MCU引脚上,根据电压值,应该是引脚下拉了4K左右的电阻。
最终在用户手册(RM0454)中找到了问题的原因:

Bit 10 UCPD2_STROBE: PD0 and PD2 pull-down configuration strobe
Upon power on, internal pull-down resistors on PD0 and PD2 pins are enabled (connected). Setting this bit disables (disconnects) the internal pull-down resistors.
This bit is only available in STM32G070xx. It is reserved in STM32G030xx.
Bit 9 UCPD1_STROBE: PB15 and PA8 pull-down configuration strobe
Upon power on, internal pull-down resistors on PB15 and PA8 pins are enabled (connected). Setting this bit disables (disconnects) the internal pull-down resistors.
This bit is only available in STM32G070xx. It is reserved in STM32G030xx.

MCU上电后,这4个引脚默认连接了下拉电阻。

解决方法

我们的应用中,不需要这个下拉电阻,所以在代码中进行配置即可:

HAL_SYSCFG_StrobeDBattpinsConfig(SYSCFG_CFGR1_UCPD1_STROBE | SYSCFG_CFGR1_UCPD2_STROBE);

扩展–UCPD

这里简单分享下为什么这4个引脚会默认连接下拉电阻。

STM32G0微控制器是世界上首个支持USB Type-C规格的通用微控制器。意法半导体创新的USB Type-C Power Delivery (UCPD)接口IP模块整合通过认证的USB Type-C连接器管理和PD协议处理与微控制器功能,包括Arm®Cortex®-M0 +内核、高达512 KB的闪存以及外围设备,例如,12位2.5 MSPS ADC、2通道DAC、快速比较器和高精度定时器。
片上集成多达两个UCPD接口。每个接口都支持USB-C 用电(SNK)、供电(SRC)或用电供电双角色 (DRP),并支持USB PD功能选项,例如,PPS(编程电源)模式、通信(CC)线固件升级和验证消息。

PD0/PD2/PB15/PA8正好就是这个两个UCPD接口的CC控制引脚。

在JMeter中进行多用户并发测试可以通过配置线程组来实现。线程组是定义并发用户的地方,你可以设置线程数、线程启动延迟、循环次数等参数以模拟多个用户同时访问系统。 以下是进行多用户并发测试的步骤: 1. 创建测试计划:在JMeter中,你需要创建一个测试计划。右键点击测试计划 -> 添加 -> Threads(Users)-> 线程组。 2. 配置线程组参数:选中线程组,右键点击 -> 添加 -> Config Element -> HTTP Cookie Manager(如果需要管理Cookie)和HTTP Cache Manager(如果需要模拟缓存)。 3. 添加Sampler:选中线程组,右键点击 -> 添加 -> Sampler -> HTTP Request(用于发送HTTP请求)或其他类型的Sampler。 4. 设置Sampler参数:在Sampler中,你可以设置请求的URL、请求方法、参数、头部信息等。 5. 添加断言:选中Sampler,右键点击 -> 添加 -> Assertions -> Response Assertion(用于验证响应内容)或其他类型的断言。 6. 添加监听器:选中线程组,右键点击 -> 添加 -> Listener -> 聚合报告或其他类型的监听器。监听器用于收集和展示测试结果。 7. 配置并发用户数:选中线程组,设置“Number of Threads(users)”参数为你想要模拟的并发用户数。 8. 配置循环次数:选中线程组,设置“Loop Count”参数为每个用户执行请求的次数。 9. 运行测试:点击工具栏上的运行按钮(绿色三角形按钮)来开始运行测试。你可以在监听器中查看测试结果。 10. 分析结果:根据监听器中的结果,你可以分析系统的性能情况,如响应时间、吞吐量等。根据结果进行优化和调整。 通过配置合适的线程组参数和Sampler,你可以实现多用户并发测试。记得根据被测试系统的实际情况和性能需求来设置合理的并发用户数和循环次数。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值