Help Programmation trés facile (TP BAC SSI)
Répondre à la discussion
Affichage des résultats 1 à 2 sur 2

Help Programmation trés facile (TP BAC SSI)



  1. #1
    invite30b4c264

    Help Programmation trés facile (TP BAC SSI)


    ------

    Bonjour, je suis en terminale S Sciences de l'Ingénieur et je dois passé l'épreuve expérimentale dans 2 jours
    Parmi ce que l'on a fait en électronique certain TP comporte un petit bout de programmation et c'est là que j'ai quelques problèmes.
    Il s'agit de compléter un programme ( connaissant le fonctionnement de notre système)

    Les deux solutions ( if ou else ) correspondent a deux situations, dans chaque situation le moteur est piloté avec un hacheur.
    Pour la première situation, si l'utilisation n'appuie pas sur le bouton, alors le moteur tourne avec un rapport cyclique de α=0.4.
    Si l'utilisation appuie sur le bouton ( situation d'urgence ) alors le moteur se met a tourner plus vite ( α=0.8 )

    Voici le programme

    Code:
    *********************************************
    Chip type           : ATmega16
    Program type        : Application
    Clock frequency     : 4,000000 MHz
    Memory model        : Small
    External SRAM size  : 0
    Data Stack size     : 256
    *********************************************/
    #include <mega16.h>
    #include <delay.h>
     // Declare your local variables here
    void init (void);
    void hom_en_mer(void);
    
    void main(void)
    {
    init();
    while(1)
    {
    hom_en_mer();
    }
    }
    void init(void)
    {
    // Input/Output Ports initialization
    // Port B initialization
    PORTB=0x00;                                    <== Ca veut dire quoi 0x00 ?
    DDRB=0x10;                                      <== Même question..héxa ?
    }
    
    void hom_en_mer(void)
    {
    if(PINB.2= =1)                                    <== Pourquoi deux "=" ?
        { PORTB.4=0;  	
    	delay_ms(2);
    	PORTB.4=1;      
            delay_ms(8);
     
         }
    else
         {	 PORTB.4=0;  	
    	delay_ms(6);
    	PORTB.4=1;      
            delay_ms(4); 
            }
    }
    Voila, j'espère que vous pourrez m'aider, je voudrais savoir ce que signifient les lignes que j'ai indiqué, dans le ''0x00'', es-ce de l'héxadécimale, binaire ? Que signifie le x ? N'hésitez pas à dire d'autres choses si ça vous semble utile
    Merci
    Phos.


    .

    -----
    Dernière modification par gienas ; 27/06/2010 à 10h00.

  2. #2
    Jack
    Modérateur

    Re : Help Programmation trés facile (TP BAC SSI)

    je voudrais savoir ce que signifient les lignes que j'ai indiqué, dans le ''0x00'', es-ce de l'héxadécimale, binaire ?
    0x annonce que les valeurs qui suivent juste derrière sont en hexadécimal.

    if(PINB.2= =1) <== Pourquoi deux "=" ?
    C'est comme ça en langage C (et autres), l'opérateur d'égalité est == (les 2 = doivent être joints).
    Le = simple est un opérateur d'affectation: la partie située à gauche du = prend la valeur de la partie située à droite.

    A+

Discussions similaires

  1. Bac SSI vers bac STI !!!
    Par invitea600e088 dans le forum Orientation avant le BAC
    Réponses: 3
    Dernier message: 05/03/2010, 16h19
  2. Après le bac Ssi
    Par invite40057cc7 dans le forum Orientation après le BAC
    Réponses: 0
    Dernier message: 26/12/2008, 17h53
  3. Enigme (tres Facile)
    Par invite788778a8 dans le forum Science ludique : la science en s'amusant
    Réponses: 8
    Dernier message: 13/06/2006, 13h59
  4. bac SSI
    Par inviteb03d7539 dans le forum Orientation avant le BAC
    Réponses: 4
    Dernier message: 15/07/2005, 10h49
  5. Bac SSi
    Par invite8709c688 dans le forum Orientation avant le BAC
    Réponses: 1
    Dernier message: 19/04/2005, 15h21
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...