搜索
bottom↓
回复: 38

STM32L051高低温测试不通过

[复制链接]

出0入0汤圆

发表于 2016-8-8 16:40:55 | 显示全部楼层 |阅读模式
向各位高手请教一个问题  STM32L051K8U6在高温时(约60度以上)出现不工作现象,找不到头绪,功能很简单。

测试设备:烘箱,PC,USB转UART(TTL),USB HUB
MCU固件功能:使用内部晶振(2.097MHz),I2C时钟100KHz,UART波特率9600, I2C每200ms读取传感器数据,UART每5S向外发送数据。
高低温测试条件: 在烘箱中25℃ 维持30分钟,后每1分钟升温1℃ 升到85℃ 维持110分钟,开始降温,每分钟降1℃ ,降到-40℃ ,维持110分钟。升温到25℃ ,持续30分钟。再次重复以上循环。
问题现象:在高温时(约60度以上)出现不工作现象,串口不向外送数据;温度降下来又恢复向外发送数据。我们可以确认这期间MCU没有reset。

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出10入23汤圆

发表于 2016-8-8 16:42:29 来自手机 | 显示全部楼层
示波器抓串口波形,是不是温度影响内部rc振荡频率,导致波特率不准

出0入0汤圆

发表于 2016-8-8 16:43:12 | 显示全部楼层
建议使用外部晶振,主要问题应该是晶振的问题。

出0入0汤圆

 楼主| 发表于 2016-8-8 16:52:31 | 显示全部楼层
zouzhichao 发表于 2016-8-8 16:42
示波器抓串口波形,是不是温度影响内部rc振荡频率,导致波特率不准

波特率不准的话,应该出来乱码把

出0入0汤圆

 楼主| 发表于 2016-8-8 16:53:45 | 显示全部楼层
tjjack 发表于 2016-8-8 16:43
建议使用外部晶振,主要问题应该是晶振的问题。

我也这么怀疑过,关键这款片子只有一个32.768的外部晶振。

出0入24汤圆

发表于 2016-8-8 17:52:01 | 显示全部楼层
很多方法都可以确认问题是不是出在时钟上面
观察串口波形,时钟输出,定时器,LED
最好是先确认一下

如果确认是时钟的问题,可以用LSE校准内部的RC时钟,TIM21可以做这件事情

出0入0汤圆

 楼主| 发表于 2016-8-9 08:27:47 | 显示全部楼层
20061002838 发表于 2016-8-8 17:52
很多方法都可以确认问题是不是出在时钟上面
观察串口波形,时钟输出,定时器,LED
最好是先确认一下

分析到位,多谢!

出0入0汤圆

发表于 2016-8-9 11:44:06 | 显示全部楼层
估计是时钟问题,时钟飘逸导致接收错误,并不是不发数据,软矫正解决

出0入0汤圆

发表于 2016-8-9 15:21:48 | 显示全部楼层
很大的可能是 USB TO UART 这个器件高低温有问题

出130入20汤圆

发表于 2016-8-9 15:30:25 | 显示全部楼层
内部晶振好像温度影响都比较大,还是用外部晶振来得靠谱啊,画图时怎么也得留个位置啊

出0入0汤圆

发表于 2016-8-9 15:31:11 | 显示全部楼层
USB转UART(TTL),USB HUB这些也放烘箱里吗?这两个非常可能不是工业级的。

出0入0汤圆

 楼主| 发表于 2016-8-9 20:59:58 | 显示全部楼层
shuiluo2 发表于 2016-8-9 15:30
内部晶振好像温度影响都比较大,还是用外部晶振来得靠谱啊,画图时怎么也得留个位置啊 ...

我选的这款不带外部晶振,主要是要电路板体积小

出0入0汤圆

 楼主| 发表于 2016-8-9 21:00:42 | 显示全部楼层
机械码农 发表于 2016-8-9 15:31
USB转UART(TTL),USB HUB这些也放烘箱里吗?这两个非常可能不是工业级的。

USB转UART(TTL),USB HUB这些不放在烘箱里

出0入0汤圆

 楼主| 发表于 2016-8-9 21:01:31 | 显示全部楼层
chenminhua1980 发表于 2016-8-9 11:44
估计是时钟问题,时钟飘逸导致接收错误,并不是不发数据,软矫正解决

现在在排查是不是内部晶振的问题

出0入0汤圆

发表于 2016-8-9 21:55:08 | 显示全部楼层
ST的实战经验里冇个说高低温不过的,最后找出来的原因是电源电路问题,电容小了,楼主也向这个方向找找

出0入0汤圆

发表于 2016-8-10 10:33:16 | 显示全部楼层
smaret 发表于 2016-8-9 21:55
ST的实战经验里冇个说高低温不过的,最后找出来的原因是电源电路问题,电容小了,楼主也向这个方向找找 ...

但是他的MCU没有reset,感觉电源也不怎么说的通。

出0入0汤圆

 楼主| 发表于 2016-8-10 20:42:26 | 显示全部楼层
smaret 发表于 2016-8-9 21:55
ST的实战经验里冇个说高低温不过的,最后找出来的原因是电源电路问题,电容小了,楼主也向这个方向找找 ...

谢谢兄弟,我试试看

出0入0汤圆

 楼主| 发表于 2016-8-10 20:43:56 | 显示全部楼层
scsdwxj2005_5 发表于 2016-8-10 10:33
但是他的MCU没有reset,感觉电源也不怎么说的通。

兄弟,你有何建议?谢谢!

出0入0汤圆

发表于 2016-8-11 08:23:44 | 显示全部楼层
找个板子上电,拿热风枪吹(温度调低),同时带示波器看信号,关注那些对温度敏感的器件,挨个吹吹,看看能不能找到问题

出0入0汤圆

发表于 2016-8-11 09:27:14 | 显示全部楼层
hwarm 发表于 2016-8-10 20:43
兄弟,你有何建议?谢谢!

单一变量,挨着排查。

出0入0汤圆

发表于 2016-8-11 10:45:39 | 显示全部楼层
楼主调的怎么样了?感觉不像是051的问题,传感器会不会高温下工作异常?

出0入0汤圆

 楼主| 发表于 2016-8-11 21:21:29 | 显示全部楼层
scsdwxj2005_5 发表于 2016-8-11 09:27
单一变量,挨着排查。

正在排查中

出0入0汤圆

 楼主| 发表于 2016-8-11 21:22:35 | 显示全部楼层
beikeer 发表于 2016-8-11 10:45
楼主调的怎么样了?感觉不像是051的问题,传感器会不会高温下工作异常?

还没找到原因,传感器没有问题,在其他平台上高温下可正常工作

出0入0汤圆

发表于 2016-8-11 21:28:56 | 显示全部楼层

先确定串口的外围电路在高温下无问题,这没问题的话,无非是复位、晶振、电源。。。基本跑不出这三项,一项项查。

出0入0汤圆

发表于 2016-8-11 22:08:39 来自手机 | 显示全部楼层
hwarm 发表于 2016-8-9 21:00
USB转UART(TTL),USB HUB这些不放在烘箱里

都拉线了 多拉几根出来示波器看呗  这个片子不能外接晶振?

出0入0汤圆

发表于 2016-8-12 09:29:53 | 显示全部楼层
hwarm 发表于 2016-8-11 21:22
还没找到原因,传感器没有问题,在其他平台上高温下可正常工作

可以把其它功能屏蔽,只留串口输出功能,在常温、高温下引出线用示波器测试波形,看数据有没有发出来,波特率对不对。这个片子我用过,75℃很稳定,只不过用的是SPI,没有用串口。

出0入0汤圆

发表于 2016-8-12 09:38:56 | 显示全部楼层
温度高的时候,内部RC时钟应该会飘逸吧。要不拉线出来看看UART的波形?

出0入0汤圆

 楼主| 发表于 2016-8-13 21:20:48 | 显示全部楼层
多谢以上各位兄弟,目前是这样的单串口向外发数据是没有问题的,加上I2C读取传感器时会出问题。这个传感器在其他单片机上在85度可以正常工作。

出0入17汤圆

发表于 2016-8-13 21:50:42 来自手机 | 显示全部楼层
iic时序在高温时异常?

出0入4汤圆

发表于 2016-8-13 22:36:50 | 显示全部楼层
IIC是内部上拉还是外部?  上拉电阻多大》?  改小点试试

出0入0汤圆

 楼主| 发表于 2016-8-15 10:15:34 | 显示全部楼层
huarana 发表于 2016-8-13 22:36
IIC是内部上拉还是外部?  上拉电阻多大》?  改小点试试

上拉电阻已经由10K改为4.7K。

出0入0汤圆

发表于 2016-8-15 11:24:25 | 显示全部楼层
学习一下。

出0入0汤圆

发表于 2016-8-16 11:07:02 | 显示全部楼层
hwarm 发表于 2016-8-13 21:20
多谢以上各位兄弟,目前是这样的单串口向外发数据是没有问题的,加上I2C读取传感器时会出问题。这个传感器 ...

I2C速率多少?可以降速试试。

出0入0汤圆

 楼主| 发表于 2016-8-16 21:11:02 | 显示全部楼层
beikeer 发表于 2016-8-16 11:07
I2C速率多少?可以降速试试。

100k的时钟

出0入0汤圆

发表于 2016-8-17 08:56:14 | 显示全部楼层

用IO模拟试试,排除下硬件I2C问题。

出0入0汤圆

 楼主| 发表于 2016-8-24 13:04:59 | 显示全部楼层
来更新一下状态:问题解决了,是测试固件的问题。
具体是这样子的:串口向外发送数据需要判断一个IO的状态(我们的产品是个模块,这个模块放到别人的板子上工作,这里的IO口接到别人的板子上),当此IO判断是高电平时,就不向外发送数据,我们的模块是单独测试,固件里面没有把这个IO拉低,可能在高温时,这个IO的电平异常处于高电平,造成串口不向外发送数据了。

出0入0汤圆

发表于 2017-7-14 15:50:16 | 显示全部楼层
找了半天硬件上面的问题,结果问题出在软件……

出0入0汤圆

发表于 2017-7-14 20:51:11 | 显示全部楼层
我就觉得不对劲,60度就挂了,太水了,STM32我们做高低温的时候,给我们的感觉它是有余量的

出0入42汤圆

发表于 2017-7-15 09:35:40 | 显示全部楼层
耐高温不是重点(一般工业级没问题)    难能可贵的是耐低温   比如零下40度(选型就要考究了)      
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-22 03:44

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表