最近的工作中,遇到多次这样的情况,硬件模块使用的时候,有的时候正常,有的时候异常,时好时坏。
其中,一个是射频模块,总是在初始化的时候失败。这个模块在多个硬件平台上使用,都遇到类似的情况。另外一个是网口模块(W5500)上电初始化之后,接收数据是正常的,但是,发送数据有的时候正常,有的时候异常。而且。异常发生比较多的时候是上电的时候发不了,过了一会时间(可能有几分钟)又能正常工作了。
遇到上面两个问题。解决的方式都是在上电后,初始化这些模块之前加一些延时。原因就是,系统上电后,模块部分上电比较缓慢或者内部初始化比较慢。如果一上电代码就跑起来初始化它们,很可能它们的硬件状态都没有稳定,导致初始化设置出现失败。所以,加延时,就是为了让它们稳定下来。
程序运行时好时坏问题记录
最新推荐文章于 2021-01-12 10:44:05 发布