Une incrustation Vidéo I2C / PIC de récupération!
PRESENTATION
L'idée n'est pas nouvelle, déjà en 1991 (ERP 528) j'avais décrit un dispositif en utilisant une carte vidéo de PC.
Cet incrustateur peut servir pour envoyer un message dans le cadre de la domotique.
Avec les composants OSD (On Screen Display), c'est devenu un jeu d'enfant.
Bien que disponible chez Electronique Diffusion, a 13Euros pièce, on en trouve dans les moniteurs HS OSD gratuit (avec le quartz!). Le monde est merveilleux...
Dans la première version le circuit STV a été récupéré, puis, vu la simplicité,
il a été monte sur une plaque prototype.
Une carte de l'ERP 528, en utilisant le séparateur de synchro, a permis les premiers tests.
Concluant une copy du séparateur a été monte sur la plaque d'essaie.
Le boîtier vient d'un modem, la carte a été libérée des composants CMS a l'aide d'un decapteur thermique
(a faire en zone aérée), un vrai décollage (avion) de composants.
Le connecteur téléphone RJ45 a été préservé, une grande ouverture a été pratiquée dans le PCB afin d'y fixer la carte prototype.
Le RJ45 permet de fournir l'alimentation 5V et l'I2C.
Les circuits sont de la famille STV942X, attention entre le 20 et le 24 le signal RESET est inversé.
En 24 pins, on dispose de signaux PWM (D/A) pour les réglages type contraste etc..
Il y a aussi des circuits de marques MYSON le MTV016. Même principe sauf le quartz qui est remplace
par une résistance (Structure interne differente, soft incompatible).
Le composant est généralement situé dans le moniteur sur la platine a l'arrière du tube,
elle est fixée sur le support..
Dans cette seconde version, on conservera une partie du PCB découpé!.
Puisque prévu pour le PC, le circuit n'est pas capable d'analyser le signal vidéo pour séparer
la synchro ligne et la synchro trame.
Il existe un circuit tout fait le LM1881, a 4euros, les applications sont disponible sur le web.
Malheureusement ce circuit sera de moins en moins disponible car plus gère utilisé dans
les téléviseurs. Jamais dans les moniteur puisqu'il ne sont plus compatible TV depuis des lustres.
Le choix s'est porté sur un petit montage, simple et didactique, décrit dans l'ERP 528.
Un simple CD4001, circuit CMOS des plus classique quelques composants sans contraintes
permettent d'avoir un très bon résultat.
Un petit ajustage est nécessaire, ce qui le rend didactique.
Le séparateur de synchro.
Le signal vidéo n'a pas une valeur moyenne fixe, il faut le "clamper" c'est le rôle de la diode D4.
Par cette méthode le signal négatif a toujours une valeur constante. La porte du CD4001 joue le role de comparateur avec
le seuil a VCC/2 soit 2,5V. Il faut donc que le niveau de clamp soit légèrement en dessous.
Pour cela on commence par monter sur le pont deux résistances identique de 4K7 (R11 et R12), la tension est égal a 2,5V.
Avec la chute de la diode, 0,6V, la tension de clamp est trop basse.
Il suffit de souder une résistance de 47K en parallèle sur la 4K7 entre le +5V (R12) pour remonter la tension de clamp.
Ainsi, l'extraction est correcte que l'image soit noire ou blanche
Enfin un petit filtre RC élimine la composante HF de la vidéo, sur le proto la capa n'a pas été monte ...
Pour la synchro trame, un simple circuit intégrateur RC donne le signal. La synchro trame est négative.
Pour la synchro ligne, c'est un monostable. On peut utilise la synchro positive ou négative.
Le circuit STV accepte les deux, la configuration est faite par le programme.
L'interface Peritel.
Il utilise 4 transistors, 3 pour les voies RVB et un pour la commutation d'incrustation.
Pour les 3 RVB, il donne du gain en courant car le STV942X ne peut charger directement les lignes RVB de la peritel.
La diode permet de fixer le zéro, la led le niveau haut de la vidéo, environ 1 volt.
La commutation fonctionne presque pareillement, gain en courant.
Les valeurs ne sont pas critiques, pour la vidéo R23(R24..) 10K, R18: 470, R19 75.
Les programmes
Un premier programme en C a été réalisé, vite fait, pour comprendre le fonctionnement du ST942x avec un I2C sur le port printer du PC.
Aussitôt compris, la version PIC a été mise en chantier.
Avec le Bootstrap (chausse pied) réseau, la re programmation s'effectue sans enlever le circuit,
ni même faire de RAZ car au début le programme de test retournait dans le bootstrap.
Les re programmations ont été nombreuses, mais très rapide avec ce système.
Le code est prévu pour un 16F877 avec un quartz de 14,7456MHz, un 16F876 doit aussi fonctionner,
il est facilement adaptable pour un 16F628.
Fonctionnement
Le PIC reçoit a 9600 bauds/s, il affiche les caractères a l'écran.
Pour les lettres et les chiffres, la fonte est identique a l'ASCII.
Le caractère "espace" a été géré, ainsi que le retour chariot et saut de ligne.
Pour changer les attributs d'affichages il faut envoyer le caractère "escape" (0x1B ou 27)
puis un numéro, en fait une lettres ASCII.
La colonne "chiffre" du tableau ASCII permet de choisir la couleur du caractère.
La colonne @… O: couleur du fond
La colonne P…_ : les 4 bits du registre "DISPLAY CONTROL" (on/off, fond noir ou incrustation,
vitesse clignotement).
Ce programme n'utilise pas toutes les possibilités du composant, il est simple compact.
C'est aussi le seul, car rien n'a été trouvé sur le web.
Voici le source en PIC de la lib Version0.00001alpha , pour ceux qui souhaite utiliser le composant.
Le source:
Source fichierLe STV942x
En résumé, il est fait pour l'OSD, a une mémoire de 1K octets, il faut deux octets par caractères( attribut).
On peut donc afficher 500 caractères environ.
Le programme propose 8 lignes de 40 caractères, le quart de sa capacité.
L'alphabet "mou", (logo) consomme 38 octets dans la mémoire par caractère.
Il y a beaucoup de liberté pour les interlignes.
Le nombre de caractère par ligne doit satisfaire la capture du PLL interne, sinon l'image se déchire.
la doc du circuit:
Doc fichier en pdfA suivre...Dans le recyclage des OSD
Un PCB pour l'interface peritel et pour la synchro....