亲爱的对话的支持,
我们正在运行SDK中包含的生产测试模式(PTM)二进制文件来执行生产测试。你能不能帮我们理解一下从沉睡中醒来后的行为?
1.假设我们使用UART下载了PTM二进制文件(使用了P0.4和P0.5),我们通过UART在PC上发出以下命令,芯片进入深度睡眠模式(OTP仍然是空白且未编程):
protest .exe -p 28 sleep deep 0 30
2.30秒后,卡从深度睡眠中醒来,在这种情况下,因为OTP是空白的,我们将不得不再次下载PTM二进制文件,以便继续进行其他测试?在这种情况下,在再次下载二进制文件之前,PC UART和芯片UART之间的串行连接应该断开吗?
令我困惑的是,30秒后,我仍然可以运行“prodtest.exe -p 28 sleep deep 0 30”,而无需先下载PTM二进制文件。它给我的印象是芯片还没有进入深度睡眠;否则,给定OTP必须重新加载(并且OTP是空白的)以使生产测试再次运行?这背后的逻辑是什么?
能否解释或确认?
谢谢,
uta_lc
设备:
嗨uta_lc,
和所有示例一样,有一个CFG_DEVELOPMENT_DEBUG定义,该定义在定义时防止系统为了测试设备而进入深度睡眠,默认情况下,该标志在prod_test示例中定义,这样就可以防止设备在接到指令时进入深度睡眠状态(syram保持供电,睡觉前下载的代码被保留)。一旦你取消了这个定义,代码就会切换系统进入真正的深度睡眠。
由于MT_dialog
谢谢你的回复。
看起来还有其他事情要做-我把undef放在CFG_DEVELOPMENT_DEBUG上,但它工作一样。我已经重复检查了以下defs:
# undef CFG_MEM_MAP_EXT_SLEEP
#定义CFG_MEM_MAP_DEEP_SLEEP
你是否在自己的开发板上尝试过这种方法?
我在此附上配置文件,供您交叉检查。
我知道在UART仍然连接的情况下是不可能测量深度睡眠电流的。但是,我确实希望,如果没有新的下载,就不能访问UART。
也许还有什么是我不明白的?
谢谢你的帮助,
uta_lc
嗨uta_lc,
专业开发测试工具,设备,如果你取消CFG_DEVELOPMENT_DEBUG酣睡和发送命令通过RF垫和prod_test.exe,它睡觉,从不醒来(不管你设置定时器),也就是设备想做即使CFG_DEVELOPMENT_DEBUG prod_test中设置的,所以我不能验证你所提到的,因为我没有访问设备后,通过prod_test_tool进入深度睡眠。
由于MT_dialog
我使用SDK 5.0.4文件重建了固件,深度睡眠的行为是预期的现在。是5。3,不知道发生了什么。
谢谢你的提示。