比如ADC模块,有初始化函数 void InitAdc(void);
希望能够提供反初始化函数,比如void DeInitAdc(void);
用来将外设恢复到复位状态,实际中这个还是很有用处的。比如从BootLoader跳转到用户程序,需要先将外设恢复到复位状态。
当然,自己写也可以,就是比较麻烦,写入标准库中即方便了。
Eric Ma:
复位一下不就行了吗?即使是通过升级,也可以通过复位使得外设寄存器都恢复到复位状态。
Eric
比如ADC模块,有初始化函数 void InitAdc(void);
希望能够提供反初始化函数,比如void DeInitAdc(void);
用来将外设恢复到复位状态,实际中这个还是很有用处的。比如从BootLoader跳转到用户程序,需要先将外设恢复到复位状态。
当然,自己写也可以,就是比较麻烦,写入标准库中即方便了。
Xiao Dong:
回复 Eric Ma:
好吧,请问如何通过软件来使器件复位,然后跳转到指定的地址。
应用场景是这样的:bootloader跳转到用户程序,希望跳转之前CPU恢复到硬件复位之前的状态。实际应用的时候发现如果直接跳转会有问题,后来通过软件使CPU恢复到复位前的状态,情况好很多,现在发现bootloader中用到的外设也要恢复到复位状态,也就是通过对应外设的DeInit函数。
比如ADC模块,有初始化函数 void InitAdc(void);
希望能够提供反初始化函数,比如void DeInitAdc(void);
用来将外设恢复到复位状态,实际中这个还是很有用处的。比如从BootLoader跳转到用户程序,需要先将外设恢复到复位状态。
当然,自己写也可以,就是比较麻烦,写入标准库中即方便了。
Jun Zhang10:
回复 Xiao Dong:
上帝应该弄一个反初始化功能让你变成受精卵!
TI中文支持网



