[an error occurred while processing this directive]
я в simulatore. MEMMAP = 1 вставил в маин. или я что-то совсем не то делаю?
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

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

Отправлено sh_a_ndrei 04 ноября 2006 г. 23:36
В ответ на: а MEMMAP = 1 стоит ? Ты вообще из флеша гоняешь ? отправлено DASm 04 ноября 2006 г. 23:33

#include
#include

#pragma vector=0x18

__irq __arm void IRQ_ISR_Handler (void)
{
void (*interrupt_function)();
unsigned int vector;
static unsigned int us_count;
vector = VICVectAddr;
interrupt_function = (void(*)())vector;
(*interrupt_function)(); // Call vectored interrupt function
VICVectAddr = 0; // Clear interrupt in VIC
}

void T0isr (void)
{
static int val;
val = T0CR0;
T0IR |= 0x1; //Clear match 0 interrupt
VICVectAddr = 0x00000000;//Dummy write to signal end of interrupt
}
//-----------------------------------------
void InitFull(void)
{//èíèöèàëèçàöèÿ ïîñëå âêëþ÷åíèÿ
}

int main(void)
{
IODIR = 0x00000004;
VPBDIV = 2;// Pclk íà 30 Mhz
PINSEL0_bit.P0_2 = 2;// òàéìåð 0 (Cap1)


T0PR = 0x0000001E; //Load prescaler
T0TCR = 0x00000002; //Reset counter and prescaler
T0CCR = 0x00000005; //enable timer
T0TCR = 0x00000001; //enable timer

MEMMAP = 1;

VICVectAddr4 = (unsigned)T0isr; //Set the timer ISR vector address
VICVectCntl4 = 0x00000024; //Set channel
VICIntEnable |= 0x00000010; //Enable the interrupt

__enable_interrupt();

while(1);

}

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

Ответы


Отправка ответа
Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 
URL изображения: 


Rambler's Top100 Рейтинг@Mail.ru
Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание