查看: 5975|回复: 6

[求助] RT1011,读取设备启动源,复位源

[复制链接]

该用户从未签到

8

主题

30

帖子

0

中级会员

Rank: 3Rank: 3

积分
471
最后登录
2021-2-27
发表于 2021-1-7 11:06:05 | 显示全部楼层 |阅读模式
现在设备有上电启动,看门口复位启动,SNVS 通过ONOFF启动,三种启动方式,读取 SRC->SRSR  应该可以知道启动源,但是通过ONOFF 启动时读取  ipp_user_reset_b 位的值一直是0 。
请问如何正确的读取启动源?




回复

使用道具 举报

该用户从未签到

723

主题

6382

帖子

0

超级版主

Rank: 8Rank: 8

积分
25490
最后登录
2025-9-9
发表于 2021-1-8 13:40:08 | 显示全部楼层
楼主你好!看门狗寄存器可以看复位类型:
    PRINTF("\r\n******** System Start ********\r\n");
    PRINTF("System reset by:");

    resetFlag = WDOG_GetStatusFlags(DEMO_WDOG_BASE);

    switch (resetFlag & (kWDOG_PowerOnResetFlag | kWDOG_TimeoutResetFlag | kWDOG_SoftwareResetFlag))
    {
        case kWDOG_PowerOnResetFlag:
            PRINTF(" Power On Reset!\r\n");
            break;
        case kWDOG_TimeoutResetFlag:
            PRINTF(" Time Out Reset!\r\n");
            break;
        case kWDOG_SoftwareResetFlag:
            PRINTF(" Software Reset!\r\n");
            break;
        default:
            PRINTF(" Error status!\r\n");
            break;
    }
回复 支持 反对

使用道具 举报

该用户从未签到

723

主题

6382

帖子

0

超级版主

Rank: 8Rank: 8

积分
25490
最后登录
2025-9-9
发表于 2021-1-8 13:45:40 | 显示全部楼层
关于ONOFF 和ipp-user_reset_b的关系,这里还需要结合TEST_MODE输入,所以不知道你那边测试条件是否满足ipp_user_reset_b置一的要求:
17.jpg
回复 支持 反对

使用道具 举报

该用户从未签到

8

主题

30

帖子

0

中级会员

Rank: 3Rank: 3

积分
471
最后登录
2021-2-27
 楼主| 发表于 2021-1-8 14:00:39 | 显示全部楼层
本帖最后由 402227912 于 2021-1-8 14:02 编辑
小恩GG 发表于 2021-1-8 13:45
关于ONOFF 和ipp-user_reset_b的关系,这里还需要结合TEST_MODE输入,所以不知道你那边测试条件是否满足ipp ...

我就设置了 SNVS->LPCR |= SNVS_LPCR_TOP_MASK; 然后通过ONOFF引脚唤醒设备, 其他的不知道怎么设置,我现在直接读取ipp-user_reset_b 位 ,一直是0.
回复 支持 反对

使用道具 举报

该用户从未签到

723

主题

6382

帖子

0

超级版主

Rank: 8Rank: 8

积分
25490
最后登录
2025-9-9
发表于 2021-1-11 16:57:02 | 显示全部楼层
402227912 发表于 2021-1-8 14:00
我就设置了 SNVS->LPCR |= SNVS_LPCR_TOP_MASK; 然后通过ONOFF引脚唤醒设备, 其他的不知道怎么设置,我现 ...

楼主你好!
你现在chip reset是使用内部PMU控制 还是外部PMIC控制?
你看看RM里面21.5.1 Reset and Power-up Flow,你属于哪种类型?
我这边看下来,由于TEST_MODE的存在,逻辑上看,如果TEST_MODE接0,ipp_user_reset_b就不受ON/OFF控制了。
你那边SRC_SRSR这个寄存器整体读出来是多少?


回复 支持 反对

使用道具 举报

该用户从未签到

8

主题

30

帖子

0

中级会员

Rank: 3Rank: 3

积分
471
最后登录
2021-2-27
 楼主| 发表于 2021-1-12 14:09:02 | 显示全部楼层
小恩GG 发表于 2021-1-11 16:57
楼主你好!
你现在chip reset是使用内部PMU控制 还是外部PMIC控制?
你看看RM里面21.5.1 Reset and Power- ...

TEST_MODE 接的是地,VDD_SNVS_IN接一直电源,DCDC_IN和VDD_HIGH_IN接的是PMIC_ON_REQ控制的3.3V。POR_B 悬空。SRC->SRSR 读出来就是0x01。
回复 支持 反对

使用道具 举报

该用户从未签到

723

主题

6382

帖子

0

超级版主

Rank: 8Rank: 8

积分
25490
最后登录
2025-9-9
发表于 2021-1-13 14:05:34 | 显示全部楼层
402227912 发表于 2021-1-12 14:09
TEST_MODE 接的是地,VDD_SNVS_IN接一直电源,DCDC_IN和VDD_HIGH_IN接的是PMIC_ON_REQ控制的3.3V。POR_B  ...

从你的SRC->SRSR读出来的0X01, ipp_reset_b=1, 说明是ipp_reset_b产生的复位。也就是走的POR那块产生的SRC_POR_B导致ipp_reset_b为1,产生复位信号。
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

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

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

GMT+8, 2025-9-10 10:42 , Processed in 0.102234 second(s), 26 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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