客户在使用STM32L4 RTC功能的时候,调试时发现日历不再更新,而通过IAR跟踪RTC相关寄存器,同样发现没有更新,奇怪的是,在单步运行时,寄存器是可以更新的。
STM32 RTC不更新原因分析.pdf
(141.17 KB)
该问题由某客户提出,发生在 STM32F103VBT6 器件上。据其工程师讲述:在为 STM32 调试软件过程中,遇到了一个怪现象:有如表(一)所示的一段程序中,KeyIn 是一个全局变量。当有按键按下时,键盘的中断服务程序会将对应的键值放入其中,当按键释放后,键盘中断服务程序则把 RESET 值放入该变量。行(1)的条件语句在主程序中,检测有无按键按下,并处理。行(2)则是等待按键释放。调试时,在行(1)和行(2)处各设置一个断点,然后全速运行程序。当程序停在行(1)时按下按键,继续全速运行程序。当程序停在行(2)时,放开按键,继续全速运行程序。这时,发现程序没有向下执行,而是依然回到并停留在行(2)处。打开观察窗口,观察变量 KeyIn 的值,确认其值为 RESET。再次起动全速运行,程序依然回到行(2),而不是向下执行。
跳不出的 while 循环.pdf
(364.04 KB)
该问题由某客户提出,发生在 STM32F103VBT6 器件上。据其工程师讲述:其产品中使用了 STM32 作为主控单元,负责系统的管理。在对产品测试时发现了一个奇怪的现象:在关闭电源后,STM32 仍然能够对 UART 上输入的信息做出回应。
关闭电源还在运行.pdf
(183.13 KB)
该问题由某客户提出,发生在 STM32F103VBT6 器件上。据其工程师讲述:其产品中使用了 STM32,已批量生产。据其客户反馈,其产品在雨天等潮湿的环境下,会出现不工作的情况。将客户退回的产品放在模拟的潮湿环境下试验,的确重现不工作的现象。将产品外的壳拆开后,用热风枪逐个吹干每个元器件。当将 STM32及周边的几个电阻、电容元件吹干后重新上电时,其产品可以恢复工作。进一步测量发现,在潮湿的环境下,STM32 的 HSE 没有振荡输出。由此,定位出 STM32 在潮湿的环境下失效,导致了其产品的不工作。
潮湿环境下不工作.pdf
(114.02 KB)
在STM8L152数据手册中,参数IDD(RUN)的典型值是1.97mA。客户实际测试2.7mA ,因此产生疑问。
STM8L152 IDD电流测量.pdf
(254.95 KB)
该问题由某客户提出,发生在 STM32F103VCT6 器件上。据其工程师讲述:其产品中设计中,用到了 STM32 的内部 RTC 功能,而 RTC 的时钟由 LSE 提供。在产品的小批量试产中,发现有个别产品开不 了机。进一步测量发现,LSE 没有起振。
PCB 漏电引起 LSE 停振.pdf
(482.48 KB)
该问题由某客户提出,发生在 STM32F207VET6 器件上。据其工程师讲述:部分芯片无法通过拉低NRST PIN产生复位。该现象一旦上电复位后无法重现。客户的应用中通过外部硬件看门狗定时给NRST PIN送低电平产生复位。正常情况下,MCU会给外部硬件看门狗喂狗。
STM32_STM8硬件平台基本检查.pdf
(199.52 KB)
在很多便携式消费类设备上,通常需要通过USB口对设备自带的锂电池充电。如果使用专用的电池管理芯片,不仅增加了产品成本,也增大了PCB的面积。所以客户希望在已有的主芯片STM32上同时实 现对锂电池的充电管理。
使用STM32实现锂电池充电器.pdf
(132.33 KB)
该问题由某客户提出,发生在STM32F401CEY6器件上。据其工程师讲述:在程序中,在进入STOP模式之前他已经将STM32F401 的I/O口做完处理了,但是电流仍然比数据手册写的数值还要大很多,不知道是在哪里消耗了电流。希望能帮他验证一下。
验证STM32F401在STOP模式下的电流.pdf
(229.36 KB)
STM32其他实战经验合集-1 |