Topic

FAQ
Login Register
TLSR8258 zigbee项目tl_zigbee_sdkV3.6.8.5 应用程序使用ADC后,掉电后无法重新启动
Sep 23, 2023 14:44

/

A

/A

TLSR8258 zigbee项目tl_zigbee_sdkV3.6.8.5 应用程序使用ADC(DRV_ADC_BASE_MODE模式)后,掉电后无法重新启动,sampleGW和sampleLight都是如此;

另外,应用程序使用ADC,会造成flash无法写入数据,将flash.c文件中电压检测注释掉了。

应用程序ADC功能关闭后,掉电正常重启。项目之前使用tl_zigbee_sdkV3.6.8.4版本,未出现该现象。请协助解决。

谢谢!


4 replies
TL_Soyo Sep 25, 2023 10:43
0
/A

你好,

  无法重启可以在BDT工具读取PC值,然后在lst文件中找到对应的代码,看看是哪里卡着了;你可以在这个函数返回0,然后关闭电压检测的宏再看看呢。

wcht0502 [Author] Sep 25, 2023 14:55
0
/A

你好,我在sampleGW项目中,做了如下处理:

1.我项目中使用了ADC应用,DRV_ADC_BASE_MODE模式获取ADC通道值,在应用中发现无法写入flash,原因是falsh写入操作时检测电压不符合禁止写操作,通过该论坛反应该问题,得到解决方案是可注释掉falsh电压检测,注释后,正常写入。

2.做以上处理后,设备电源掉电,再重新接入电源,应用程序没有正常运行,若重新烧录程序,通过BDT烧录软件上的RESET重启设备正常。只要电源掉电再上电就会无法重启。(怀疑sdk程序在掉电时是执行了falsh擦除某部分开机从参数)。

3.按照你说的调试方案,我这边通过BDT获取到了如信息

,请帮看看如何能解决该问题。

TL_Soyo Sep 25, 2023 16:06
0
/A

这里卡住了可能是flash值被改写了,参考BDT目录的文档使用BDT读取下flash前1k,和编译的固件比较下,同时读取函数flash_is_zb(),如果是zb的flash建议把vbat电压adc检测代码保持运行。



wcht0502 [Author] Sep 25, 2023 19:31
0
/A

你好,我应用程序,目前将flash程序电压检测正常运行,ADC应用完成后切换为如下状态,

目前,基于sampleGW的应用,掉电重启、ADC应用及flash操作均正常;但基于sampleLight的应用,只要启用ADC应用,掉电重启和通过BDT软件RESET多次操作均会出现,程序不能运行,必须重新烧录程序。不清楚什么原因……