Quel est le statut des leds dans le téléphone? A quoi servent les indicateurs LED? Gestion des indicateurs de segment

Gestionnaire de lumière. Dès que vous recevez une lettre ou un message, votre téléphone tente d'attirer votre attention à l'aide de l'indicateur intégré. Mais par le clignotement de la LED, vous ne pourrez jamais déterminer exactement quel événement s'est produit, et vous devez toujours le détecter. Jusqu'à ce que vous installiez Light Manager.

Light Manager est un programme Android qui vous aide à personnaliser le fonctionnement de l'indicateur à LED de votre gadget. Avec cette application, vous lui apprendrez à répondre de différentes couleurs à certains événements, par exemple lorsqu'un nouveau message arrive dans WhatsApp ou à partir d'un événement de votre calendrier.

Par défaut, le programme contient déjà un certain nombre de paramètres pour les événements les plus populaires. Mais vous pouvez à tout moment supprimer les signaux non pertinents pour vous et ajouter les informations nécessaires. Pour ce faire, appuyez simplement sur l'élément souhaité et vous serez redirigé vers le menu des paramètres de notification. Ici, vous pouvez régler la fréquence de clignotement, sélectionner la couleur du voyant et vérifier immédiatement les réglages que vous avez définis en action.

Si le programme pour lequel vous souhaitez recevoir des notifications ne figure pas dans la liste, vous pouvez l'ajouter vous-même. Pour ce faire, passez au mode de fonctionnement alternatif Light Manager, puis sélectionnez l'élément "Ajouter une application". Vous verrez une liste de tous les programmes installés sur votre smartphone. Sélectionnez l'application souhaitée et ajoutez une notification par voyant.

Veuillez noter que Light Manager peut générer des rapports non seulement sur les événements logiciels, mais également sur divers événements système. Par exemple, une application peut vous avertir d'une batterie faible, d'aucun signal de réseau ou du mode silencieux. Il ne sera pas superflu de regarder dans les paramètres avancés du programme, où vous pouvez régler la fréquence du scintillement du signal, activer le mode veille (heure à laquelle le gestionnaire de lumière ne vous dérange pas) et changer l'heure de l'extinction automatique du voyant.

Réglage de l'indicateur LED pour les notifications d'événements divers:

Téléchargez l'application Light Manager sur Android   Vous pouvez suivre le lien ci-dessous.

Développeur: MC Koo
Plate-forme: Android ( Dépend de l'appareil)
Langue: russe (RUS)
Statut: Complet (Version complète)
Racine: pas nécessaire



Elle ne vous permet pas d'activer ou de désactiver directement le voyant ou le flash de l'appareil photo. Cette option est disponible sur certains téléphones.

Comment faire clignoter par programme avec des lumières colorées, comment écrire votre propre «lampe de poche» ou quelles autres DEL de l'appareil peuvent être contrôlées - vous en apprendrez les bases ci-dessous.

Tout a commencé lorsque, en explorant le système de fichiers de mon HTC Desire à l'aide d'ES Explorer, je suis tombé par hasard sur de curieux répertoires: / sys / class / leds / blue, / sys / class / leds / flashlight, etc.
  Quoi d'autre est bleu?! Je n'ai vu que les indicateurs orange et vert. Mais le plus intéressant - à l’intérieur de ces répertoires s’est avéré être un fichier de luminosité avec le droit d’écrire! Ce dont j'ai immédiatement profité.

En fait, il ne s’agit pas d’un simple fichier, mais d’une interface permettant de travailler avec le pilote de LED. Ainsi, en écrivant un nombre positif dans le fichier / sys / classe / leds / bleu / luminosité, nous allumons le voyant bleu sur le corps du téléphone, en écrivant 0 - le désactivons. De même avec les indicateurs orange et vert. En allumant les deux voyants ensemble, nous obtenons de nouvelles couleurs: orange + bleu \u003d violet; vert + bleu \u003d aqua.

Et maintenant, comment est-ce tout programmé
public void ledControl (Nom de chaîne, luminosité int) (

essayer (

   FileWriter fw \u003d new FileWriter ("/ sys / class / leds /" + nom + "/ luminosité");

   fw.write (Integer.toString (luminosité));

   fw.close ();

   ) capture (exception e) (

// contrôle LED non disponible

}

}


// Allume l'indicateur violet

  ledControl ("ambre", 255);

  ledControl ("bleu", 255);


// Assombrir l'affichage

  ledControl ("lcd-backlight", 30);


// éteindre l'éclairage des boutons

  ledControl ("bouton-rétro-éclairage", 0);


// Organiser une lampe de poche de luminosité moyenne

  ledControl ("lampe de poche", 128);

Un exemple d'application avec les codes sources peut être téléchargé.

Conclusion
  C’est tout! Maintenant, le téléphone brille comme un sapin de Noël. Le code a été testé uniquement sur HTC Desire sous Android 2.2, mais il peut probablement fonctionner sur d'autres appareils. Ecrivez-moi si la focalisation sur votre téléphone s’avérera ou non.

Fig. 1 Emplacement des segments de LED

Les voyants sont le moyen le plus simple d’afficher des informations sur les caractères. Leur conception est un ensemble de diodes électroluminescentes constituées de segments d’une certaine forme. La figure 1 montre la disposition des segments la plus courante, ce qui vous permet d'afficher les chiffres de 0 à 9 et de nombreux autres caractères supplémentaires. En résumé, toutes les LED ont un point de connexion commun. Combinés ensemble peuvent être des anodes (anode commune) ou des cathodes (cathode commune). Les couleurs de lueur les plus courantes sont le rouge et le vert. Avec une consommation de courant égale, les LED rouges ont généralement une sortie lumineuse importante. La consommation d'énergie dépend de la tension d'alimentation et de la technologie de fabrication. Le courant de segment des indicateurs modernes peut être inférieur à 1 mA.


  Fig. 2 Connecter l'indicateur pour l'indication dynamique

Afin de mettre en évidence le symbole nécessaire sur l'indicateur, vous devrez utiliser 8 broches sur le microcontrôleur. Une ligne peut être sauvegardée si le segment H est abandonné sans qu’il soit nécessaire d’afficher un point (virgule). Avec un plus grand nombre d’indicateurs utilisés, le nombre de lignes d’entrée / sortie augmentera considérablement. Deux indicateurs nécessiteront 16 lignes, trois indicateurs - 24, etc. Il est clair que pour la plupart des applications, ce gaspillage de conclusions est totalement inacceptable. Vous pouvez résoudre ce problème en appliquant un affichage dynamique. Pour ce faire, au lieu de connecter directement les segments au microcontrôleur, ils sont combinés en groupes généraux, comme illustré à la Fig. 2. Le schéma utilise l'indicateur TOT-3361AH-LN pour 3 familiariser avec les cathodes communes. Le port D est utilisé pour contrôler les voyants des segments A ... H. Les cathodes K0 ... K2 sont directement connectées aux lignes 0 ... 2 du port B, respectivement (pour les indicateurs de type différent avec un courant total égal ou supérieur à 20 mA, des éléments tampons supplémentaires seront nécessaires). Au début, un symbole correspondant à la familiarité zéro est affiché sur l'indicateur. En même temps, un niveau de tension bas est défini sur la ligne PB0 et un niveau élevé sur PB1 et PB2 (sinon, le symbole sera affiché dans les trois positions). Après un certain temps, le symbole suivant est affiché et la cathode K1 est maintenant connectée à la terre (niveau bas sur la ligne PB1, niveau haut sur PB0 et PB2). En outre, les informations sont affichées dans la position la plus haute de l'indicateur (sur PB2 log.0, sur PB0, PB1 log.1), puis à nouveau sur zéro, etc. Avec un taux de rafraîchissement des symboles ≥ 50 Hz, l'inertie de la vision humaine commence à se manifester. Le scintillement (effet de commutation) disparaît. L'image est perçue continuellement, comme si tous les symboles étaient allumés en permanence. Un exemple de routine d'affichage dynamique est présenté ci-dessous. Il faut deux paramètres: le code du caractère et le numéro de position dans lequel ce caractère doit être affiché.

; Puisque l'indicateur contient 3 familiarités, le sous-programme; la sortie de caractère doit être appelée avec une fréquence ≥ 150 Hz (3; familiarité x 50 Hz \u003d 150 Hz). La période de commutation devrait: soit 1/150 Hz \u003d 6667 µs, ce qui correspond à une fréquence de 1 MHz pour AVR; sera 6667 cycles de la fréquence d'horloge du générateur. Permanent les intervalles de temps sont mesurés plus commodément par une minuterie qui fonctionne; en mode de réinitialisation lors de la correspondance (mode CTC). ATmega8 en a un; le mode existe dans les compteurs de minuterie 16 bits 1 et 8; bit timer-counter 2. Pour ces besoins (dans le cas d'utilisation du timer-counter 1), il existe deux registres; Espaces RVV: OCR1AH \u200b\u200b(octet haut), OCR1AL (octet bas). ; Lorsque le fonctionnement du circuit de comparaison est autorisé, le registre de comptage; TCNT1H: TCNT1L démarre après chaque impulsion entrante activée; unité pour augmenter son contenu jusqu'à son; la valeur ne correspond pas à la valeur enregistrée dans; OCR1AH: OCR1AL. À ce stade, le contenu de TCNT1H: TCNT1L; il est réinitialisé et l'indicateur OCF1A est défini dans PBM TIMSK. Si préréglage du bit OCIE1A dans TIMSK et du bit I dans SREG ,; alors une transition vers le gestionnaire d'interruptions par coïncidence se produira; du module de comparaison A. Le compteur 1 existe également; également un deuxième module similaire pour comparer B avec des registres; comparaisons OCR1BH: OCR1BL dont le fonctionnement est similaire; décrit ci-dessus. .def data \u003d R16; registre avec le code de caractère.def pos \u003d R17; registre avec le numéro de position actuel de l'indicateur.def temp \u003d R18; registre pour les opérations intermédiaires.dseg .org SRAM_START; cellules dans la mémoire SRAM pour afficher le tampon: .byte 3; on indicateur.cseg .org 0 rjmp initial; programme start.org 0x0006; gestionnaire d'interruption par rjmp service_T1COMPA; correspondance à partir du module de comparaison A; Période d'interruption CTC: T \u003d (OCR1AH: OCR1AL + 1); / (Fclk / N), où N est le coefficient de division du prédiviseur; fréquence à l'entrée du compteur de temps 1. Le mode de fonctionnement est défini; WGM13 bits: WGM10 (WGM10 et WGM11 dans le PBB de contrôle TCCR1A; WGM12 et WGM13 dans TCCR1B), et la valeur N est définie en bits; CS12: CS10 dans le registre TCCR1A. Pour la période T \u003d 6667 µs; (WGM13: WGM10 \u003d 0100 - nous avons coupé le CTC), N \u003d 1 (CS12: CS10 \u003d 001 -; le séparateur est désactivé) et Fclk \u003d 1 MHz - le contenu de OCR1AH: OCR1AL; \u003d 6667. .org 0x0020 initial: ldi temp, high (RAMEND); initialise la sortie de pile SPH, temp ldi temp, low (RAMEND) out SPL, temp. clr pos clr temp ldi temp, 1; remplissez le tampon d’affichage avec les chiffres 1 ... tampon 3 m, temp ldi temp, tampon 2 m + 1, temp ldi temp, tampon 3 m + 2, temp out TCCR1A, temp ldi temp, (1<< WGM12)|(1<< CS10) out TCCR1B,temp ldi temp,high(6667) out OCR1AH,temp ldi temp,low(6667) out OCR1AL,temp ldi temp,1<< OCIE1A out TIMSK,temp sei . service_T1COMPA: ;обработчик прерывания по совпадению OCR1A in temp,SREG ;при входе сохраняем в стеке push temp ;регистры temp, SREG clr temp ldi YH,high(buffer) ;заносим в указатель Y адрес ldi YL,low(buffer) ;буфера индикации buffer add YL,pos ;добавляем к Y смещение, что соответствует adc YH,temp ;ячейке с текущей позицией pos индикатора ld data,Y ;заносим в data кодом символа текущей позиции rcall din_ind ;вызов подпрограммы индикации inc pos ;циклически изменяем номер позиции cpi pos,3 ;индикатора 0->1-\u003e 2-\u003e 0 etc. brne PC + 2 clr pos temp temp; à la sortie, restaure de la pile en sortie SREG, temp; enregistre temp, SREG reti; Routine d'indication dynamique; ZH: ZL - pointeur pour la conversion de table; R18 - registre des opérations intermédiaires; R16 - numéro de caractère dans la table de conversion ind_tabl; à l'entrée du sous-programme; R17 - numéro de position à l'entrée du sous-programme (0 ... 2); le drapeau T à l’entrée du sous-programme détermine; la présence (T \u003d 1) ou l'absence (T \u003d 0) de la virgule din_ind: clr R18; effacer le registre auxiliaire à l'entrée ldi ZH, haut (2 * ind_tabl); mettre l'adresse de départ ldi ZL, bas (2 * ind_tabl) dans le pointeur Z; Les tables de conversion de caractères ajoutent ZL, R16, ajoutent un décalage au pointeur Z, adc ZH, R18, correspondant à la position du caractère dans la table lpm R16, Z, extraient le symbole bld R16,7 de la table dans R16 et placent la valeur R16 (segment H) dans l'ordre le plus élevé. clt; une virgule transmise par le drapeau T ldi R18,0b11111110 sbrc R17,0; si le bit actuel est 1, nous entrons le masque ldi R18,0b11111101 dans R18; le port B pour allumer la cathode K1 sbrc R17,1; si le bit actuel est 2, à propos, nous plaçons le masque ldi R18,0b11111011 dans R18; le port B pour allumer la cathode K2 pousse R17; sauvegardons le registre avec le numéro de position dans R17, PORTB sur la pile; lisons l’état actuel du port ori R17,0b00000111 et R18, R17 dans PORTB, R17 dans la mémoire tampon R17 ; nous éteignons tous les segments en alimentant le journal 1 par PORTD, R16 à K0 ... K2, émettons le symbole suivant par PORTB, R18 sur le port D, connectons la prochaine section de cathode R17 à la masse; restaurez le registre avec le numéro de position ret ind_tabl de la pile; caractères à une cathode commune; HGFEDCBA HGFEDCBA nombre de table de caractères, Db 0b00111111, 0b00000110; 0,1 0, 1 .db 0b01011011, 0b01001111; 2,3 2, 3 .db 0b01100110, 0b01101101; 4,5 4, 5 .db 0b01111101, 0b00000111; 6,7 6, 7 .db 0b01111111, 0b01101111; 8,9 8, 9 .db 0b01110111, 0b01111100; A, b 10, 11 .db 0b01011110, 0b01011110; C, d 12, 13 .db 0b01111001, 0b01110001; E, F 14, 15 .db 0b01000000, 0b00000000; -, espace 16, 17

Les lignes de port d'entrée / sortie AVR ont des caractéristiques de charge symétriques. Ils permettent des courants d’entrée et de sortie égaux jusqu’à 20 mA. Par conséquent, les indicateurs avec une anode commune et une cathode commune peuvent être utilisés avec le même succès. De plus, les conclusions relatives à la connexion de segments remplissent très souvent des fonctions supplémentaires des boutons d'interrogation. Sur la figure 2, par exemple, avec la ligne du segment A, le bouton SBN est connecté via la résistance de limitation de courant RN. Périodiquement, PD0 est défini pour entrer afin de lire l'état du bouton. Dans le cas de la résistance de charge, dans ce cas, une résistance interne de rappel apparaît.


  Fig. 3 Réduction du nombre de sorties du microcontrôleur
  a - en utilisant un registre à décalage
  b - utilisation d'indicateurs avec différents schémas de connexion à LED

Le nombre de conclusions peut être considérablement réduit si des microcircuits auxiliaires sont utilisés avec le microcontrôleur. La figure 3a, par exemple, montre comment le registre à décalage 74HC164 ou similaire est utilisé à cette fin. Cette connexion libère 6 lignes d'E / S. Dans certains cas, il peut être justifié d’utiliser des décodeurs de code à sept segments et des compteurs de différents types. De plus, il existe une autre opportunité de sauvegarde basée sur l'utilisation de l'état z des lignes de port. Le circuit de la figure 3b est similaire au circuit de la figure 2, à la seule exception qu'un indicateur à trois chiffres avec une anode commune HG2 est en outre connecté en parallèle à l'indicateur avec une cathode commune HG1. Les lignes PB0 ... PB2 commutent simultanément les anodes A0 ... A2 de l'indicateur HG2 et les cathodes K0 ... K2 HG1, respectivement. Lorsque des informations sont affichées à la position zéro de HG2 (anode A0), un niveau de tension élevé est formé sur la ligne PB0. Sur les lignes du port D, log.0 est défini dans les segments à éclairer et dans l'état z dans les segments à payer. Lorsque la familiarité junior HG1 (cathode K0) est active, un niveau de tension bas doit être présent sur la ligne PB0 et une valeur logique est émise vers le port D auquel le niveau de log.1 sur les lignes correspond aux segments illuminés et l'état z est annulé. Si les caractères sont affichés dans d'autres positions de l'indicateur, autres que A0 et K0, PB0 doit alors être transféré dans l'état haute impédance. Naturellement, le programme de sortie avec un tel schéma de commutation sera sensiblement plus compliqué que celui illustré à la Fig. La table des symboles sera beaucoup plus grande car, tout d'abord, pour chacun d'entre eux, il sera nécessaire de stocker, en plus de la valeur PORTD, le contenu du registre DDRD, via lequel les lignes correspondantes doivent être transférées à l'état z (configurées pour l'entrée). Et deuxièmement, d'autres valeurs inverses de PORTD correspondront aux symboles HG1 par rapport à l'indicateur de cathode commune HG2.

Pour la deuxième année, j’ai réanimé l’amplificateur Solntsev, assemblé il ya 20 ans. L'un des nœuds de l'amplificateur est un indicateur de puissance de sortie. Au moment de la création, l’amplificateur incluait un indicateur monté sur le kit K155LA3 - 8 bâtiments + carrosserie. A bien fonctionné, mais pas moderne maintenant. Réincarnation dans une base moderne sous la coupe.
  En cours de réanimation, j'ai décidé de construire un nouvel indicateur, sur une base élémentaire moderne. Le circuit indicateur sur le LM3915 est actuellement très populaire.


Malheureusement, dans notre région, je n'ai pas trouvé à la vente de ligne d'indicateurs à LED dans un boîtier et montés sur des LED séparées.



En général, cela n’a pas été mauvais, mais le flou (même la turbidité) des taches lumineuses n’a pas été à la hauteur.
  A la recherche d'une bande LED, je suis tombé sur une ligne d'indicateurs LED dans un boîtier pour 12 segments, dont 8 verts et 4 rouges.


  Dans ma conception, 10 voyants indiquent la puissance de sortie de l'amplificateur et deux voyants pour indiquer l'apparition d'une tension négative ou positive à la sortie de l'amplificateur.
  En attendant un colis, un paiement symbolique pour la livraison et la modification de l'indicateur n'ont pas dissuadé l'achat.
  Les conclusions de chaque indicateur ont été soigneusement protégées par le vendeur et emballées dans une enveloppe avec une petite bulle.



La face avant de chaque panneau est recouverte d'un autocollant protecteur.

A l'intérieur, les indicateurs sont inondés d'un composé transparent

En général, j'ai même été très agréablement surpris par la qualité des indicateurs de performance, qui n'est pas un produit sans visage.
  Les dimensions indiquées par le vendeur correspondent parfaitement à la réalité. Le fabricant n'a pas économisé sur la longueur de sortie.
  Etant donné que le vendeur n’a indiqué ni la consommation de courant des LED ni la tension de fonctionnement, il a considéré ces données généralement acceptées, environ 2 à 3 volts, à un courant de 20 à 30 mA.
  Cependant, il a préalablement vérifié les voyants DEL avec le testeur T4.




Uf, v - tension à laquelle la LED commence à briller en volts,
  C, pf - capacité de transition en picofarads
  Dans le tableau, les voyants 1 à 8 sont verts, les 9 à 12 sont rouges.
  Les paramètres varient, mais cela n’affecte pas le travail.
  Jusqu’à l’arrivée des indicateurs, j’ai pensé non pas à graver une nouvelle planche, mais à utiliser une planche à pain, mais il s’est avéré que le pas entre les bornes n’était pas de 2,54 mm, mais exactement de 2 cm. C’est ce que montrent les dessins sur la page du vendeur, n'a pas fait attention.
  Ayant installé une grille métrique dans Sprint-Layout, je répartis le tableau. Au cours du processus, j’ai rencontré un problème supplémentaire, si ce n’était la difficulté, la qualité standard du panneau: les conducteurs DEL ne sont pas situés au centre du boîtier, mais sont décalés sur un bord: ils sont à 1,6 mm du centre. Cela a créé un léger inconvénient - je devais placer deux indicateurs côte à côte, sans espace entre les cas. J'ai dû réduire le pas de la grille à 0,25 mm et imprimer le tableau plusieurs fois sur papier en essayant des indicateurs.
  En conséquence, nous avons eu une telle taxe





Comparaison des résultats:

Montage et test de circuits









La caméra savonne un peu la lueur des segments, mais tout semble très décent. Chaque LED crée sa propre lueur clairement définie, sans créer de tache de coton.
  C'est peut-être une sensation subjective, mais l'indicateur est apparu, la vitesse d'indication a augmenté et est devenue plus adéquate par rapport à la version d'origine - une inhibition a disparu.
  Je suis extrêmement satisfait de l’achat du résultat, malgré l’étape non standard des conclusions et leur décalage par rapport au centre de l’affaire, et je peux recommander ce produit.
  En outre, le vendeur dispose de divers indicateurs dans une large gamme et à des fins différentes.
  Sprint Board:

  Dans le premier onglet, il y a une carte avec microcircuits + une carte indicatrice sur des DEL séparées. Dans le deuxième onglet, il y a un tableau pour les indicateurs surveillés.

   Je prévois d'acheter +41 Ajouter aux favoris Commentaire aimé +76 +127

J'étais dans un magasin d'électronique l'autre jour. Parfois, divers composants radio utilisés apparaissent à bas prix. Cette fois, j'ai vu une micropuce, car cela coûtait un sou acheté sans réfléchir. J'ai décidé de faire un indicateur simple d'un signal mono. Pourquoi mono et pas stéréo? Parce qu'il n'y a qu'une puce. Je terminerai la deuxième chaîne plus tard ...

Après avoir imprimé le schéma à l’aide d’une imprimante laser sur papier glacé, nous procédons au transfert du toner (encre) sur la carte. Nous procédons comme suit: nous plaçons du papier sur une planche bien polie avec du papier sablé et avec un fer chauffant, nous conduisons sur la planche pendant 10 minutes. Nous attendons que la planche se refroidisse et retirons soigneusement le papier sous l’eau chaude. Vous devriez obtenir ce qui suit:

Ensuite, nous empoisonnons le plateau en chlorure de fer. Après environ une heure, le tableau était complètement gravé. En utilisant un solvant, nous nous débarrassons de la peinture et le papier de verre donne à la planche un aspect plus rectangulaire.

Nous obtenons des frais. Puis procédez à la soudure des pièces. D'abord soudé la puce. Après les voyants, puis le reste des détails. Photo d'un tableau entièrement fini:


Circuit de travail

Indiquez brièvement le but des pièces. En utilisant R2, nous ajustons le niveau du signal d’entrée. Par le biais de la capacité C1, le signal pénètre dans la base du transistor VT1, qui sert d’amplificateur. La résistance R3 définit le décalage sur la base du transistor. En outre, le signal amplifié à travers le condensateur C2 "vient" aux diodes VD1 et VD2.

Un signal négatif va au moins, un signal positif à la 5ème jambe de la puce. C3 et R4 servent de filtre. Plus la tension sur la 5ème jambe est élevée, plus le nombre de LED allumées augmente. À propos, si vous fermez la 9ème étape sur plus, les LED s’allumeront de façon linéaire. Dans la vidéo, vous pouvez voir comment cela fonctionne.

Vidéo de fonctionnement LED

Partagez ceci