Difference between revisions of "Projets:Lab:2019:VGA432"
(Created page with "{{Project |name= VGA432 |author= Laurent (C) |proposal_date= 19/11/2019 |abstract1=Générer un signal VGA avec un STM32 |abstract2= |abstract3= |abstract4= |abstract5= |ta...") |
|||
(3 intermediate revisions by one user not shown) | |||
Line 18: | Line 18: | ||
}} | }} | ||
− | = Démo de Génération d'un signal VGA avec un STM32 = | + | = Démo de Génération d'un signal VGA avec un STM32 pour la MakerFare 2019 = |
+ | |||
+ | Il se branche sur tout écran pourri capable d'accepter un signal VGA 640x480 @ 60Hz | ||
Le montage peut être alimenté avec un stick batterie USB, ou bien en le connectant à un PC. | Le montage peut être alimenté avec un stick batterie USB, ou bien en le connectant à un PC. | ||
− | Lorsqu'il est connecté à un PC, il créée un port série USB-CDC à utiliser à 115200 bauds. Avec une | + | Lorsqu'il est connecté à un PC, il créée un port série USB-CDC à utiliser à 115200 bauds. |
+ | |||
+ | Avec une application terminal (comme TERA TERM par exemple), les caractères tapés au clavier s'affichent sur l'écran VGA. | ||
+ | |||
+ | Spontanément, il affiche un peu de texte explicatif après 1 minute. | ||
+ | |||
+ | L'essentiel du temps de développement a été consacré à la génération des synchros et à tenter de stabiliser l'image, car toute imprécision dans les timings se traduit par une vibration de l'image. | ||
+ | |||
+ | L'appli a d'abord été développée sur STM32F446 puis portée sur STM32L432. En gros le plus dur a du être refait 2x. | ||
+ | |||
+ | Les parties critiques du code ont du être fortement optimisées, sans quoi l'image se translate fortement vers la droite et il devient impossible d'afficher les 640 pixels horizontaux. | ||
+ | |||
+ | C'est beaucoup plus difficile que ça n'en a l'air que d'avoir une image stable. D'ailleurs, ça méritera reprise. | ||
+ | |||
+ | Liens qui m'ont inspiré : | ||
+ | |||
+ | https://www.artekit.eu/vga-output-using-a-36-pin-stm32/ | ||
+ | |||
+ | http://cliffle.com/blog/introducing-glitch/ | ||
+ | |||
+ | https://github.com/cbiffle/m4vgalib-demos/ | ||
+ | |||
+ | https://int10h.org/oldschool-pc-fonts/fontlist/ | ||
+ | |||
+ | https://en.wikipedia.org/wiki/Control_character#In_ASCII | ||
+ | |||
+ | https://vasyaod-blog.tumblr.com/post/42830601388/stm32-vga-text-terminal-en | ||
+ | |||
+ | Le code est ici : https://code.electrolab.fr/light/vga_on_stm32 | ||
+ | |||
+ | Photo pour check des connexions. | ||
+ | |||
+ | [[File:stm32_vga1.jpg]] | ||
+ | |||
+ | [[File:stm32_vga2.jpg]] | ||
+ | |||
+ | [[File:stm32_vga3.jpg]] | ||
+ | |||
+ | [[File:stm32_vga4.jpg]] |
Latest revision as of 22:25, 26 November 2019
VGA432 | |
---|---|
Auteur | Laurent (C) |
Date de proposition | 19/11/2019 |
Tags du projet | STM32 VGA |
Utilisateur final | Laurent(C) |
Type de projet | Projet officiel de l'électrolab |
Budget | 20€ |
Participants | 1 |
Temps nécessaire | 15 hours |
Générer un signal VGA avec un STM32
|
Démo de Génération d'un signal VGA avec un STM32 pour la MakerFare 2019
Il se branche sur tout écran pourri capable d'accepter un signal VGA 640x480 @ 60Hz
Le montage peut être alimenté avec un stick batterie USB, ou bien en le connectant à un PC.
Lorsqu'il est connecté à un PC, il créée un port série USB-CDC à utiliser à 115200 bauds.
Avec une application terminal (comme TERA TERM par exemple), les caractères tapés au clavier s'affichent sur l'écran VGA.
Spontanément, il affiche un peu de texte explicatif après 1 minute.
L'essentiel du temps de développement a été consacré à la génération des synchros et à tenter de stabiliser l'image, car toute imprécision dans les timings se traduit par une vibration de l'image.
L'appli a d'abord été développée sur STM32F446 puis portée sur STM32L432. En gros le plus dur a du être refait 2x.
Les parties critiques du code ont du être fortement optimisées, sans quoi l'image se translate fortement vers la droite et il devient impossible d'afficher les 640 pixels horizontaux.
C'est beaucoup plus difficile que ça n'en a l'air que d'avoir une image stable. D'ailleurs, ça méritera reprise.
Liens qui m'ont inspiré :
https://www.artekit.eu/vga-output-using-a-36-pin-stm32/
http://cliffle.com/blog/introducing-glitch/
https://github.com/cbiffle/m4vgalib-demos/
https://int10h.org/oldschool-pc-fonts/fontlist/
https://en.wikipedia.org/wiki/Control_character#In_ASCII
https://vasyaod-blog.tumblr.com/post/42830601388/stm32-vga-text-terminal-en
Le code est ici : https://code.electrolab.fr/light/vga_on_stm32
Photo pour check des connexions.