问题标签 [bluepill]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
timer - STM32 禁用和启用由定时器控制的 DMA 和 PWM
我正在使用 STM32F103。我正在尝试动态启用和禁用由定时器控制的 DMA 传输和 PWM 信号。计时器非常不稳定,结果从重新启动变为重新启动。代码运行函数 CAM_startLineTransfer(),它应该启用 DMA 传输和 PWM 信号。
当 DMA 已传输 640 字节时,应触发中断。
函数 CAM_stopLineTransfer() 应该禁用 DMA 和 PWM 信号,而不是定时器本身。计时器应不断计数。
但是,定时器很不稳定,有时整个定时器都被禁用,有时中断没有被调用。怎么了?到这里,整个主程序就是。
ios - 在 CI 上的 UI 测试不稳定
更新:
VNC 进入构建机器(不做任何更改)以某种方式解决了这个问题....奇怪
语境
我们使用 Mac EC2 实例 CI 集群来运行 UI 测试。集群设置为每晚回收。意味着新集群是在早上配置的。我们注意到测试在一天中变得越来越不稳定。
- 构建 312 是早上的第一个构建。
- 红色是失败的测试,橙色是静默测试,黄色是片状测试,灰色是未知状态
- 提交只是触发构建的空白自动提交。测试内容相同。
- 注意:Bluepill 配置为每台机器运行一个模拟器(无并发)
日志
不稳定的测试或失败通常是由于“等待某些资源空闲”并达到超时,或者某些网络请求完成。失败或不稳定的测试也有一个共同点,即它们通常与视频有关
这是几个示例日志
等待应用空闲
并等待网络请求完成
假设
这让我认为有一些孤立的子进程或守护进程仍然保留资源。或者有工件没有被正确清理。
我尝试过的事情
- 关闭,擦除,删除构建之间的所有模拟器(无帮助)
- 在构建之间终止 CoreSimulator 相关服务(无帮助)
- 在构建之间删除模拟器设备、日志和缓存。这实际上有点帮助。片状最初消失了,但在几次构建后很快又回来了,而机器仍在执行构建之间的清理……不知道为什么。
- 在 EarlGrey 上增加动画超时、交互超时
- 将请求挂起的 URL 列入黑名单。这确实通过忽略症状而不修复实际问题来提高测试套件的稳定性,所以我希望我可以避免这种情况。
还有其他人遇到同样的问题吗?欣赏是否有人可以对此有所了解或提出尝试的建议。
注意:我们使用Bluepill和EarlGrey2在 Buildkite CI 管道上运行 UI 测试(iOS 14.5、Xcode 12.5)。
rust - 在 bluepill 开发板上使用 stm32f1xx_hal 对 GPIO 输出进行外设初始化
我想在我的蓝色药丸板上初始化一个基本的输出 GPIO 引脚。我正在使用 Rust 和stm32f1xx_hal
箱子。我想创建一个结构Peripherals
,它以下列方式保存输出的句柄:
此代码不起作用,因为init_led
返回Option<&GpioOutput>
. Peripherals
现在我想知道在结构中使用生命周期参数并在结构中存储对 的引用是否有意义GpioOutput
。还是存储未引用的值更明智 - 我将如何实现这些选项中的任何一个?
唯一可行的解决方案是将 init_led 代码移动到 init 函数的范围内:
但我想在它自己的函数中分离该代码。我怎样才能做到这一点?
stm32 - bluepill 和 stm32cubemx 中 SPI 通信的奇怪性能
我正面临一个关于 bluepill (stm32f103c8) 的奇怪问题。我开发了一个代码来控制使用 SPI 通信(APA102)的铅可寻址条纹,它运行良好,然后我尝试在 SPI 旁边的定时器 2 上进行 PWM,这使得 LED 条纹产生完全奇怪的性能,比如点亮不同的 LED我选择的那个,忽略了其他的 LED 等等……更奇怪的是,我创建了一个新项目并测试了在添加 PWM 之前运行良好的原始 SPI 代码,并扼杀了同样奇怪的结果!我卸载了STM32Cube,然后重新安装,没有任何变化。我决定重新开始并通过互联网学习一些教程,我在这里关注了这个: https ://www.youtube.com/watch?v=XcDL2afLpNY 但是在使用SPI传输命令时它使用keil而不使用HAL,所以我稍微修改了他的代码(我修改后的代码显示在最后),所以我可以使用HAL发送,我又得到了类似的怪异表现. 我改变了一切,接线,微控制器,卸载 IDE 并再次安装它,但没有任何效果。可能缺少什么?有什么建议吗?