[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
для этого нужно, чтобы Ваш компилятор поддерживал Position Independed Data (PID) и Position Independed Code (PIC) если это имеется, все очень просто и легко. Остается оснастить свою программу (например в начале) примерно таким заголовком в формате:
(offset,value):
0 SP (Stack Pointer)
4 PC (Programm counter)
8 0x11223344 (что-нибудь не совпадающее с op-code процессора)
12 _text - далее названия в зависимости от линкера
16 _etext
20 _data
24 _edata
28 _bstart
32 _bend
36 _hstart
40 _hend
44 pointer to module name in RAM (название программы или ее ключи запуска)
48 0x11223344
в моем случае value 4-х байтные.
Далее, загрузчик ищет во FLASH комбинацию 0x11223344...0x11223344 и в соответствии с правилами копирования (инициализации)областей программы это делает.
E-mail: info@telesys.ru