Aller au contenu

Un mot pour Fahmio

Tu écris. Tu continues.

Un problème, une idée — assez pour qu’on comprenne, puis tu retournes à ta copie.

On lit. Tu n’as rien d’autre à faire.

Où veux-tu aller ?

↑ ↓ pour parcourir · Entrée pour ouvrir · Échap pour fermer

Fahmio
Fahmio
Bac Tunisie
PIC-EAutomatisme — PIC et mikroPascal

Même fonction analogique en solution câblée (A.L.I) puis programmée (CAN) : reporter dans le programme les seuils et les zones du montage

Idée directrice

Les sessions récentes posent la même fonction deux fois : une carte à A.L.I comparateurs, puis un PIC qui lit la même grandeur par son CAN. Les seuils du montage câblé deviennent les bornes des tests du programme. Il faut les convertir d'une solution à l'autre (tension, grandeur physique, valeur N du CAN), puis vérifier sur un cas numérique que les deux cartes donnent le même état.

Ce qui aide à reconnaître la démarche

« on propose deux montages simplifiés, l’un à base d’A.L.I et l’autre à base d’un microcontrôleur » ; « déterminer les valeurs des tensions de basculement V_B et V_H » ; « La résistance chauffante est mise sous tension pour Te < Tc - 5 » ; « Pour une tension U_bat = 380 V, calculer le niveau de la charge des batteries »

Besoin d’un point de départ ? Voir la méthode
  • Solution câblée : pas de contre-réaction → comparateur ; seuil VkV_k par la chaîne de résistances ; la sortie bascule quand l'entrée atteint VkV_k.
  • Convertir chaque seuil en grandeur physique par la loi du capteur : ce sont les bornes des zones du programme.
  • Solution programmée : grandeur = f(N) (U=5N/1023U=5N/1023 puis loi du capteur), équation du segment utile par deux points, une valeur de PORTC par zone.
  • Vérifier sur un même cas numérique que les deux solutions donnent le même état ; l'écart ne dépasse pas un pas du CAN.
  • Une borne peut s'écrire sur une autre grandeur (volume, N) si la relation qui les lie est monotone.
Les pièges à vérifier dans ta démarche

Prendre la tension d'un point de la chaîne sans compter toutes les résistances situées en dessous ; inverser les rôles des entrées (ici + reçoit le signal, − le seuil) ; écrire dans le programme les seuils en volts au lieu de la grandeur calculée ; oublier l'ordonnée à l'origine du segment [BC] ; prolonger la loi du fût au-dessus de 1 m ; écrire des zones qui se recouvrent.

Sujet principal

Exercice long — indicateur de réserve d'une cuve d'eau : solution câblée puis solution programmée (3,5 points), dans l'esprit des sessions 2015–2025

1 questionFigure fournieCorrigé masqué

Une cuve d'eau potable alimente un immeuble. Elle est formée de deux cylindres superposés : un fût étroit de 1 m de haut, puis une partie large jusqu'à 3 m. Un capteur de pression placé au fond délivre une tension proportionnelle à la hauteur d'eau hh : U=1,5 hU=1{,}5\,h (UU en V, hh en m). Quatre diodes indiquent la réserve : aucune pour h<0,5h<0{,}5 m ; D1 pour 0,5≤h<10{,}5\le h<1 m ; D1 et D2 pour 1≤h<21\le h<2 m ; D1, D2 et D3 pour 2≤h<2,82\le h<2{,}8 m ; les quatre pour h≥2,8h\ge2{,}8 m. On propose deux montages : l'un à base d'A.L.I, l'autre à base d'un microcontrôleur.

B.1 — Solution câblée (figure 1). La chaîne R1=16R_1=16 kΩ, R2=24R_2=24 kΩ, R3=30R_3=30 kΩ, R4=15R_4=15 kΩ, R5=15R_5=15 kΩ, sous Vcc=5V_{cc}=5 V, applique V4V_4, V3V_3, V2V_2, V1V_1 aux entrées inverseuses de quatre A.L.I parfaits, alimentés en 0 / +12 V ; UU attaque toutes les entrées non inverseuses. La diode DkD_k est allumée quand la sortie VskV_{sk} vaut +12 V.

1. Quel est le régime de fonctionnement des A.L.I ? Justifier.

2. Exprimer V4V_4, V3V_3, V2V_2 et V1V_1 en fonction de VccV_{cc} et des résistances, puis calculer leurs valeurs.

3. Pour h=2,4h=2{,}4 m, compléter les tableaux.

U (V)Vs1 (V)Vs2 (V)Vs3 (V)Vs4 (V)
…………………………
D1D2D3D4
……………………

4. En déduire, pour chaque A.L.I, la hauteur d'eau à laquelle sa sortie bascule. Ces hauteurs sont-elles celles du cahier des charges ?

B.2 — Solution programmée. Le même capteur est relié à RA0/AN0 d'un PIC 16F876A ; les diodes D1 à D4 sont reliées à RC0 à RC3, un LCD au port B. Le programme affiche le volume d'eau en litres et le taux de remplissage, calculés d'après la caractéristique V=f(h)V=f(h) de la cuve (figure 2), et allume les diodes selon les mêmes zones que la solution câblée.

5. Déterminer l'équation du segment [BC] : V=f(h)V=f(h).

6. Montrer que la hauteur calculée à partir du résultat NN de la conversion vaut h=5 N1,5×1023h=\dfrac{5\,N}{1{,}5\times1023}.

7. Compléter le programme MikroC (les broches non utilisées sont des entrées).

unsigned int N, Litres;
unsigned short Taux;
float h, V;
char txt1[6], txt2[4];
// Connexion de l'afficheur LCD (à ne pas traiter)
void main() {
  ADCON1 = 0x8E;                 // RA0/AN0 seule analogique
  TRISA = 0x……;
  TRISC = 0x……;                  // RC0 à RC3 : D1 à D4
  Lcd_Init();  Lcd_Cmd(_LCD_CURSOR_OFF);
  while (1) {
    N = ADC_Read(……);
    h = ……………………;               // hauteur d'eau en m
    if (h <= 1) V = 2 * h;       // volume en m3 (fût)
    else V = ……………;             // partie large
    Litres = V * 1000;
    Taux = V * 100 / 14;
    WordToStr(Litres, txt1);  ByteToStr(Taux, txt2);
    Lcd_Out(1, 1, "Volume:");  Lcd_Out(1, 9, txt1);
    Lcd_Out(1, 15, "L");
    Lcd_Out(2, 1, "Taux:");    Lcd_Out(2, 9, txt2);
    Lcd_Out(2, 13, "%");
    // mêmes zones que la solution câblée
    if (h < ……) PORTC = 0x00;
    if ((h >= 0.5) && (h < ……)) PORTC = 0x01;
    if ((h >= ……) && (h < 2)) PORTC = 0x……;
    if ((h >= 2) && (h < ……)) PORTC = 0x……;
    if (h >= ……) PORTC = 0x0F;
  }
}

8. Pour h=2,4h=2{,}4 m, le CAN délivre N=736N=736 (partie entière de 736,56). Calculer hh, VV, les valeurs affichées et PORTC. Les deux solutions allument-elles les mêmes diodes ?

9. Un technicien préfère tester le volume plutôt que la hauteur. Par quelles valeurs de VV faut-il remplacer les bornes 0,5 ; 1 ; 2 et 2,8 m ? Justifier que le fonctionnement est inchangé.

Voir la correction commentéeAprès avoir posé votre démarche

1. Idée : chercher une liaison entre la sortie et l'entrée inverseuse. Il n'y en a pas : les A.L.I fonctionnent en régime non linéaire (comparateurs). Vsk=+12V_{sk}=+12 V si U>VkU>V_k, Vsk=0V_{sk}=0 V sinon.

2. Idée : le même courant traverse toute la chaîne, I=Vcc/RTI=V_{cc}/R_T avec RT=R1+⋯+R5=100R_T=R_1+\dots+R_5=100 kΩ ; chaque tension est prise au-dessus des résistances qui la séparent de la masse.

V4=R2+R3+R4+R5RT Vcc=4,2 VV_4=\dfrac{R_2+R_3+R_4+R_5}{R_T}\,V_{cc}=4{,}2\ \text{V}
V3=R3+R4+R5RT Vcc=3 VV_3=\dfrac{R_3+R_4+R_5}{R_T}\,V_{cc}=3\ \text{V}
V2=R4+R5RT Vcc=1,5 VV_2=\dfrac{R_4+R_5}{R_T}\,V_{cc}=1{,}5\ \text{V}
V1=R5RT Vcc=0,75 VV_1=\dfrac{R_5}{R_T}\,V_{cc}=0{,}75\ \text{V}

3. U=1,5×2,4=3,6U=1{,}5\times2{,}4=3{,}6 V : supérieure à V1V_1, V2V_2, V3V_3, inférieure à V4V_4.

U (V)Vs1 (V)Vs2 (V)Vs3 (V)Vs4 (V)
3,61212120
D1D2D3D4
alluméealluméealluméeéteinte

4. VskV_{sk} bascule quand U=VkU=V_k, soit h=Vk/1,5h=V_k/1{,}5 : A.L.I1 à 0,5 m, A.L.I2 à 1 m, A.L.I3 à 2 m, A.L.I4 à 2,8 m. Ce sont exactement les bornes des zones du cahier des charges.

5. Idée : pente entre B et C. 14−23−1=6\dfrac{14-2}{3-1}=6 m³ par m, et V=2+6 (h−1)V=2+6\,(h-1), soit V=6 h−4\boxed{V=6\,h-4} (m³, pour 1≤h≤31\le h\le3 m).

6. Le CAN donne U=5 N1023U=\dfrac{5\,N}{1023} et le capteur h=U1,5h=\dfrac{U}{1{,}5}, d'où h=5 N1,5×1023h=\dfrac{5\,N}{1{,}5\times1023}.

7. Idée : les bornes des tests sont les hauteurs de basculement trouvées en 4.

TRISA = 0xFF;
TRISC = 0xF0;
N = ADC_Read(0);
h = N * 5.0 / 1023 / 1.5;
else V = 6 * h - 4;
if (h < 0.5) PORTC = 0x00;
if ((h >= 0.5) && (h < 1)) PORTC = 0x01;
if ((h >= 1) && (h < 2)) PORTC = 0x03;
if ((h >= 2) && (h < 2.8)) PORTC = 0x07;
if (h >= 2.8) PORTC = 0x0F;

8. h=5×7361,5×1023=2,398h=\dfrac{5\times736}{1{,}5\times1023}=2{,}398 m ; V=6×2,398−4=10,389V=6\times2{,}398-4=10{,}389 m³ ; Litres =10389=\boxed{10389} ; Taux =10,389×10014=74,2=\dfrac{10{,}389\times100}{14}=74{,}2, affiché 74\boxed{74} %. Comme 2≤h<2,82\le h<2{,}8, PORTC =0x07=\boxed{0\text{x}07} : D1, D2 et D3 allumées, comme dans la solution câblée. L'écart de 2 mm sur hh vient de la quantification (un pas vaut 3,26 mm).

9. Idée : une relation croissante conserve l'ordre. V(0,5)=1V(0{,}5)=1 m³, V(1)=2V(1)=2 m³, V(2)=6×2−4=8V(2)=6\times2-4=8 m³, V(2,8)=6×2,8−4=12,8V(2{,}8)=6\times2{,}8-4=12{,}8 m³. V(h)V(h) étant strictement croissante, h≥hkh\ge h_k ⇔ V≥V(hk)V\ge V(h_k) : chaque test donne le même résultat.

Changer d’énoncé, garder le raisonnement

Choisis un seul transfert après le sujet principal. Qu’est-ce qui change ? Quel résultat ou quelle méthode peux-tu réutiliser ? Les autres exercices restent disponibles pour une prochaine séance.

Variantes rencontrées : quatre A.L.I prélevant Ve1V_{e1} à Ve4V_{e4} sur une chaîne alimentée par la batterie, puis PIC calculant la décharge par zone de la caractéristique Ubat=f(Dch)U_{bat}=f(D_{ch}) avec PORTC par zone (principale 2024) ; comparateur double seuils à ±1,5 V, puis programme à Tc±25T_c\pm25 °C avec affichage en °F (principale 2025, exercices 3 et 4) ; soustracteur, amplificateur et comparateur à seuils ±0,5 V, puis programme Tc=a N+bT_c=a\,N+b à Tc±5T_c\pm5 (contrôle 2015).

Exercices d'entraînement — une nuance à la fois

1 Drill PIC-E.1 — de la carte à A.L.I au programme : consigne Tc=a N+bT_c=a\,N+b et même écart de ±4 °C autour de la consigne
Entraînement 01 / 03

Drill PIC-E.1 — de la carte à A.L.I au programme : consigne Tc=a N+bT_c=a\,N+b et même écart de ±4 °C autour de la consigne

1 questionCorrigé masqué

L'eau d'un bac de dégraissage doit rester autour de 45 °C. Un capteur délivre Vt=0,02 θV_t=0{,}02\,\theta (V, θ en °C).

Solution câblée : un amplificateur non inverseur (R1=4 R2R_1=4\,R_2) donne V3=(1+R1R2)VtV_3=\left(1+\dfrac{R_1}{R_2}\right)V_t ; un soustracteur à résistances égales donne V1=Vc−V3V_1=V_c-V_3 avec Vc=4,5V_c=4{,}5 V ; un comparateur double seuils non inverseur, de seuils Vh=0,4V_h=0{,}4 V et Vb=−0,4V_b=-0{,}4 V, délivre V2V_2 : V2V_2 passe à +Vsat+V_{sat} quand V1V_1 dépasse VhV_h et à −Vsat-V_{sat} quand V1V_1 descend sous VbV_b. La résistance chauffante est alimentée quand V2=+VsatV_2=+V_{sat}.

1. Exprimer V3V_3 en fonction de θ, puis montrer que θ=10 (Vc−V1)\theta=10\,(V_c-V_1).

2. En déduire les valeurs seuils de la température pour V1=VhV_1=V_h et V1=VbV_1=V_b. À quelle température la chauffe démarre-t-elle ? S'arrête-t-elle ?

Solution programmée : le CAN 10 bits d'un PIC 16F876A convertit la consigne d'un potentiomètre sur RA1/AN1 (Nc=0N_c=0 → 30 °C ; Nc=1023N_c=1023 → 60 °C, avec Tc=a Nc+bT_c=a\,N_c+b) et la température de l'eau sur RA0/AN0 (0 V à 0 °C, 5 V à 100 °C). La résistance chauffante est commandée par RC3.

unsigned int Nc, Ne;
float Tc, Te;
sbit KR at RC3_bit;
void main() {
  ADCON1 = 0x84;               // AN0 et AN1 analogiques
  TRISA = 0xFF;
  TRISC3_bit = 0;  KR = 0;
  while (1) {
    Nc = ADC_Read(1);          // consigne
    Ne = ADC_Read(0);          // température de l'eau
    Te = Ne * 100.0 / 1023;
    Tc = ……………………;
    if (Te < ……………) KR = 1;    // chauffe
    if (Te > ……………) KR = 0;    // arrêt
  }
}

3. Déterminer aa et bb, puis compléter le programme pour qu'il reproduise l'écart de la solution câblée autour de la consigne.

4. Quelle est la plus petite valeur de NcN_c qui donne une consigne d'au moins 45 °C ? Calculer alors les températures de démarrage et d'arrêt de la chauffe.

Voir la correction commentéeAprès avoir posé votre démarche

1. V3=(1+4) Vt=5×0,02 θ=0,1 θV_3=(1+4)\,V_t=5\times0{,}02\,\theta=0{,}1\,\theta. Alors V1=Vc−0,1 θV_1=V_c-0{,}1\,\theta, d'où θ=10 (Vc−V1)=45−10 V1\boxed{\theta=10\,(V_c-V_1)}=45-10\,V_1.

2. V1=Vh=0,4V_1=V_h=0{,}4 V : θ=41 °C\theta=\boxed{41\ °\text{C}} ; V1=Vb=−0,4V_1=V_b=-0{,}4 V : θ=49 °C\theta=\boxed{49\ °\text{C}}. Quand l'eau refroidit, V1V_1 augmente : V1>0,4V_1>0{,}4 V ⇔ θ<41\theta<41 °C, V2=+VsatV_2=+V_{sat}, la chauffe démarre ; V1<−0,4V_1<-0{,}4 V ⇔ θ>49\theta>49 °C, elle s'arrête. Écart de ±4 °C autour de 45 °C.

3. Nc=0N_c=0 donne b=30b=30 °C ; a=60−301023=301023≈0,0293a=\dfrac{60-30}{1023}=\dfrac{30}{1023}\approx0{,}0293 °C.

Tc = 30.0 * Nc / 1023 + 30;
if (Te < Tc - 4) KR = 1;
if (Te > Tc + 4) KR = 0;

4. 45=30 Nc1023+3045=\dfrac{30\,N_c}{1023}+30 ⇔ Nc=511,5N_c=511{,}5. Nc=511N_c=511 donne Tc=44,99T_c=44{,}99 °C, trop peu : la plus petite valeur est Nc=512\boxed{N_c=512}, Tc=45,01T_c=45{,}01 °C ; la chauffe démarre sous 41,01 °C\boxed{41{,}01\ °\text{C}} et s'arrête au-dessus de 49,01 °C\boxed{49{,}01\ °\text{C}}, comme la carte à A.L.I.

2 Drill PIC-E.2 — seuils VBV_B et VHV_H d'un comparateur inverseur, puis programme à Tc±10T_c\pm10 °C : le piège de l'affichage en °F
Entraînement 02 / 03

Drill PIC-E.2 — seuils VBV_B et VHV_H d'un comparateur inverseur, puis programme à Tc±10T_c\pm10 °C : le piège de l'affichage en °F

1 questionCorrigé masqué

Un four sèche des moules de fonderie à 200 °C. Solution câblée : on admet que la chaîne de mesure délivre Vs2=0,1 T−20V_{s2}=0{,}1\,T-20 (V, T en °C). L'A.L.I3 est un comparateur double seuils inverseur : VH=R1R1+R2VsatV_H=\dfrac{R_1}{R_1+R_2}V_{sat} et VB=−R1R1+R2VsatV_B=-\dfrac{R_1}{R_1+R_2}V_{sat}, avec R1=1R_1=1 kΩ, R2=14R_2=14 kΩ, Vsat=15V_{sat}=15 V. Sa sortie Vs3V_{s3} commande, par un transistor, le contacteur KA de la résistance de chauffe : KA est enclenché quand Vs3=+VsatV_{s3}=+V_{sat}.

1. Calculer VHV_H et VBV_B, puis les températures de basculement. À quelle température KA s'enclenche-t-il ? Se déclenche-t-il ?

Solution programmée : un PIC calcule Ts (réel, en °C, capteur de 0 à 400 °C sur RA0/AN0) et la consigne vaut 200 °C. Le commutateur C/F (RB3) choisit l'affichage, avec T(°F)=95 T(°C)+32T(°\text{F})=\dfrac{9}{5}\,T(°\text{C})+32 ; KA est commandé par RB0. Voici la boucle écrite par un technicien :

    Ns = ADC_Read(0);
    Ts = Ns * 400.0 / 1023;          // Ts réel, en °C
    if (RB3_bit == 0) Tc = 200;      // affichage en °C
    else {                           // affichage en °F
      Tc = 200 * 9 / 5 + 32;
      Ts = Ts * 9 / 5 + 32; }
    // ... affichage de Tc et Ts sur le LCD ...
    if (Ts < Tc - ……) RB0_bit = 1;   // KA enclenché
    if (Ts > Tc + ……) RB0_bit = 0;   // KA déclenché

2. Compléter les deux valeurs pour que, en affichage °C, le programme reproduise la solution câblée.

3. Le technicien passe l'affichage en °F (RB3 = 1) : Tc devient 392. À quelles températures, en °C, KA s'enclenche-t-il et se déclenche-t-il alors ? Conclure.

4. Proposer deux corrections.

Voir la correction commentéeAprès avoir posé votre démarche

1. R1R1+R2=115\dfrac{R_1}{R_1+R_2}=\dfrac{1}{15} : VH=1 VV_H=\boxed{1\ \text{V}} et VB=−1 VV_B=\boxed{-1\ \text{V}}. Vs2=−1V_{s2}=-1 V pour T=−1+200,1=190T=\dfrac{-1+20}{0{,}1}=190 °C ; Vs2=+1V_{s2}=+1 V pour T=210T=210 °C. Le comparateur étant inverseur, Vs3=+VsatV_{s3}=+V_{sat} quand Vs2<VBV_{s2}<V_B : KA s'enclenche sous 190 °C et se déclenche au-dessus de 210 °C, soit 200±10200\pm10 °C.

2. if (Ts < Tc - 10) … et if (Ts > Tc + 10) …

3. Idée : après la conversion, les deux membres du test sont en °F. KA s'enclenche si 95T+32<382\dfrac{9}{5}T+32<382 ⇔ T<194,4T<194{,}4 °C, et se déclenche si 95T+32>402\dfrac{9}{5}T+32>402 ⇔ T>205,6T>205{,}6 °C. La bande passe de ±10 °C à ±5,6 °C : changer l'unité affichée change la régulation, et le contacteur commute presque deux fois plus souvent.

4. Soit faire les tests avant la conversion d'affichage, sur les valeurs en °C ; soit, en °F, écrire un écart de 10×95=1810\times\dfrac{9}{5}=18 °F (le +32 disparaît dans une différence) : 392−18=374392-18=374 °F correspond à 190 °C et 392+18=410392+18=410 °F à 210 °C.

3 Drill PIC-E.3 — seuils des comparateurs traduits en valeurs entières de N : éclairage d'appoint d'une serre
Entraînement 03 / 03

Drill PIC-E.3 — seuils des comparateurs traduits en valeurs entières de N : éclairage d'appoint d'une serre

1 questionCorrigé masqué

Une serre est éclairée par trois rangées de lampes L1, L2, L3, allumées progressivement quand la lumière du jour baisse. Un capteur d'éclairement délivre U=E/10 000U=E/10\,000 (U en V, E en lux, de 0 à 50 000 lux).

Solution câblée : une chaîne de résistances 20 kΩ, 10 kΩ, 10 kΩ, 10 kΩ (de haut en bas), sous 5 V, fixe trois tensions V3V_3, V2V_2, V1V_1 (de haut en bas) sur les entrées non inverseuses de trois A.L.I ; UU attaque leurs entrées inverseuses. L1 est commandée par l'A.L.I relié à V3V_3, L2 par celui relié à V2V_2, L3 par celui relié à V1V_1 ; une rangée est allumée quand la sortie de son A.L.I est au niveau haut.

1. Calculer V3V_3, V2V_2, V1V_1. Pour quels éclairements chaque rangée est-elle allumée ?

Solution programmée : le capteur est relié à RA2/AN2 d'un PIC 16F876A ; L1, L2, L3 sont commandées par RC0, RC1, RC2 ; un LCD affiche E. Extrait d'ADCON1 (RA5, RA3, RA2, RA1, RA0) : 1000 0000 → A A A A A ; 1000 0100 → D A D A A ; 1000 1110 → D D D D A.

2. Choisir la valeur d'ADCON1.

3. Le programme compare directement NN aux seuils. Quelles valeurs entières faut-il écrire pour que chaque rangée change d'état à la même tension que dans la solution câblée ? Compléter le programme.

unsigned int N, E;
char txt[6];
// Connexion de l'afficheur LCD (à ne pas traiter)
void main() {
  ADCON1 = 0x……;
  TRISA = 0xFF;  TRISC = 0xF8;
  Lcd_Init();  Lcd_Cmd(_LCD_CURSOR_OFF);
  while (1) {
    N = ADC_Read(……);
    E = N * 50000.0 / 1023;          // éclairement en lux
    WordToStr(E, txt);
    Lcd_Out(1, 1, txt);  Lcd_Out(1, 7, "lux");
    if (N >= ……) PORTC = 0x00;
    if ((N < 614) && (N >= ……)) PORTC = 0x01;
    if ((N < ……) && (N >= 205)) PORTC = 0x……;
    if (N < ……) PORTC = 0x……;
  }
}

4. E = 14 000 lux. Quelles rangées sont allumées dans chaque solution ? Quelle valeur affiche le LCD ?

Voir la correction commentéeAprès avoir posé votre démarche

1. La chaîne totalise 50 kΩ : V3=5×3050=3V_3=5\times\dfrac{30}{50}=3 V, V2=5×2050=2V_2=5\times\dfrac{20}{50}=2 V, V1=5×1050=1V_1=5\times\dfrac{10}{50}=1 V. Une sortie est au niveau haut quand Vk>UV_k>U : L1 allumée pour U<3U<3 V, soit E<30 000E<30\,000 lux ; L2 pour E<20 000E<20\,000 lux ; L3 pour E<10 000E<10\,000 lux.

2. Seule la ligne 1000 0000 rend RA2 analogique : ADCON1=0x80\boxed{\text{ADCON1}=0\text{x}80}.

3. Idée : U<VkU<V_k ⇔ N<1023 Vk5N<\dfrac{1023\,V_k}{5}, et N est entier. Les seuils valent 613,8 ; 409,2 et 204,6. N<613,8N<613{,}8 ⇔ N≤613N\le613 ⇔ N<614N<614 ; de même 410 et 205.

ADCON1 = 0x80;
N = ADC_Read(2);
if (N >= 614) PORTC = 0x00;
if ((N < 614) && (N >= 410)) PORTC = 0x01;
if ((N < 410) && (N >= 205)) PORTC = 0x03;
if (N < 205) PORTC = 0x07;

4. U=1,4U=1{,}4 V. Câblé : 1,4<31{,}4<3 et 1,4<21{,}4<2, L1 et L2 allumées ; 1,4>11{,}4>1, L3 éteinte. Programmé : NN = partie entière de 1023×1,45=286,4\dfrac{1023\times1{,}4}{5}=286{,}4, soit 286 ; 205≤286<410205\le286<410 : PORTC =0x03=0\text{x}03, L1 et L2 allumées, comme la solution câblée. Le LCD affiche 286×50 0001023=13 978,5\dfrac{286\times50\,000}{1023}=13\,978{,}5, soit 13978\boxed{13978} lux.

Relier ce raisonnement au bac

Choisis une filière pour voir les sujets qui étayent ce scénario.