你好,我在使用TLSR8258的mesh工程时,想用8258驱动一块spi屏幕,但我使用spi_write()函数写超过80000多个字节的数据后,8258芯片会出现重启的现象。
当我直接在main()函数初始化后增加spi发送代码,一次发2个字节的命令和2个字节的数据,for循环里共发送2万次,代码和使用逻辑分析仪采集到的数据如下图,spi发送完成后main()函数正常继续执行不会出现重启的现象。
而当我将循环发送次数改为25000次时,代码和采集到的数据如下图所示,出现了spi发送时芯片重启的问题。
而我要驱动的屏幕为240*320个像素点,刷新一次屏幕要发8万多个数据,如果spi发送到超过8万多个数据时就会导致单片机重启,那么会影响到显示屏的显示。
请问是因为什么原因导致的芯片重启?该如何解决这个问题呢?
Hi,
是否触发2s的看门狗了。
你好,我这边换mesh_switch工程驱动屏幕时又出现了spi发数据重启的问题,看门狗关闭了,进入休眠的proc_rc_ui_suspend()函数也关闭了,请问该如何解决?@Soyo
是看门狗的问题,现在可以了,谢谢@Soyo
Hi,
是否触发2s的看门狗了。
你好,我这边换mesh_switch工程驱动屏幕时又出现了spi发数据重启的问题,看门狗关闭了,进入休眠的proc_rc_ui_suspend()函数也关闭了,请问该如何解决?@Soyo
是看门狗的问题,现在可以了,谢谢@Soyo
你好上电可以读下该寄存器是否为看门狗复位,以及可以加入些打印,判断是到哪个代码触发了复位。