查看: 5476|回复: 11

[已解决] KEAZ128内部基准电压错误

[复制链接]

该用户从未签到

5

主题

51

帖子

0

注册会员

Rank: 2

积分
168
最后登录
1970-1-1
发表于 2018-1-16 20:43:12 | 显示全部楼层 |阅读模式
KEAZ128内部基准应该是1.2V。但是通过A/D采集的数值转换成电压,只有0.92V左右,量化值为935-946之间。
做过以下测试:
1、5V电源。64pin芯片。
2、A/D的时钟频率测试过1.5M、3M、6M、8M、12M,采样结果略有变化,对应带隙基准最小电压0.916V,最大0.924V。
3、A/D对带隙基准采样频率400-2500Hz之间调整,带隙基准采样结果无变化
4、带隙基准A/D量化值波动比较大,935-946之间快速变动。因此输出信号需要加0.05Hz转折频率的低通滤波,才能保持精确稳定。
5、温度传感器,如果不用内部带隙基准校正,温度误差极大,误差超过15℃,但是如果用带隙基准的测量值对温度校正,温度非常准确,误差不超过±2℃。
6、外部信号400Hz、2500Hz、20000Hz测量通道测量的A/D数值均准确,波动量也在正常范围内。
7、如果关闭PMC寄存器PMC_SPMSC1中的BGBE位,带隙基准测量值从0.92V上升到2.18V左右。A/D量化值2211-2321之间波动。
8、打开或关闭ACMP和DAC中的基准,对带隙基准电压值无影响。
9、PE初始化语句
#define PMC_SPMSC1_VALUE     0x5D
#define PMC_SPMSC1_MASK      0x7F
PMC_SPMSC1 = (PMC_SPMSC1 & (~PMC_SPMSC1_MASK)) | PMC_SPMSC1_VALUE;
运行时PMC_SPMSC1 = 0x1D

这个问题其实发现很长时间了。但是没有影响其他主体功能,所以没管。但是如果基准不解决,电源低压报警就存在问题,没法做电源故障诊断。
手册都翻遍了,带隙基准说的太少了
请教各位,请大家多帮忙,拜托拜托

最佳答案

看了NXP官网上的社区,上面有个S12XEP100芯片的bandgap的测量和计算,AD读bandgap的值,用Vrefh来量化,和现在做的一样,估计他读的bandgap值波动很小。 搜bandgap,做芯片的论坛讨论较多,得到几点: 有几种电路都 ...
回复

使用道具 举报

该用户从未签到

5

主题

51

帖子

0

注册会员

Rank: 2

积分
168
最后登录
1970-1-1
 楼主| 发表于 2018-1-17 06:17:30 | 显示全部楼层
本帖最后由 henrei-290209 于 2018-1-17 06:25 编辑

KEAZ128加上那个CW,出了很多稀奇古怪的问题,真是难倒老司机啊。手册也偏简单,很多问题靠猜。
要想少掉坑里,总结起来就是,放弃CW,不要用PE。
回复 支持 反对

使用道具 举报

该用户从未签到

723

主题

6382

帖子

0

超级版主

Rank: 8Rank: 8

积分
25440
最后登录
2025-9-4
发表于 2018-1-17 09:47:21 | 显示全部楼层
会在1.2V附件的,先检查一下你的ADC参考电压值是否稳定
回复 支持 反对

使用道具 举报

该用户从未签到

5

主题

51

帖子

0

注册会员

Rank: 2

积分
168
最后登录
1970-1-1
 楼主| 发表于 2018-1-17 10:06:07 | 显示全部楼层
小恩GG 发表于 2018-1-17 09:47
会在1.2V附件的,先检查一下你的ADC参考电压值是否稳定

ADC参考电压取自于5V电源。电压稳定,目前所有外部通道A/D测量均正常稳定。
只有基准有问题。
回复 支持 反对

使用道具 举报

该用户从未签到

16

主题

199

帖子

2

中级会员

Rank: 3Rank: 3

积分
443
最后登录
2019-12-24
发表于 2018-1-17 14:26:17 | 显示全部楼层
bandgap 是一组三级管的Vbe结电压和结电流加和减得到的和温度无关的常数,不是芯片坏就不会错。
手册上要求是用1Mhz ad时钟长时间采样。
ADC参考电压5V,你能说说怎么得到吗?电源电路怎么做的?

回复 支持 反对

使用道具 举报

该用户从未签到

5

主题

51

帖子

0

注册会员

Rank: 2

积分
168
最后登录
1970-1-1
 楼主| 发表于 2018-1-17 16:41:11 | 显示全部楼层
wangandrew 发表于 2018-1-17 14:26
bandgap 是一组三级管的Vbe结电压和结电流加和减得到的和温度无关的常数,不是芯片坏就不会错。
手册上要求 ...

目前这个BG低电压的现象测试过几百台,基本都是一致的。
芯片应该是没坏,至少其他电路和程序都工作正常。
手册上要求1MHz,应该是指温度传感器,而不是基准。
即使是要求基准要求1MHz时钟,那也是不可能实现的,那么多高速采样对象,不能因为迁就基准降低采样率,目前用6MHz。只能牺牲精度,换速度,再用软件处理。同时实测1.5MHz-24MHz A/D时钟范围,基准没有变化,温度采集也没有变化,噪声都能处理掉。所以我不认为是时钟的问题。
至于电源部分,就是简单的三端稳压,通过电感分三路供数字、模拟和AD参考,每路一个0.1u+2.2u独石。
DC/DC电源以前也用过,A4402K出双路供电。但是没什么区别。

目前还是怀疑软件初始化没有注意到某些细节。但是手册上实在找不到相关信息
回复 支持 反对

使用道具 举报

该用户从未签到

16

主题

199

帖子

2

中级会员

Rank: 3Rank: 3

积分
443
最后登录
2019-12-24
发表于 2018-1-18 13:01:29 | 显示全部楼层
楼主说的对,为了BANDGAP牺牲AD的使用没法干活了,想想也不应该啊。
我用KE06Z128板子,IAR 7.8 ,FRDM-KEXX-Driver-Library-Package v2.0,中间有个ADC_Poll_demo项目,添加了AD23 BANDGAP 通道,AD时钟5Mhz,12位,主电源通过电感分给VDDA和Vrefh,得到BANDGAP的值,以下是结果:
1. 室温 20度
   7805稳压,电压4.8-4.9V ,读到的BANDGAP 是0x32B-0x330。
   精密电源,电压5.00V ,读到的BANDGAP 是0x32A-0x330 。
   这二个值相对在一个稳定的范围。
2. 室温 10度
   7805稳压,电压4.9V ,读到的BANDGAP 是0x34F-0x363 。
   3.3V供电,电压3.28V ,读到的BANDGAP 是0x347-0x34C 。
BANDGAP 随温度有变化,随加载电压变化相对小。
这样看来芯片的BANDGAP电路并没有做好,1.2V的BANDGAP参考电压没有办法得到,是芯片的BUG?
只有请NXP的FAE来说明了。
回复 支持 反对

使用道具 举报

该用户从未签到

5

主题

51

帖子

0

注册会员

Rank: 2

积分
168
最后登录
1970-1-1
 楼主| 发表于 2018-1-19 08:38:38 | 显示全部楼层
wangandrew 发表于 2018-1-18 13:01
楼主说的对,为了BANDGAP牺牲AD的使用没法干活了,想想也不应该啊。
我用KE06Z128板子,IAR 7.8 ,FRDM-KEXX ...

非常感谢如此认真仔细的回复。
我测到的结果类似。BG温度系数也非常明显,数据波动也很大。
并且BG这个误差是和温度传感器联动的。如果你不用BG校正温度,温度采样是绝对错误的。如果用错误的基准校正错误的温度,温度就很准确了。
也就是说,温度采样电阻接到了基准电源上,而基准错了,所以温度采样也是错的。
真有点怀疑是Bug。
回复 支持 反对

使用道具 举报

该用户从未签到

16

主题

199

帖子

2

中级会员

Rank: 3Rank: 3

积分
443
最后登录
2019-12-24
发表于 2018-1-19 12:55:49 | 显示全部楼层
看了NXP官网上的社区,上面有个S12XEP100芯片的bandgap的测量和计算,AD读bandgap的值,用Vrefh来量化,和现在做的一样,估计他读的bandgap值波动很小。
搜bandgap,做芯片的论坛讨论较多,得到几点:
有几种电路都可以用来实现bandgap,并且都有温漂,在-40度到+125度温度范围内应控制在xxppm内。
一套成熟的bandgap电路,用不同的芯片工艺来流片,得到的差异性很大,bandgap值是没法用的。
同种工艺bandgap值通常都要做trimming的,不做的话,bandgap偏差很大。
NXP的流片厂商没做?bandgap很早就有了,Freescale应当有套很成熟的bandgap电路的。
看来现阶段NXP的Kinetis ARM芯片的bandgap是用不得的,要另想他法了。
回复 支持 反对

使用道具 举报

该用户从未签到

5

主题

51

帖子

0

注册会员

Rank: 2

积分
168
最后登录
1970-1-1
 楼主| 发表于 2018-1-19 13:30:53 | 显示全部楼层
本帖最后由 henrei-290209 于 2018-1-19 14:30 编辑
wangandrew 发表于 2018-1-19 12:55
看了NXP官网上的社区,上面有个S12XEP100芯片的bandgap的测量和计算,AD读bandgap的值,用Vrefh来量化,和 ...

基准没毛病,是我换算错了,目前对应电压实际是1.15左右。波动大了点,但是可以滤掉。我的疏忽,耽误大家宝贵时间
非常感谢你的帮忙,还有谢谢版主小恩gg,谢谢大家

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-9-6 01:12 , Processed in 0.109923 second(s), 31 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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