Étape 12 : Rétroéclairage LCD / PWM LED de contrôle
analogWrite (LCD_BACKLIGHT, eeprom.lcd_backlight) ;
« LCD_BACKLIGHT », c’est le NIP relié à la LED et le « eeprom.lcd_backlight » est la valeur comprise entre 0 et 255.
En appuyant sur haut et en bas (avec l’horloge horizontale, la voie normale), le rétro-éclairage augmente et diminue. Dans un premier temps le montant était linéaire, mais je voulais plus fines à l’extrémité inférieure plus grande réglage et à l’extrémité supérieure, donc je suis passé à un système plus logarithmique. Ce que je fais est double de la valeur lorsque j’appuie sur vers le haut et réduire de moitié la valeur lorsque j’appuie sur vers le bas. Assez simple. J’ai jamais laisser aller au-dessus de 128 pour éviter de griller le LED.
La routine analogWrite() utilise la modulation de largeur d’impulsion qui requiert une minuterie. Depuis que je suis sur une minuterie pour une routine d’interruption, un autre pour le buzzer et l’Arduino utilise encore une autre pour leur routine millis() je devais être prudent sur quelle sortie analogique de (PWM), j’ai utilisé. J’ai utilisé la technique de haute technologie d’essayer une broche et lorsque cela ne fonctionne pas j’ai essayé un autre qui n’a fonctionné. J’ai fini par utiliser la broche 6 qui est Timer 0 A.