front montant
Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

front montant



  1. #1
    invite24219bec

    front montant


    ------

    Bonsoir SVP comment On peut envoyer un msg pendant le front montant seulement.
    Cad si PORTA.F0 le code doit envoyer un seul msg (J'utilise un bouton poussoir) mais la vitesse d'envoie est tees grande de telle sorte si j'appuie sur le bouton poussoir le code va envoyer plusieurs fois le msg . C'est pour cette raison que je pense à une structure que me permet d'envoyer le msg pendant le front montont seulement .SVP avez vous une idée . MERCIIII d'avance



    Code:
    unsigned short k=0;
    char i,i1;
    short j;
    char txt[]="DOWN" ;
    sbit LCD_RS at RB0_bit;
    sbit LCD_EN at RB3_bit;
    sbit LCD_D4 at RB4_bit;
    sbit LCD_D5 at RB5_bit;
    sbit LCD_D6 at RB6_bit;
    sbit LCD_D7 at RB7_bit;
    sbit LCD_RS_Direction at TRISB0_bit;
    sbit LCD_EN_Direction at TRISB3_bit;
    sbit LCD_D4_Direction at TRISB4_bit;
    sbit LCD_D5_Direction at TRISB5_bit;
    sbit LCD_D6_Direction at TRISB6_bit;
    sbit LCD_D7_Direction at TRISB7_bit;
    
    void main() {  TRISA=0XFF; PORTA=0;
    Lcd_Init(); Lcd_Cmd(_LCD_CURSOR_OFF); Lcd_Cmd(_LCD_CLEAR);    TRISA=0XFF;
    UART1_Init(9600);   Delay_ms(100);    UART1_Write_Text("Start");
    
    while (1) {
    if (UART1_Data_Ready()) {
    i=UART1_Read();
    if (i==13) {
    Lcd_Cmd(_LCD_CLEAR);
    LCD_Cmd(_LCD_RETURN_HOME);
    }
            else {
          LCD_Chr_CP(i);
                  }
                  }
    
    if (PORTA.F0==1) { UART1_Write_Text("MSG1");} // le msg à envoyé
    
    }
    }

    -----
    Dernière modification par JPL ; 22/09/2014 à 01h37. Motif: Ajout de la balise Code (#) pour garder l'indentation

  2. #2
    invitee05a3fcc

    Re : front montant

    Citation Envoyé par PAVNA Voir le message
    mais la vitesse d'envoie est tees grande de telle sorte si j'appuie sur le bouton poussoir le code va envoyer plusieurs fois le msg
    Il suffit, avant de tester si le poussoir est enfoncé, de tester qu'il a été relâché ( et de gérer aussi l'anti rebond )!

  3. #3
    invite24219bec

    Re : front montant

    J'appuie sur le bouton poussoir et je relâche. Normalment le msg sera envoyé une seule fois mais je constate quel la vitesse est importante

  4. #4
    dje8269

    Re : front montant

    Je vais peut etre dire une bêtise, mais si ca peut convenir pour ton apllication .

    fais une boucle infinie tant que le BP est appuyé . Ainsi aucun bug a l'horizon , le revers de la médaille c'est que tant que le bouton est appuyé le programme ne peut rien faire .
    Sinon il faut compliquer encore un peu , avec des flags !

    A la suite de ta détection d'appui, essaye de marquer ceci :

    Code:
    if (PORTA.F0==1) { UART1_Write_Text("MSG1");} // le msg à envoyé
    while (PORTA.F0==1){    // boucle tant que le BP est appuyé
    }
    C'est en faisant des erreurs; que l'on apprend le mieux !!

  5. A voir en vidéo sur Futura
  6. #5
    azad

    Re : front montant

    Tu peux aussi créer une variable drapeau initialisée à zéro. Comme j'ai de l'imagination j'appelle cette variable "Flag" et ça donne :
    if (PORTA.F0==1 and Flag==0) {
    Flag=1;
    UART1_Write_Text("MSG1");} // le msg à envoyé
    }

    Ailleurs, si tu en éprouve le besoin et que ton doigt ne traîne plus du coté du poussoir, tu remet Flag à zéro.

Discussions similaires

  1. rend les bascule fonction en front montant ou en front descendant
    Par invite84b2619f dans le forum Électronique
    Réponses: 6
    Dernier message: 08/12/2013, 22h25
  2. Transformer un front descendant à un front montant!!
    Par invite9ef4aa12 dans le forum Électronique
    Réponses: 8
    Dernier message: 15/02/2010, 16h20
  3. Détecteur de front montant et front descendant
    Par invite3003fad3 dans le forum Électronique
    Réponses: 3
    Dernier message: 17/03/2009, 17h52
  4. front montant sur PIC
    Par invite3a1051d7 dans le forum Électronique
    Réponses: 2
    Dernier message: 25/04/2007, 15h42
  5. front montant
    Par invite2da25054 dans le forum Électronique
    Réponses: 12
    Dernier message: 21/01/2007, 19h24
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...