以前用的一个【片就发现,电慢慢不足,先受影响的是CAN,然后CPU才受到影响。
现在正在做STM32的电源供电对通信的影响
万用表 FLUKE 17B
电源ZHAOXIN RXN-605D
芯片STM32F103V
分析仪SYSTIC PCAN VIEW
串口SSCOM
---------------------------------
继续 外部正常供电5V情况下, |
----------------------------------
外部3.8V时候 触发2.9V的PVD |
----------------------------------
本帖最后由 xlsbz 于 2014-11-8 16:06 编辑 |
---------------------------------------------------
3.343V下CAN出初始化成功 低一点 大概3.1就不成功。 |
--------------------------------------------------
外部3.8V时候 触发2.9V的PVD,但是USART通信没问题。打印出ms的时间
可以看到。
normal = 0,-----26611
normal = 0,-----27611
pvd = 2
normal = 0,-----28611
normal = 0,-----29611
normal = 0,-----30610
normal = 0,-----31611
normal = 0,-----32611
normal = 0,-----33611
normal = 0,-----34611
normal = 0,-----35611
normal = 0,-----36611
pvd = 3
normal = 0,-----37611
进一次中断pvd的值+1在while(1)主循环里面打印出上面pvd=?的信息。注意是裸奔
----------------------------------------------------------------------------
当外部供电达到3.056时候
RS232的com1停止输出
normal = 0,-----468611
normal = 0,-----469611
normal = 0,-----470611
normal = 0,-----471611
normal = 0,-----472610
normal = 0,-----473611
normal = 0,-----474610
normal = 0,-----475611//这里停止了
然后再升压,发现重新初始化寄存器 就是从头开始运行程序了。
说明3.056时候cpu已经无法工作了。升压后相当于重新上电了,并且RCC时钟返回RCC_GetFlagStatus的那几个值完全和5v时候一样。彻底说明是重新上电了
开狗了,但是没有引发看门狗复位。
---------------------------------------------------------------------------
另外,在做测试过程中,有次竟然出现了进入harddefault的情况,后来一查,原来是打印语句用的不对应该是%u,我写成了n%。看样子这个pritnf真是个危险的东东。
misra的推荐是很有道理的。