Не секрет что флеш довольно медленное устройство. И очевидно что после сброса, основной исполняемый код необходимо копировать в область RAM памяти. А затем эту же область RAM памяти переместить туда где вектора. Верно? Как бы написать свой бутлоадер вроде и не проблема, но со временем возникают вопросы. Как выгружать полезный код? Самое простое решение это резервировать всю оставшуюся область памяти для одной скомпилированной с ресурсами (картинки, иконки и т.д.) большой прошивки. Просто, но не рационально. Особенно когда этих же ресурсов очень много (приложения с графикой и (или) звуком к примеру). Да и присоединять к проекту и компилировать такие вещи, а потом сливать на флеш очень кисло (особенно при отладке). Тут так и напрашивается некий FAT. Встречаются ли готовые решения этого вопроса? С библиотеками для FAT16/32 возникает один курьезный момент - как отформатировать NOR-Flash. Понятно что с MMC/SD и CF здесь проблем никаких.
|