внутри cfgm128.xcl и lnkm128s.xcl
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено IForget 16 февраля 2004 г. 14:11
В ответ на: У меня не перед глазами, так что точнее сказать не могу. То что Вы привели - это назначение сегмента под вектора прерываний. А под основной код там есть тоже сегмент. выложите весь файл - я посмотрю.. отправлено KAN 16 февраля 2004 г. 13:20

====cfgm128.xcl:====

// Code (flash) segments
-D_..X_INTVEC_SIZE=8C // 4 bytes * 35 vectors
-D_..X_FLASH_NEND=FFFF // End of near flash memory
-D_..X_FLASH_END=1FFFF // End of flash memory

// Data (SRAM, external ROM or external NV RAM) memory
-D_..X_SRAM_BASE=100 // Start of ram memory
-D_..X_SRAM_TEND=100 // End of tiny ram memory
-D_..X_SRAM_END=10FF // End of ram memory

// Internal EEPROM
-D_..X_EEPROM_END=FFF // End of eeprom memory

====lnkm128s.xcl:====
/* Code (flash) segments */
-D_..X_INTVEC_SIZE=8C /* 4 bytes * 35 vectors */
-D_..X_FLASH_TEND=FF /* End of tiny flash memory */
-D_..X_FLASH_NEND=FFFF /* End of near flash memory */
-D_..X_FLASH_END=1FFFF /* End of flash memory */
/* Internal data memory */

-D_..X_SRAM_BASE=100 /* Start of ram memory */
-D_..X_SRAM_TEND=100 /* End of tiny ram memory */

-D_..X_SRAM_END=10FF /* End of ram memory */
/* Internal EEPROM */
-D_..X_EEPROM_END=FFF /* End of eeprom memory */
/*====================================================*/

-D_..X_CSTACK_SIZE=200 /* 512 bytes for auto variables and saved registers. */
-D_..X_RSTACK_SIZE=40 /* 64 bytes for return addresses, equivalent to 32 */
/* levels of calls, including interrupts. */
-D_..X_HEAP_SIZE=100 /* 256 bytes of heap. */

-D_..X_EXT_SRAM_BASE=_..X_SRAM_BASE
-D_..X_EXT_SRAM_END=_..X_SRAM_END

-D_..X_EXT_EPROM_BASE=_..X_SRAM_BASE
-D_..X_EXT_EPROM_END=_..X_SRAM_END

-D_..X_EXT_EEPROM_BASE=_..X_SRAM_BASE
-D_..X_EXT_EEPROM_END=_..X_SRAM_END

/* Define CPU */
-ca90

/* Code memory */
-Z(CODE)INTVEC=0-(_..X_INTVEC_SIZE-1)

/* Fill unused interrupt vector's with RETI */
-H1895
-h(CODE)0-_..X_INTVEC_SIZE

-Z(CODE)TINY_F=_..X_INTVEC_SIZE-_..X_FLASH_TEND
-Z(CODE)NEAR_F,SWITCH,DIFUNCT=_..X_INTVEC_SIZE-_..X_FLASH_NEND
-Z(CODE)CODE=_..X_INTVEC_SIZE-_..X_FLASH_END
-Z(FARCODE)FAR_F,INITTAB=_..X_INTVEC_SIZE-_..X_FLASH_END
-Z(CODE)HUGE_F=_..X_INTVEC_SIZE-_..X_FLASH_END
-Z(CODE)TINY_ID,NEAR_ID,CHECKSUM=_..X_INTVEC_SIZE-_..X_FLASH_END

/* Internal data memory */
-Z(DATA)TINY_I,TINY_Z,TINY_N=_..X_SRAM_BASE-_..X_SRAM_TEND
-Z(DATA)NEAR_I,NEAR_Z=_..X_SRAM_BASE-_..X_SRAM_END,_..X_EXT_SRAM_BASE-_..X_EXT_SRAM_END

-Z(DATA)RSTACK+_..X_RSTACK_SIZE=_..X_SRAM_BASE-_..X_SRAM_END /* ,_..X_EXT_SRAM_BASE-_..X_EXT_SRAM_END */
-Z(DATA)CSTACK+_..X_CSTACK_SIZE=_..X_SRAM_BASE-_..X_SRAM_END /* ,_..X_EXT_SRAM_BASE-_..X_EXT_SRAM_END */

-Z(DATA)HEAP+_..X_HEAP_SIZE=_..X_SRAM_BASE-_..X_SRAM_END,_..X_EXT_SRAM_BASE-_..X_EXT_SRAM_END

/* Internal eeprom memory */
-Z(XDATA)EEPROM_I,EEPROM_N=0-_..X_EEPROM_END

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru