ChumA (01.12.2004 00:26, просмотров: 1) ответил ChumA на Спасибо, сейчас попробую. Нельзя ли прояснить последнюю фразу в плане что...
Это не весело, Ваш код IAR почему-то не переваривает, в *(ptrVector + 0x4000000) ноль я дописал, короче Почему-то в выражении *(ptrVector + 0x4000000) = *ptrVector; операция "+" не генерит соотв. asm код
Удалось заставить работать такой вот код, но реально программа все равно не работает. Отладчик шагает по тексту,
заходит в обработчик FIQ, выходит назад, но все это виртуально, данные в порты не пишутся...
void LPC2xxx_Init_remap()
{
unsigned int *ptrVector;
unsigned int *new_ptrVector = (unsigned int *)0x40000000;
for(ptrVector = (unsigned int *)0x00000000; ptrVector < (unsigned int *)0x00000040; ++ptrVector, ++new_ptrVector)
*new_ptrVector = *ptrVector; //replace vectors into SRAM memory
MEMMAP = 0x02; //Re-map
}