Statistics
| Revision:

root / trunk / tp_info6 / bsp / mli.c @ 2

History | View | Annotate | Download (1.15 KB)

1
// fonction de gestion MLI
2
#include "sfr32c87.h"
3

    
4
void mli_init(void)
5
{
6
        tb2mr = 0x40;                        // TB2 en mode timer avec horloge f8
7
        tb2 = 24999;                        // periode de 10 ms        
8
        ta1mr = 0x52;                        // TA1 en mode monocoup avec horloge f8 et declenchement par debordement de TB2
9
        ta1 = 3249;                                // reglage temps etat haut de 1300 ns
10
        ta2mr = 0x52;                        // TA2 en mode monocoup avec horloge f8 et declenchement par debordement de TB2
11
        ta2 = 3249;                                // reglage temps etat haut de 1300 ns
12
        trgsr = 0x05;
13
        ta1ic = 0x00;                        // RAZ drapeau et aucune interruption
14
        ta2ic = 0;
15
        tb2ic = 0;
16
        psl1_2 = 1;                                // configure P72/TA1OUT en sortie timer A1
17
        ps1_2 = 1;
18
        psc_4 = 0;                                // configure P74/TA2OUT en sortie timer A2
19
        psl1_4 = 0;
20
        ps1_4 = 1;
21
//        tabsr = 0x86;                        // demarre timer B2, A2 et A1
22
        tb2s=1;
23
        ta1s=1;
24
        ta2s=1;
25
}
26

    
27
void mli_voie_1(unsigned short rc)
28
{
29
        if (rc > 4999) rc = 4999;        // bornage rapport cyclique maxi
30
        if (rc < 1999) rc = 1999;        // bornage rapport cyclique mini
31
        ta1 = rc;        
32
}
33

    
34
void mli_voie_2(unsigned short rc)
35
{
36
        if (rc > 4999) rc = 4999;        // bornage rapport cyclique maxi
37
        if (rc < 1999) rc = 1999;        // bornage rapport cyclique mini
38
        ta2 = rc;
39
}