Pièce jointe « mod_comp.tex »
Téléchargement 1 \section{Module Comparateurs}
2
3 Auteur: Santiago Gonzalez
4
5 Courrier: santigoro en gmail.com
6
7 Comprendre la conversion Analogique-Numérique : ici
8
9 (\url{http://es.wikipedia.org/wiki/Conversion\_analogica-digital})
10
11 Voici les fonctions pour travailler avec les deux comparateurs internes des PIC16F87X.
12
13 \subsection{comp\_init}
14 Initialise le module comparateurs
15
16 void comp\_init(unsigned char set\_config));
17
18 set\_config Definit les entrées analogiques et Vref,
19 Les options possibles sont : \\
20 COMP\_RESET \\
21 COMP1\_OUT // Comparador 1 con salida por RA4 \\
22 TWO\_COMP // Dos comparadores independientes \\
23 TWO\_COMP\_OUT // Dos comparadores independientes, salidas por RA4 y RA5 \\
24 TWO\_COMP\_COMREF // Dos comparadores con entrada común: RA3 \\
25 TWO\_COMP\_COMREF\_OUT // Dos comparadores, entrada común RA3, salidas RA4 RA5 \\
26 TWO\_COMP\_MULTI4\_VREF // Dos comparadores con Vref interna, 4 entradas multiplexad \\
27 COMP\_OFF
28
29 \subsection{comp\_set\_multiplex}
30 Établit que les entrées sont connectées dans le mode multiplexé
31
32 comp\_set\_multiplex(unsigned char set\_switch);
33
34 set\_switch détermine que les canaux sont multiplexés.
35
36 Les options possibles sont : \\
37 RA0\_RA1
38 RA2\_RA3
39
40 \subsection{comp\_set\_vref}
41 cette fonction change la valeur de Vref interne, si préalablement on a initialisé l'usage de Vref interne avec: comp\_vref\_mode().
42
43 void comp\_set\_vref(unsigned char set\_vref);
44
45 set\_vref détermine la valeur de Vref interne, en poucentage de Vpp, par exemple:
46 comp\_Vref\_mode(RA0\_RA1, VREF\_65) active les entrées RA0 et RA1 avec Vref interne égal à
47 65\% de Vpp. Les valeurs sont valides entre VREF\_0 y VREF\_75 , bien que dans la pratique on n'obtiendra pas de valeurs supérieures à 70\% de Vdd et ce module n'est capable de générer que 30 valeurs distinctes de
48 Vref, ainsi le pourcentage sélectionné arrondit au valeur la plus proche. La précision est plus mauvaise
49 au dessous de 25\% de Vdd. Pour plus de details consulter le datasheet du pic utilisé.
50
51 Pour vérifier le fonctionnement et l'exactitude de Vref interne on peut activer le bit 6 CVROE de
52 CVRCON, Vref restant connectée à RA2:
53 CVRCONbits.CVROE = 1; //maintenant Vref est présent en RA2
54
55 Cette sortie peut s'utiliser comme source variable de tension (D-A), bien que de haute impédance, pour obtenir une plus grande capacuté de courant on peut utiliser un amplificateur opérationnel comme suiveur de tension
56
57 \subsection{comp\_inv}
58 Inverse ou non les sorties des comparateurs
59
60 void comp\_inv(unsigned char set\_inv);
61
62 set\_inv definit si les sorties des comparateurs s'inversent ou non
63
64 Les options possibles sont : \\
65 NO\_INV \\
66 C1\_INV \\
67 C2\_INV \\
68 C1\_C2\_INV \\
69
70 \subsection{comp1\_read}
71 Cette fonction lit la sortie du comparateur 1, les valeurs possibles sont 0 ou 1.
72
73 void comp1\_read();
74
75 \subsection{comp2\_read}
76 Cette fonction lit la sortie du comparateur 2, les valeurs possibles sont 0 ou 1.
77
78 void comp2\_read();
79
80 \subsection{comp\_reset}
81 Cette fonction remet à zéro (reset) le module Comparateurs,
82 le module reste actif mais la lecture sera de 0.
83
84 void comp\_reset(void);
85
86 \subsection{comp\_off}
87 Cette fonction éteint le module Comparateurs, évitant la consommation inutile de courant.
88
89 void comp\_off(void);
90
91 \subsection{Exemple du Module Comparateurs}
92 pour compiler tu as besoin des commandes suivantes
93
94 Exemple de compilation : ./compila.sh ej\_comp\_87Xa.c 16f877a
95
96 ej\_comp\_87Xa.c
97 \verbatiminput{source/ej_comp_87Xa.c}
Fichiers joints
Pour vous référer aux pièces jointes d'une page, utilisez attachment:filename, comme indiqué ci-dessous dans la liste de fichiers. N'utilisez pas l'URL du lien [get], car elle peut changer et donc être facilement cassée.Vous n'êtes pas autorisé à joindre un fichier à cette page.