CCS 版本:12.7.0
ARM 编译器版本:3.2.LTS
SYSCFG 版本: 1.20.0
我在 SDK 的 basic_ble 工程中每分钟测试一次 UART 函数:7.40.00.64。 当我第一次打开 UART 时,它是正常的,然后我也调用 UART2_CLOSE ()来关闭它,但只要我叫 sleep ()或 usleep ()。 因此,我对 UART2_OPEN()的第二次调用失败。 我使用调试模式检查并发现在 UART2_OPEN()中的 object->state.opened 设置为 true,结果返回 NULL,但我确定调用 UART2_CLOSE()后,object->state.opened 设置为 false,但调用 sleep()后将设置为 true。
我将相同的代码编写到了 SDK:7.10.00.35、但事实并非如此。
调用 UART2_CLOSE()和调用 sleep()在不同的线程中。 是因为它先进入 sleep(),所以 UART2_close()实际上没有成功执行吗?






