Interruzioni di tipo 1

Forum relativo alle schede FLEX, ERIKA Enterprise, RT-Druid, ScicosLab, ...

Moderator: paolo.gai

Locked
ThomasThommy

Interruzioni di tipo 1

Post by ThomasThommy »

Salve a tutti!! Volevo chiedervi come si fanno a utilizzare interruzioni di tipo 1, cioè quelle Hardware. So che a differenza i quelle di tipo 2 è necessario trasformare un task legato a tali interruzioni in una semplice funzione da passare a quella utile per generare tali interruzioni. Mi sono guardato un po' di librerie del druido ma non ho trovato niente... Grazie mille!!!




Thomas
paolo.gai
Administrator
Posts: 877
Joined: Thu Dec 07, 2006 12:11 pm

Re: Interruzioni di tipo 1

Post by paolo.gai »

Ciao,

RT-Druid non gestisce direttamente le interruzioni di tipo 1. Di fatto sono lasciate "all'utente", per cui devi scrivere direttamente una funzione usando gli attributi del compilatore per farla diventare una funzione "di tipo interrupt". tale settaggio dipende molto dal compilatore e dalla piattaforma usata.

Ciao,

Paolo
ThomasThommy

Re: Interruzioni di tipo 1

Post by ThomasThommy »

Grazie mille. Ho risolto usando le funzioni/attributi del compilatore come per esempio:

Code: Select all

void __attribute__((__interrupt__, __shadow__)) _T1Interrupt(void){...}
paolo.gai
Administrator
Posts: 877
Joined: Thu Dec 07, 2006 12:11 pm

Re: Interruzioni di tipo 1

Post by paolo.gai »

Esatto! bisogna fare esattamente cosi'.

Nota che dentro quelle funzioni NON puoi chiamare primitive del sistema operativo.

Ciao,

Paolo
Locked