|
- 1、BootLoader就是單片機(jī)啟動時候運行的一段小程序,這段程序負(fù)責(zé)單片機(jī)固件的更新,也就是單片機(jī)選擇性的自己給自己下程序。可以更新,也可以不更新,更新的話,BootLoader更新完程序后,跳轉(zhuǎn)到新程序運行;不更新的話,BootLoader直接跳轉(zhuǎn)到原來的程序去運行。
- 2、BootLoader更新完程序后并不擦除自己,下次啟動后依然先運行BootLoader程序,又可以選擇性的更新或者不更新程序,所以BootLoader就是用來管理單片機(jī)程序的更新。
- 3、在實際的單片機(jī)工程項目中,如果加入了BootLoader功能,就可以給單片機(jī)日后升級程序留出一個接口,方便日后單片機(jī)程序更新。當(dāng)然,這就需要創(chuàng)建兩個工程項目,一個為BootLoader工程,一個為APP工程。
- 4、BootLoader工程生成的.hex或者.bin文件通常下載到ROM或Flash中的首地址,這樣可以保證上電后先運行BootLoader程序。而APP工程生成的.hex或者.bin文件則下載到ROM或Flash中BootLoader后面的地址中。也就是說,存在ROM/Flash中的內(nèi)容是分為兩部分的。
- 5、要實現(xiàn)在同一個ROM/Flash中保存兩段程序,并且保證不能相互覆蓋,則需要在下載程序時指定地址。如在Keil下,可以進(jìn)行如下的調(diào)整。
|
|