
Tiny Bootloader за PIC18F... и конфигурационни битове
Здравейте!
И на мене ми се наложи вече да ползвам някакъв bootloader. Избрах Tiny и по принцип всичко си заработи нормално - поне за сега. Имам обаче две неясноти по въпроса:
1. Основната е с конфигурационните битове. Не мога да разбера какво става с тия конфигурационни битове, когато ползвам bootloader. Тоест - кога какви са валидни. До колкото разбирам - bootloaderа може да препрограмира конфигурационните битове. До тук добре - ама гледам, че и в програмата на bootloaderа има конфигурационни битове /с какъв кварц и т.н./ и те могат да бъдат различни от тия на основната ми програма. Ако bootloaderа препрограмира конфигурационните битове с тези от моята програма, то при следващия рестарт вече би трябвало да са валидни тези от основната програма. В такъв случай се губи съдържанието на конфигурационните битове на bootloaderа. С други думи - не ми е съвсем ясно дали bootloaderа наистина препрограмира битовете - и изобщо каква точно е концепцията. Тоест питам дали може - bootloaderа да си е винаги един и същ- да кажем с вътрешен кварц и на определена честота - а след това основната програма да си има собствена конфигурация в различните устройства.
2. Другата неяснота е - какво трябва да направя в компилатора - HI-TECH PICC-18 - за да обясня, че ще ползвам bootloader. Аз правя само едно нещо - резервирам място в ROM паметта - така, че основната ми програма да не ползва мястото където е записан bootloaderа. Правя го така: --ROM=default,-FF00-FFFF. Всичко си работи. Имам съмнение обаче, че по този начин при стартиране на процесора - би трябвало да ми се стартира направо моята програма - а не bootloaderа, щото компилатора не знае, че при ресет трябва да скочи към bootloaderа. Въпреки това обаче - тръгва bootloaderа и всичко си работи. Да не би той сам - по времето когато записва програмата да пренасочва стартовата и точка???
Те това са ми неяснотите - от типа: "Работи - ама що работи...?"
Ако някой ме светне - ще има почерпка...