这样做的原因是您已启用WDOG,似乎您的应用程序在Somepoint上堆栈(可能是从另一个等待数据的I2C功能,可能580从未得到过)。您可以在da1458x_config_basic中禁用#undef the cfg_wdog的wdog,以检查您的程序在哪里停止。此外,传感器在外围设备中工作的事实方案不意味着您从传感器获取的响应是搬家的,I2C驱动程序将继续轮询传感器直到传感器准备好并最终在某些时候发送一些数据。总结如果传感器延迟响应或580需要继续探测传感器以进行数据,并且不会更新看门狗值(位于Main_func底部),WDG将最终击中,您将最终命中nmi_handler()。
嗨mjara,
这样做的原因是您已启用WDOG,似乎您的应用程序在Somepoint上堆栈(可能是从另一个等待数据的I2C功能,可能580从未得到过)。您可以在da1458x_config_basic中禁用#undef the cfg_wdog的wdog,以检查您的程序在哪里停止。此外,传感器在外围设备中工作的事实方案不意味着您从传感器获取的响应是搬家的,I2C驱动程序将继续轮询传感器直到传感器准备好并最终在某些时候发送一些数据。总结如果传感器延迟响应或580需要继续探测传感器以进行数据,并且不会更新看门狗值(位于Main_func底部),WDG将最终击中,您将最终命中nmi_handler()。
谢谢mt_dialog.
你好,
是的,这是问题。我禁用了WDOG,我发现SDA和SCL引脚的GPIO配置未包含在Periph_Init函数中,为什么程序停止。
谢谢你。