modelAdcRead
GP1 utilisée en entrée analogique (machine.ADC), pilotée par un pont diviseur externe ; le script recopie un seuil sur GP0 (LED) pour rendre la lecture observable
Extends from Modelica.Icons.Example (Icon for runnable examples).
Information
Scénario de vérification 8 (cf. requirements.md) : GP1 est utilisée en entrée analogique (machine.ADC(1)) plutôt qu'en broche numérique — un pont diviseur externe (supply/rTop/rBot, indépendant de MCU) l'alimente à ~2,2 V (3,3 V × 2000/3000). Le script adc_read.py lit ADC(1).read_u16() et pilote Pin(0, Pin.OUT) selon un seuil (moitié de l'échelle 16 bits) — led0 rend ce seuil observable, servant de sonde pour valider tout le pipeline (division de tension → ADC → seuil → sortie) sans dépendre d'une lecture directe d'un flottant. Les broches inutilisées (GP2-GP7) sont tirées à la masse par une résistance, comme dans BasicBlink.mo/PinEcho.mo.
Components
| Type | Name | Default | Description |
|---|---|---|---|
| MCU | mcu | scriptPath = Resources/Scripts/MCU/adc_read.py | |
| Modelica.Electrical.Analog.Basic.Ground | ground | ||
| Modelica.Electrical.Analog.Basic.Resistor | r0 | limite le courant de led0 (GP0) | |
| Peripherals.LED | led0 | GP0 : recopie (v > moitie de l'echelle ADC) ? | |
| Modelica.Electrical.Analog.Sources.ConstantVoltage | supply | alimentation du pont diviseur (independante de MCU) | |
| Modelica.Electrical.Analog.Basic.Resistor | rTop | haut du pont diviseur | |
| Modelica.Electrical.Analog.Basic.Resistor | rBot | bas du pont diviseur : GP1 lit ~3.3*2/3 = 2.2 V |