Page 22 - SERIE N11 micro 2
P. 22

4°) Compléter le programme ci-dessous:

                                           LM016L




                                             S   D   E
                                             S   V   V  D   E   V   S   R   R   E  W   0   D   1   D   2   D   3   D   4   D   5   D   6   D   7   D
                                         1   2   3   4   5   6   7   8   9   0   1   1   1   2  1   3   1   4   1
                                                                     program exercice_N_24_voltmetre;
                  C.A.N
            9   OSC1/CLKIN     RB0/INT   21                          // connexion de L'LCD
            10   OSC2/CLKOUT      RB1   22
                                       23
            2                     RB2   24                           var var LCD_RS: sbit at RC0_bit;
            3   RA0/AN0       RB3/PGM   25                           var LCD EN: …………………………..
            4   RA1/AN1           RB4   26                           var LCD D4: .…………………………..
                                  RB5
               RA2/AN2/VREF-/CVREF
            5   RA3/AN3/VREF+   RB6/PGC   27
            6   RA4/T0CKI/C1OUT   RB7/PGD   28                       var LCD D5: …………………………..
            7
               RA5/AN4/SS/C2OUT        11                            var LCD D6: .…………………………..
            1   MCLR/Vpp/THV  RC0/T1OSO/T1CKI   12                   var LCD D7: …………………………..
                          RC1/T1OSI/CCP2
                              RC2/CCP1   13                          var LCD RS Direction : sbit at TRISC.0 bit;
                            RC3/SCK/SCL   14                         var LCD EN Direction : ………………………
                                       15
         +88.8              RC4/SDI/SDA   16
                              RC5/SDO
        Volts                RC6/TX/CK   17                          var LCD D4 Direction : ……………………...
                             RC7/RX/DT   18                          var LCD D5 Direction : …………………………
              PIC16F876A                                             var LCD D6 Direction : sbit at TRISC.4 bit;
                                                                     var LCD D7 Direction : sbit at TRISC.5 bit;

       N : word ;                     // 2 octets car le résultat de conversion est sur 10 bits
       calcul:real ;                  // 4 pour ne pas avoir un dépassement de taille lors de la multiplication
       tension:word ;             //2 octets car la tension est affichée en mV elle est compris entre 0 et 5000 mV
       valeur_affichage :string[4];       // chaine de 4 caractères pour afficher la tension
       begin
       TRISA:=$........... ;
       ADCON1 :=% ………………… ;
       LCD_init();
       LCD_cmdLLCD_cursor_off);
       LCD_out (1, 1,'V=');
       while true do
       begin
       N:= ADC_read( );                                              // ……………………………
       calcul:= (N*(5000/1023));
       tension := word( calcul);                                    // ……………………………
       wordtostr(tension,valeur_affichage);                 // ……………………………
       LCD_out (1,3,valeur_affichage);
       ……………………………                                 //Afficher au premier ligne et 9eme colonne 'mV'
       delay _ms( 1000);
       end ;
       end.
       Exercice N°25 :
       Écrire un programme qui permet de commander un moteur à courant continu avec un rapport cyclique
       a = 0,5. Utiliser la technique MLI (PWM) Sortie sur RC2 fréquence de MLI (1000Hz)








                                                                                                                22
   17   18   19   20   21   22   23   24   25