Interruptions PIC
flolarajasse
Messages postés
115
Statut
Membre
-
turlututuX Messages postés 28 Statut Membre -
turlututuX Messages postés 28 Statut Membre -
Bonjour,
Je souhaite réaliser un compteur qui compte les impulsions sur une entrée de mon PIC18F4550.J'utilise des interruptions, est ce que ce programme pourrait fonctionner?
int compte;
#int_RB
void RB_isr(void)
{
compte==compte++;
}
void main(void)
{
compte==0;
while (TRUE)
{
printf(usb_cdc_putc, " Le nombre d'impusions est = %2x\n\r", compte);
}
}
Merci
Je souhaite réaliser un compteur qui compte les impulsions sur une entrée de mon PIC18F4550.J'utilise des interruptions, est ce que ce programme pourrait fonctionner?
int compte;
#int_RB
void RB_isr(void)
{
compte==compte++;
}
void main(void)
{
compte==0;
while (TRUE)
{
printf(usb_cdc_putc, " Le nombre d'impusions est = %2x\n\r", compte);
}
}
Merci
A voir également:
- Interruptions PIC
- Pic hunter - Télécharger - Téléchargement & Transfert
- Pic collage gratuit - Télécharger - Photo & Graphisme
- Entrée dans le réseau des pic ✓ - Forum Consommation & Internet
- Départ de la pic ✓ - Forum Consommation & Internet
- Sorigny tours pic - Forum Windows
5 réponses
Ben ca fait un moment que j'ai pas fait de C, mais si tu tiens à utiliser une fonction pour incrémenter la variable compte alors il suffit juste de l'appellée.
int compte;
void RB_isr()
{
compte==compte++;
}
void main(void)
{
compte=0;
while (TRUE)
{
printf(usb_cdc_putc, " Le nombre d'impusions est = %2x\n\r", compte);
RB_isr();
}
}
Mais si ton prog reste tel quel tu pourrais aussi bien faire "compte==compte++;" à l'intérieur même de la boucle while non?
Et si tu veux initialiser compte à zero ca se fait de cette manière: compte = 0;
compte == 0; n'assigne pas 0 à la variable compte, c'est une égalité seulement. genre tu l'utilises dans un if pour vérifier si compte vaut 0 : if {(compte == 0) }... else{ ...}
int compte;
void RB_isr()
{
compte==compte++;
}
void main(void)
{
compte=0;
while (TRUE)
{
printf(usb_cdc_putc, " Le nombre d'impusions est = %2x\n\r", compte);
RB_isr();
}
}
Mais si ton prog reste tel quel tu pourrais aussi bien faire "compte==compte++;" à l'intérieur même de la boucle while non?
Et si tu veux initialiser compte à zero ca se fait de cette manière: compte = 0;
compte == 0; n'assigne pas 0 à la variable compte, c'est une égalité seulement. genre tu l'utilises dans un if pour vérifier si compte vaut 0 : if {(compte == 0) }... else{ ...}
En fait j'envoie un signal carré grâce à un GBF sur l'entrée B4 de mon PIC, et à chaque front montant, le compteur s'incrémente et j'affiche la valeur.Ce programme fonctionnera alors?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
pour la liaison avec le GBF je sais pas comment tu procèdes. Le programme en lui même suffit pour incrémenter. Après est-ce qu'il te manque pas quelque chose pour interpréter le signal, je ne pourrais pas te dire.
Si jamais t'étais pas passé par ici, il y a des liens en bas de la page qui peuvent peut etre t'interesser:
https://fr.wikipedia.org/wiki/Microcontr%C3%B4leur_PIC
Si jamais t'étais pas passé par ici, il y a des liens en bas de la page qui peuvent peut etre t'interesser:
https://fr.wikipedia.org/wiki/Microcontr%C3%B4leur_PIC