Attachment 'mod_int.tex'

Download

   1 \section{module interruption}
   2 Ce module génère les fonctions nécessaires pour travailler avec les interruptions
   3 \#include <interrupt.h>
   4 \subsection{\_ISR\_MAIN}
   5 \_ISR\_MAIN Définit la fonction interruption principal, cette fonction s'exécutera quand arrivera n'importe quelle  interruption.
   6 On peut choisir n'importe quel nom pour la fonction interruption principal., on l'utilise ainsi :
   7 \verbatiminput{source/interruption1.c}
   8 
   9 \subsection{ISR\_MAIN}
  10 ISR\_MAIN Definit la fonction/code interruption principal.
  11 Cette fonction/code s'exécutera quand arrivera n'importe quelle interruption.
  12 
  13 On peut choisir n'importe quel nom pour la fonction interruption principal., on l'utilise ainsi :
  14 \verbatiminput{source/interruption2.c}
  15 
  16 \subsection{enable\_int\_global}
  17 Autorise globalement toutes les interruptions
  18 
  19 void enable\_int\_global(void);
  20 
  21 exemple:
  22 enable\_int\_global();
  23 \subsection{disable\_int\_global}
  24 Inhibe globalmente toutes les interruptions
  25 
  26 void disable\_int\_global(void);
  27 
  28 exemple:
  29 disable\_int\_global();
  30 \subsection{interruption Externe}
  31 Les fonctions pour travailler avec l'interruption externe (RB0) sont :
  32 \subsubsection{enable\_int\_ext}
  33 Autorise l'interruption externe
  34 
  35 \#define      H\_TO\_L        0
  36 
  37 \#define      L\_TO\_H        1
  38 
  39 void enable\_int\_ext(BYTE flanco);
  40 
  41 exemple:
  42 enable\_int\_global(L\_TO\_H);
  43 
  44 H\_TO\_L indique une interruption activée sur front descendant
  45 
  46 L\_TO\_H indique une interruption activée  sur front montant
  47 \subsubsection{disable\_int\_ext}
  48 Inhibe l'interruption externe
  49 
  50 void disable\_int\_ext(void);
  51 
  52 En inhibant l'interruption on ne modifie pas l'autorisation de l'interruption globale
  53 \subsubsection{int\_ext\_flag}
  54 Retourne l'état actuel du drapeau (flag) indicateur de l'interruption externe
  55 
  56 BYTE int\_ext\_flag(void);
  57 
  58 L'usage de cette fonction ne modifie pas le drapeau (flag)
  59 \subsubsection{int\_ext\_free\_flag}
  60 Remise à zéro du drapeau (flag) indicateur d'interruption externe
  61 
  62 void int\_ext\_free\_flag(void);
  63 
  64 L'usage de cette fonction modifie le drapeau (flag), le mettant à 0
  65 
  66 \subsection{interruption TIMER0}
  67 Les fonctions pour travailler avec l'interruption par débordement du TIMER0 sont :
  68 \subsubsection{enable\_int\_timer0}
  69 autorise l'interruption par débordement du TIMER0
  70 
  71 void enable\_int\_timer0(void);
  72 
  73 Pour que cette interruption soit autorisé il faut aussi activer l'interruption globale
  74 \subsubsection{disable\_int\_timer0}
  75 inhibe l'interruption par desbordement du TIMER0
  76 
  77 void disable\_int\_timer0(void);
  78 
  79 En inhibant l'interruption on ne modifie pas l'autorisation de l'interruption globale
  80 \subsubsection{int\_timer0\_flag}
  81 Retourne l 'état actuel du drapeau (flag) indicateur de l'interruption par desbordement du TIMER0
  82 
  83 BYTE int\_timer0\_flag(void);
  84 
  85 L'usage de cette fonction ne modifie pas le drapeau (flag)
  86 \subsubsection{int\_timer0\_free\_flag}
  87 Remise à zéro du drapeau (flag) indicateur de l'interruption par débordement du TIMER0
  88 
  89 void int\_timer0\_free\_flag(void);
  90 
  91 L'usage de cette fonction modifie le drapeau (flag), le mettant à 0
  92 
  93 \subsection{interruption RB4 à RB7}
  94 Les fonctions pour travailler avec l'interruption par changement d'état des broches (pins) RB4 a RB7 sont:
  95 \subsubsection{enable\_int\_rb4to7}
  96 autorise l'interruption par changement d'état des broches (pins) de RB4 à RB7
  97 
  98 void enable\_int\_rb4to7(void);
  99 
 100 Pour que cette interruption soit autorisée il faut aussi activer l'interruption globale
 101 \subsubsection{disable\_int\_rb4to7}
 102 inhibe  l'interruption par changement d'état des broches (pins) de Rb4 à RB7
 103 
 104 void disable\_int\_rb4to7(void);
 105 
 106 En inhibant l'interruption on ne modifie pas l'autorisation de l'interruption globale
 107 \subsubsection{int\_rb4to7\_flag}
 108 Retourne l 'état actuel du drapeau (flag) indicateur de l'interruption par changement d'état des broches (pins) de RB4 à RB7
 109 
 110 BYTE int\_rb4to7\_flag(void);
 111 
 112 L'usage de cette fonction ne modifie pas le drapeau (flag)
 113 \subsubsection{int\_rb4to7\_free\_flag}
 114 Remise à zéro du drapeau (flag) indicateur de l'interruption par changement d'état des broches (pins) de RB4 à RB7
 115 
 116 void int\_rb4to7\_free\_flag(void);
 117 
 118 L'usage de cette fonction modifie le drapeau (flag), le mettant à 0
 119 
 120 \subsection{interruption Rx UART}
 121 Les fonctions pour travailler avec l'interruption par réception de caractère dans l 'UART sont :
 122 \subsubsection{enable\_int\_uart}
 123 autorise l'interruption par réception de caractère dans l'UART
 124 
 125 void enable\_int\_uart(void);
 126 
 127 Pour que cette interruption soit autorisée  il faut aussi activer l'interruption globale
 128 \subsubsection{disable\_int\_uart}
 129 inhibe l'interruption par réception de caractère dans l'UART
 130 
 131 void disable\_int\_uart(void);
 132 
 133 En inhibant l'interruption on ne modifie pas l'autorisation de l'interruption globale
 134 \subsubsection{int\_uart\_flag}
 135 Retourne l 'état actuel du drapeau (flag) indicateur de l'interruption par réception de caractère dans l 'UART
 136 
 137 BYTE int\_uart\_flag(void);
 138 
 139 L'usage de cette fonction ne modifie pas le drapeau (flag), en plus on ne peut pas.
 140 \subsubsection{int\_uart\_free\_flag}
 141 Cette fonction n'existe pas. 
 142 Le drapeau (flag) se remettra à zéro lors de la lecture avec la fonction uart\_getc du caractère entrant, cette fonction doit être placé à l'intérieur de  la fonction interruption sinon le drapeau (flag) ne se remettra jamais à 0 et on ne sortira jamais de la fonction interruption, 
 143 car la fonction interruption sera invoqué jusqu'à la fin des temps.
 144 
 145 \subsection{interruption ADC}
 146 Les fonctions pour travailler avec l'interruption qui donne la fin de la conversion analogique numérique sont :
 147 \subsubsection{enable\_int\_adc}
 148 autorise l'interruption de fin de conversion analogique numérique 
 149 
 150 void enable\_int\_adc(void);
 151 
 152 Pour que cette interruption soit autorisée  il faut aussi activer l'interruption globale
 153 \subsubsection{disable\_int\_adc}
 154 inhibe l'interruption de fin de conversion analogique numérique
 155 
 156 void disable\_int\_adc(void);
 157 
 158 En inhibant l'interruption on ne modifie pas l'autorisation de l'interruption globale
 159 \subsubsection{int\_adc\_flag}
 160 Retourne l 'état actuel du drapeau (flag) indicateur de l'interruption de fin de conversion analogique numérique
 161 
 162 BYTE int\_adc\_flag(void);
 163 
 164 L'usage de cette fonction ne modifie pas le drapeau (flag).
 165 
 166 \subsection{interruption Comparateur}
 167 Les fonctions pour travailler avec l'interruption de fin de comparaison sont:
 168 \subsubsection{enable\_int\_comp}
 169 autorise l'interruption de fin de comparaison
 170 
 171 void enable\_int\_comp(void);
 172 
 173 Pour que cette interruption soit autorisée  il faut aussi activer l'interruption globale
 174 \subsubsection{disable\_int\_comp}
 175 inhibe l'interruption de fin de comparaison
 176 
 177 void disable\_int\_comp(void);
 178 
 179 En inhibant l'interruption on ne modifie pas l'autorisation de l'interruption globale
 180 \subsubsection{int\_comp\_flag}
 181 Retourne l 'état actuel du drapeau (flag) indicateur de l'interruption de fin de comparaison
 182 
 183 BYTE int\_comp\_flag(void);
 184 
 185 L'usage de cette fonction ne modifie pas le drapeau (flag).
 186 
 187 \subsection{Exemple du module Interruption Externe}
 188 Pour compiler tu as besoin des commandes suivantes 
 189 
 190 Exemple de compilation : ./compila.sh ej\_intext 16f877a
 191 
 192 ej\_intext.c
 193 \verbatiminput{source/ej_intext.c}

Attached Files

To refer to attachments on a page, use attachment:filename, as shown below in the list of files. Do NOT use the URL of the [get] link, since this is subject to change and can break easily.
  • [get | view] (2009-03-02 23:05:40, 28.2 KB) [[attachment:GtkPicGccAbout.png]]
  • [get | view] (2009-03-27 08:20:28, 1.5 KB) [[attachment:LISEZ_MOI]]
  • [get | view] (2009-03-02 23:02:00, 0.2 KB) [[attachment:baud.h]]
  • [get | view] (2009-03-02 23:02:09, 0.5 KB) [[attachment:clavier.txt]]
  • [get | view] (2009-03-02 23:02:21, 0.4 KB) [[attachment:compila.txt]]
  • [get | view] (2009-03-02 22:47:50, 0.3 KB) [[attachment:dispo.tex]]
  • [get | view] (2009-03-02 23:02:36, 0.7 KB) [[attachment:ej_adc_87Xa.c]]
  • [get | view] (2009-03-02 23:02:46, 1.0 KB) [[attachment:ej_comp_87Xa.c]]
  • [get | view] (2009-03-02 23:02:59, 0.5 KB) [[attachment:ej_delay.c]]
  • [get | view] (2009-03-02 23:03:12, 0.6 KB) [[attachment:ej_eeprom.c]]
  • [get | view] (2009-03-02 23:03:22, 0.0 KB) [[attachment:ej_i2c.c]]
  • [get | view] (2009-03-02 23:03:39, 0.6 KB) [[attachment:ej_intext.c]]
  • [get | view] (2009-03-02 23:03:51, 0.4 KB) [[attachment:ej_keypad4x4.c]]
  • [get | view] (2009-03-02 23:04:00, 0.5 KB) [[attachment:ej_keypad4x4flex.c]]
  • [get | view] (2009-03-02 23:04:09, 0.4 KB) [[attachment:ej_memory.c]]
  • [get | view] (2009-03-02 23:04:17, 0.3 KB) [[attachment:ej_pinio.c]]
  • [get | view] (2009-03-02 23:04:25, 0.2 KB) [[attachment:ej_pwm.c]]
  • [get | view] (2009-03-02 23:04:35, 0.8 KB) [[attachment:ej_system.c]]
  • [get | view] (2009-03-02 23:04:46, 0.9 KB) [[attachment:ej_timer0.c]]
  • [get | view] (2009-03-02 23:04:58, 1.2 KB) [[attachment:ej_timer2.c]]
  • [get | view] (2009-03-02 23:05:08, 0.4 KB) [[attachment:ej_uart.c]]
  • [get | view] (2009-03-02 23:05:26, 0.4 KB) [[attachment:ej_uart2.c]]
  • [get | view] (2009-03-02 22:48:40, 0.7 KB) [[attachment:exemples.tex]]
  • [get | view] (2009-03-02 23:05:53, 0.5 KB) [[attachment:interruption1.c]]
  • [get | view] (2009-03-02 23:06:14, 0.4 KB) [[attachment:interruption2.c]]
  • [get | view] (2009-03-02 22:49:06, 3.9 KB) [[attachment:intro.tex]]
  • [get | view] (2009-03-02 23:33:12, 2.7 KB) [[attachment:keypad.tex]]
  • [get | view] (2009-03-02 22:49:18, 3.3 KB) [[attachment:mod_ADC.tex]]
  • [get | view] (2009-03-02 22:49:54, 3.2 KB) [[attachment:mod_I2C.tex]]
  • [get | view] (2009-03-02 22:50:44, 5.9 KB) [[attachment:mod_IO.tex]]
  • [get | view] (2009-03-02 22:51:18, 1.0 KB) [[attachment:mod_PWM.tex]]
  • [get | view] (2009-03-02 22:51:26, 1.5 KB) [[attachment:mod_RAM.tex]]
  • [get | view] (2009-03-02 22:51:42, 2.7 KB) [[attachment:mod_TIMER0.tex]]
  • [get | view] (2009-03-02 22:51:50, 2.1 KB) [[attachment:mod_TIMER2.tex]]
  • [get | view] (2009-03-02 22:51:59, 1.7 KB) [[attachment:mod_UART.tex]]
  • [get | view] (2009-03-02 22:52:07, 3.9 KB) [[attachment:mod_UART2.tex]]
  • [get | view] (2009-03-02 22:49:28, 3.5 KB) [[attachment:mod_comp.tex]]
  • [get | view] (2009-03-02 22:49:37, 0.6 KB) [[attachment:mod_delay.tex]]
  • [get | view] (2009-03-02 22:49:47, 0.7 KB) [[attachment:mod_eeprom.tex]]
  • [get | view] (2009-03-02 22:50:27, 7.0 KB) [[attachment:mod_int.tex]]
  • [get | view] (2009-03-02 22:51:33, 0.4 KB) [[attachment:mod_system.tex]]
  • [get | view] (2009-03-02 22:52:17, 0.8 KB) [[attachment:pic.tex]]
  • [get | view] (2009-03-02 22:52:26, 0.2 KB) [[attachment:pilote.tex]]
  • [get | view] (2009-03-02 22:52:35, 1.0 KB) [[attachment:presentation.tex]]
  • [get | view] (2009-03-02 23:06:23, 0.2 KB) [[attachment:pwm.txt]]
  • [get | view] (2009-03-02 22:52:44, 1.1 KB) [[attachment:questions.tex]]
  • [get | view] (2009-03-02 22:53:01, 0.7 KB) [[attachment:ref.tex]]
  • [get | view] (2009-03-02 22:53:10, 7.4 KB) [[attachment:standard.tex]]
  • [get | view] (2009-03-02 23:06:34, 4.8 KB) [[attachment:tabla1.3]]
  • [get | view] (2009-03-02 23:06:44, 8.9 KB) [[attachment:tabla1.5]]
  • [get | view] (2009-03-02 22:53:26, 380.4 KB) [[attachment:tutoriel.pdf]]
  • [get | view] (2009-03-27 08:18:11, 309.2 KB) [[attachment:tutoriel.tar.gz]]
  • [get | view] (2009-03-02 22:53:34, 0.7 KB) [[attachment:tutoriel.tex]]
  • [get | view] (2009-03-02 22:53:42, 0.2 KB) [[attachment:util.tex]]
 All files | Selected Files: delete move to page copy to page

You are not allowed to attach a file to this page.