Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
GavinLi
Level 3
Level 3
10 sign-ins 5 questions asked 5 sign-ins

贵司技术大牛们,

你们好,

我按照ADC校准流程,对ADC进行校准后,断电从新上电,发现ADC不准,整个系统电压工作在3.3V。

现象:

1)输入电压低于1V的,转换结果都是0;输入电压在3.3V,转换结果在2160左右;

2)即使换另一个通道,甚至换了另一组ADC,1)中的现象依然存在。

 

该现象你们是否遇到过?是否有解决方式?

 

0 Likes
1 Solution
Jimmy_L
Moderator
Moderator
Moderator
250 replies posted 250 sign-ins 50 solutions authored

你好,

请参考Github上的参考代理及测试流程

https://github.com/Infineon/mtb-t2g-example-adc-calibration

 

View solution in original post

0 Likes
13 Replies
Jimmy_L
Moderator
Moderator
Moderator
250 replies posted 250 sign-ins 50 solutions authored

你好,

关于ADC校准这块可以参考TRM的第35.8 Calibration,还有application note AN219755_-_Using_a_SAR_ADC_in_TRAVEO_T2G_automotive_microcontroller 

的第9章Calibration function。

0 Likes

Hi Jimmy,

我就是按照TRM的第35.8 Calibration进行校准后,才出现上述现象的。

你这边是否有什么好的建议?

0 Likes
Jimmy_L
Moderator
Moderator
Moderator
250 replies posted 250 sign-ins 50 solutions authored

你好,

请参考Github上的参考代理及测试流程

https://github.com/Infineon/mtb-t2g-example-adc-calibration

 

0 Likes

Hi Jimmy,

我现在重点已经不是去校准了,感觉芯片ADC异常了,板子断电后从新上电也不行。

对ADC输入引脚是vref_h,转换结果也仅在2100左右,无法达到4000多。

0 Likes

另,芯片ADC 会保存什么配置吗?就是断电从新上电也不会丢失?

0 Likes
GavinLi
Level 3
Level 3
10 sign-ins 5 questions asked 5 sign-ins

Hi Jimmy,

我刚看到这样信息,如果我电压选择了3.3V,但如果频率配置超过13.34Mhz,会使得ADC 出现本次奇怪的现象嘛?并且即使后面正确配置,也无法恢复?

GavinLi_0-1703586316689.png

 

0 Likes
Jimmy_L
Moderator
Moderator
Moderator
250 replies posted 250 sign-ins 50 solutions authored

你好,

这个问题我们还没遇到过,您可以尝试别的channel重新配置。之前给您提供的Github上面的sample code有完整的测试步骤您可以参考。

另外您还可以参考我们SDL里面sample code,\tviibh8m\src\examples\adc\DieTempCalculation,这里面也有关于ADC校准的部分可以参考。

0 Likes

Jimmy,

你能帮忙提供一下SDL 下载链接吗?感觉不是那么容易找到,谢谢~

0 Likes
Jimmy_L
Moderator
Moderator
Moderator
250 replies posted 250 sign-ins 50 solutions authored

你好,

SDL的链接地址 https://myicp.infineon.com/sites/TRAVEODocumentation/Lists/defaultdoclib/Traveo%20II/Traveo%20II%20B...

如果您不能访问MyICP,请参考以下链接注册账号申请访问权限

https://www.infineon.com/cms/en/product/microcontroller/#!details

0 Likes

Hi Jimmy,

我现在使用了ADC0~2,都出现了一样的现象,就是3.3V时,ADC采样结果都在2100左右,所以想请教一下,有可能哪里出现问题,导致3个ADC都出现如此现象。

0 Likes
Jimmy_L
Moderator
Moderator
Moderator
250 replies posted 250 sign-ins 50 solutions authored

你好,

您可以看下VREF_H是否接的5V?您也可以把ADC的电压提高到5V测试,4096是基于ADC电压和VREF_H一致的情况下测出来的。

另外如果还有问题,您可以尝试换个板子,按照我们sample 提供的方法从头测试。

0 Likes

Hi Jimmy,

电压改成5V现象也是一样的;

我现在已经不谈校准了。。。

芯片flash 擦除,板子从新上电,选取官方例程,仅修改配置对ADC 选择如下4种不同的采样进行测试,每种情况测试16次。

CY_ADC_PIN_ADDRESS_VCCD = 36u, /**< Vout = Vccd. */
CY_ADC_PIN_ADDRESS_VDDA = 37u, /**< Vout = Vdda. */
CY_ADC_PIN_ADDRESS_VBG = 38u, /**< Vout = Vbg, Bandgap voltage from SRSS. */
CY_ADC_PIN_ADDRESS_VREF_H = 63u /**< Vout = VrefH (VrefH actually bypasses the SARMUX (XSH)) */

 

结果如下

VCCD (1.1V)
Val[0]: 2308
Val[1]: 2259
Val[2]: 2220
Val[3]: 2239
Val[4]: 2135
Val[5]: 2337
Val[6]: 2191
Val[7]: 2344
Val[8]: 2174
Val[9]: 2159
Val[10]: 2298
Val[11]: 2170
Val[12]: 2306
Val[13]: 2281
Val[14]: 2159
Val[15]: 2317

VDDA(5V)
Val[0]: 3179
Val[1]: 3185
Val[2]: 3186
Val[3]: 3183
Val[4]: 3185
Val[5]: 3186
Val[6]: 3187
Val[7]: 3185
Val[8]: 3187
Val[9]: 3185
Val[10]: 3183
Val[11]: 3185
Val[12]: 3185
Val[13]: 3186
Val[14]: 3181
Val[15]: 3183


VBG Vbg, Bandgap voltage from SRSS
Val[0]: 2431
Val[1]: 2431
Val[2]: 2431
Val[3]: 2431
Val[4]: 2428
Val[5]: 2431
Val[6]: 2431
Val[7]: 2431
Val[8]: 2431
Val[9]: 2431
Val[10]: 2431
Val[11]: 2431
Val[12]: 2431
Val[13]: 2431
Val[14]: 2431
Val[15]: 2431

VREF_H(5V)
Val[0]: 2536
Val[1]: 2540
Val[2]: 2537
Val[3]: 2538
Val[4]: 2537
Val[5]: 2539
Val[6]: 2538
Val[7]: 2539
Val[8]: 2541
Val[9]: 2540
Val[10]: 2541
Val[11]: 2540
Val[12]: 2542
Val[13]: 2531
Val[14]: 2543
Val[15]: 2541

 

从上面结果,有个奇怪点是VDDA与VREF_H,差别比较大。

不确定以上结果,能否对你来说有什么可用的线索。

谢谢!

0 Likes
GavinLi
Level 3
Level 3
10 sign-ins 5 questions asked 5 sign-ins

Jimmy,

最终发现是我板子有问题,我之前有过将socket盖子拆下来过,可能导致电压不对,目前从新装了一下,已经可以正常解决了。

感谢你这段时间的支持,谢谢!

 

0 Likes