打印
[PSoC™]

通过交换PSoc,24MHz晶振波形得以修正! 为什么呢???

[复制链接]
543|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lujie1111|  楼主 | 2023-12-20 11:39 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
简单说下经过:
我们量产主板使用的是CY8C5468AXI-LP106或者CY8C5468AXI-LP035,
某天产线发生一片问题主板,经过调查发现是PSOC的24MHz晶振波形存在问题。如图1  波形绿色通道(振幅低且一直振幅不稳定,但频率是准的)
交叉比对:
拿一块正常量产主板,然后交换两块主板上的PSOC。
现象
有问题的主板交换了PSOC后,晶振波形正常,主板正常使用。
没问题的主板交换了问题板子的PSOC后,晶振波形异常,主板问题点再现。
结论:
问题是跟着此片PSOC MCU。

困惑:PSOC哪些因素会导致这样的问题呢?
如图1 异常波形


图2 问题主板交换后PSOC后        正常波形  问题解决


图3 没问题主板 交换 问题主板PSOC后   问题再现 晶振波形异常

使用特权

评论回复
沙发
daichaodai| | 2023-12-20 12:40 | 只看该作者
晶振个体有问题

使用特权

评论回复
评论
lujie1111 2023-12-20 13:12 回复TA
测试过了 和晶振没关系 
板凳
PSoC小子| | 2023-12-20 14:20 | 只看该作者
如果你已经尝试过更换晶振测试,排除了晶振问题的话。建议尝试一下如下措施:
1. 使能自动增益控制,看是否可以解决问题
2. 打开 cyfitter_cfg.c, 找到如下代码。debug 一下问题板程序是否执行到了红色代码触处,确认晶振启动是否失败了。
        /* Wait up to 130000us for the XTAL to lock */
        CY_GET_XTND_REG8((void CYFAR *)CYREG_FASTCLK_XMHZ_CSR);
        for (timeout = 130000u / 10u; (timeout > 0u) && ((CY_GET_XTND_REG8((void CYFAR *)CYREG_FASTCLK_XMHZ_CSR) & 0x80u) != 0u); timeout--)
        {
               
                CyDelayCycles(10u * 48u); /* Delay 10us based on 48MHz clock */
        }
        if (timeout == 0u)
        {
                CyClockStartupError(CYCLOCKSTART_XTAL_ERROR);
        }



使用特权

评论回复
地板
laocuo1142| | 2023-12-20 14:50 | 只看该作者
可能是由于PSoc(可编程系统芯片)具有可编程性和可配置性,可以修改和调整晶振的参数

使用特权

评论回复
评论
lujie1111 2023-12-20 14:58 回复TA
谢谢回答。 内部的晶振增益尝试修改了,发现波形还是有问题,如正文中一高一低的。 我奇怪的是为什么交换PSOC波形就好了,里面烧写的程序以及晶振配置都是一样的。 
5
lujie1111|  楼主 | 2023-12-20 15:02 | 只看该作者
PSoC小子 发表于 2023-12-20 14:20
如果你已经尝试过更换晶振测试,排除了晶振问题的话。建议尝试一下如下措施:
1. 使能自动增益控制,看是否 ...

一如既往,非常感谢及时回复。
追问下,①为什我交换PSOC后,波形就好了呢?
             ②我使用这款PSOC 对于晶振的振幅幅值有没有要求(比如要大于等于多少V?)这个我在datesheet没有查到。

使用特权

评论回复
6
PSoC小子| | 2023-12-20 15:45 | 只看该作者
振幅确实在数据手册中没有写,但是根据经验这个振幅一般至少要几百 mv 以上的,100mv 这样的振幅肯定是不对的。 现在有两种可能,一种是这颗芯片的震荡电路部分的调校可能偏差较大,与晶振之间不是很兼容,所以我建议你尝试一下自动增益控制,看看内部振荡器是不是可以通过自动补偿的方式将振幅调整到合理的 level, 还有就是 code debug 一下确认是不是启动失败了。 如果确认了自动增益控制也不能解决问题,后续可能需要将芯片寄回原厂工厂做 FA 分析去查找晶振这一块是不是有什么问题,比如使用中可能 ESD 等损坏了内部的震荡电路之类等等。

使用特权

评论回复
7
lujie1111|  楼主 | 2023-12-21 08:44 | 只看该作者
PSoC小子 发表于 2023-12-20 15:45
振幅确实在数据手册中没有写,但是根据经验这个振幅一般至少要几百 mv 以上的,100mv 这样的振幅肯定是不对 ...

第一幅图 晶振波形看绿色的,100mv的黄色的直线波形可以无视它,我测量时候没关第一通道。

使用特权

评论回复
8
PSoC小子| | 2023-12-22 14:06 | 只看该作者
看错了,那振幅看起来没有问题,就是波形不对。你试过我之前说的两种测量了吗,有结果没

使用特权

评论回复
9
lujie1111|  楼主 | 2023-12-25 11:01 | 只看该作者
PSoC小子 发表于 2023-12-20 14:20
如果你已经尝试过更换晶振测试,排除了晶振问题的话。建议尝试一下如下措施:
1. 使能自动增益控制,看是否 ...

Hi,PSoc小子
1.程序一直是使能自动增益控制功能的
2.Debug 功能也试过了。问题主板程序可以跑下去,没有报 CyClockStartupError(CYCLOCKSTART_XTAL_ERROR);


PS:再追问下关于PSoc启动波形
如下图,分别是在OK主板和NG主板上取的上电瞬间起振波形。
疑问点①NG波形红色圈圈中有些许断差
②PSOC 24MHz起振波形时序为什么是像图中描述的那样

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

27

帖子

1

粉丝