home *** CD-ROM | disk | FTP | other *** search
- #include <pic1684.h>
- #define NLED 4
-
- void inizializza();
-
- int n;
- int val;
-
- void inizializza()
- {
- TRISB=0; /* porta B: tutti i pin come Output */
- PORTB=0;
- OPTION=0x84; /* setta il periodo del timer ad 1 sec. se f=6.7Khz */
- TMR0=38;
- GIE=1; /* abilita gli interrupt */
- T0IE=1; /* abilita l'interrupt del timer */
- }
-
- void interrupt isr() /* ISR */
- {
- /* save_context;*/
- if (T0IF)
- {
- T0IF=0; /* resetta il flag interrupt del timer */
- PORTB=val;
- val<<=1;
- n--;
- if(n==0){
- n=NLED;
- val=1;
- }
- TMR0=38; /* ricarica il timer */
- }
- /*restore_context;*/
- }
-
- main(void)
- {
- val=1;
- n=NLED;
- inizializza();
- while(1); /* il programma puo' fare qualsiasi altra cosa */
- }
-
-