Other Parts Discussed in Thread: UNIFLASH
I have realized the program by CAN base on SBL in SDK3.0.0.8. in my SBL_initTask, I loaded application by SBL_imageLoader firstly, and judge whether it is vaild or not. if it is vaild, jump application, or stay in the while loop.
I create another task in my SBL project for CAN command response and download my SBL_16xx.bin only through uniflash . I want to reset the MSS if receive a reset command(appDescEcuHardReset in following picture):
I must load the SBL into TCMA again before reset because application is loaded into TCMA in SBL_initTask. so I call the SBL_imageLoader.
when the reset command comming, I found that it resets directly after executing SBL_imageLoader.(it prints "3" and NOT "4"), I think, the "Error: Meta header absent !!!" after "3" is printed by the SBL_imageLoader in SBL_initTask because i don't download application.
my question is, why it reset directly after SBL_imageLoader?
if I cancle the application SBL_imageLoader in SBL_initTask. it execute printf "3", "4", "1" and reset normally. why?