Цитата(Freeuser @ Feb 1 2010, 09:46)

А можно пример какой нибудь?
Вот Вам пример, только он для GCC
Код
void IF_Write_page ( void* pDest,
void* pSrc )
__attribute__ ( ( section ( ".fast" ) ) );
void IF_Write_page ( void* pDest,
void* pSrc )
{
int i;
register uint32* puiDest = pDest;
register uint32* puiSrc = pSrc;
for ( i = 0; i < AT91C_IFLASH_PAGE_SIZE / sizeof ( uint32 ); i++ )
{
*puiDest++ = *puiSrc++;
}
while ( !( AT91C_BASE_MC->MC_FSR & AT91C_MC_FRDY ) );
AT91C_BASE_MC->MC_FCR = 0x5A000000 |
( (uint32)pDest & AT91C_MC_PAGEN ) |
AT91C_MC_FCMD_START_PROG;
while ( !( AT91C_BASE_MC->MC_FSR & AT91C_MC_FRDY ) );
}
Для Keil'а нужно наверняка поменять аттрибуты, чтобы этот код выполнялся в RAM.