Viperview : affichage pour FalconAF
-
Topic author - Apprenti-Mécano
- Messages : 235
- Inscription : 04 décembre 2003
Viperview : affichage pour FalconAF
#1Sur le même principe que ViperCan , je développe un prototype ViperView qui permet de déporter certaines informations de la mémoire partagés de Falcon afin d'illuminer un peu l'environnement du simulateur.
Ce projet à pour objectif de créer un système simple, fiable et facile à reproduire.
Le cœur du système est architecturé autours d’un µcontrôleur PIC 18f4550 (Microchip) qui réalise la liaison entre le PC (à travers le bus USB et un logiciel me permettant de lire la mémoire partagée) et les différents interfaces.
Ces interfaces permettent la gestion des afficheurs leds.
Celle-ci est confiée à des circuits intégrés MAX6956 (pour les voyants) et MAX6958 pour les afficheurs 7 segments (compteur Chaff/Flare + aérofrein (pas encore implémenté)). Ces circuits conçus par Maxim IC utilisent le bus I2C pour dialoguer avec le µcontrôleur.
Le DED est actuellement un afficheur graphique 128x64 pixels (bientôt remplacé par un 192x62 pixels car impossible d’afficher toutes les caractères avec une taille raisonnable ) et est directement interfacé sur les lignes de ports du µcontrôleur.
Le PFL est actuellement un afficheur LCD 2x16 caractères directement interfacé sur le µC. Il sera lui aussi bientôt remplacé par un afficheur LCD 2x24 caractères.
Le logiciel écrit en C++ (avec C++builder6) permet d’interroger la mémoire partagée de Falcon et d’envoyer les infos au Pic via la liaison USB, il est fortement inspiré de celui de ViperCan. Le traitement et l’envoie des données sur l’USB s’effectuant dans un thread.
Viperview ne nécessite que très peu de composants (total de 5 circuits intégrés) et seul le pic doit d’être programmer. Un avantage indéniable par rapport à ViperCan .
Ce projet à pour objectif de créer un système simple, fiable et facile à reproduire.
Le cœur du système est architecturé autours d’un µcontrôleur PIC 18f4550 (Microchip) qui réalise la liaison entre le PC (à travers le bus USB et un logiciel me permettant de lire la mémoire partagée) et les différents interfaces.
Ces interfaces permettent la gestion des afficheurs leds.
Celle-ci est confiée à des circuits intégrés MAX6956 (pour les voyants) et MAX6958 pour les afficheurs 7 segments (compteur Chaff/Flare + aérofrein (pas encore implémenté)). Ces circuits conçus par Maxim IC utilisent le bus I2C pour dialoguer avec le µcontrôleur.
Le DED est actuellement un afficheur graphique 128x64 pixels (bientôt remplacé par un 192x62 pixels car impossible d’afficher toutes les caractères avec une taille raisonnable ) et est directement interfacé sur les lignes de ports du µcontrôleur.
Le PFL est actuellement un afficheur LCD 2x16 caractères directement interfacé sur le µC. Il sera lui aussi bientôt remplacé par un afficheur LCD 2x24 caractères.
Le logiciel écrit en C++ (avec C++builder6) permet d’interroger la mémoire partagée de Falcon et d’envoyer les infos au Pic via la liaison USB, il est fortement inspiré de celui de ViperCan. Le traitement et l’envoie des données sur l’USB s’effectuant dans un thread.
Viperview ne nécessite que très peu de composants (total de 5 circuits intégrés) et seul le pic doit d’être programmer. Un avantage indéniable par rapport à ViperCan .
-
Topic author - Apprenti-Mécano
- Messages : 235
- Inscription : 04 décembre 2003
#3
Bonne continuation dans ton projet...
merci de nous faire partager le suivi par l'image...c'est toujours très interessant
merci de nous faire partager le suivi par l'image...c'est toujours très interessant
AMD 3700 X - DDR4 32GB 3400 ghz - RTX 3080 ti - SoundBlaster Omni 5.1
VR PIMAX Crystal Chassis JCL-V2 bi-Simu + Simshakers x4 AURA .
simflight --> VKB Gunfighter-Pro + Saitek throtle + rudder VKB MK-IV + Cougar FCC + Winwing TQS
simrace --> Volant Fanatec DD1 + pédalier HPP (JVB) + Boutons box ( DsD + Saitek box )
#5
super ton truc mais tu la trouves où ta bête et à quel prix (surtout le max6956) ça remplacerait bien le foutu pca9552 que je ne trouve nul part ou alors en s024 (grosse daube ce packaging pour les protos)
bonne soirée
bonne soirée
-
Topic author - Apprenti-Mécano
- Messages : 235
- Inscription : 04 décembre 2003
#6
Salut Pilour6
Les Max6956 se trouvent directement sur le site en ligne de chez Maxim où tu peux aussi les demander en échantillons (sample). C'est ce que j'ai fais
Les Max6956 se trouvent directement sur le site en ligne de chez Maxim où tu peux aussi les demander en échantillons (sample). C'est ce que j'ai fais
-
Topic author - Apprenti-Mécano
- Messages : 235
- Inscription : 04 décembre 2003
Viperview suite......
#7Quelques nouvelles.....
Le projet avance pas à pas :
Quelques critiques tout de même :
Légère déception concernant l'afficheur graphique (192x64): celui çi présente des timings qui font que l'on voit le rafraichissement des lignes du DED (lorsqu'elles sont mise à jour). Chose qui n'arrivait pas avec celui de ViperCan .
Peut être aussi une question de prix.
Petit jeu : sur la dernière photo , il y a une erreur . Laquelle ..... ?
Enfin globalement , c'est satisfaisant.
Le projet avance pas à pas :
- Gestion totale du MAX6958 : celui çi gére les 2 compteurs Chaff/Flares et permet également de commander 8 leds séparemment. Chapeau monsieur Maxim , soit la possibilité de commander 36 leds avec 10 broches de circuit intégré . Le circuit imprimé ne va pas être facile à réaliser ....
- Le PFL est désormais un afficheur LCD 2x24 caractères (au lieu du 2x16). Celui-ci m'a été gracieusement offert par Zarpjj. Merci beaucoup Jean Jacques
- Enfin , j'ai reçu mon afficheur graphique 192x64 pixels de Hong Kong . Celui çi est désormais interfacé et fonctionne à merveille (après quelques déboires ..... ).
Quelques critiques tout de même :
Légère déception concernant l'afficheur graphique (192x64): celui çi présente des timings qui font que l'on voit le rafraichissement des lignes du DED (lorsqu'elles sont mise à jour). Chose qui n'arrivait pas avec celui de ViperCan .
Peut être aussi une question de prix.
Petit jeu : sur la dernière photo , il y a une erreur . Laquelle ..... ?
Enfin globalement , c'est satisfaisant.
#8
Zupper
si je peux t'aider, pas de prob, y a qu'a demander
Zarpp
PS : mate mon dernier MP please
si je peux t'aider, pas de prob, y a qu'a demander
Zarpp
PS : mate mon dernier MP please
--> LogBook Squadron FFW8 <--
CM Asus P8P67 Rev.3, Proc I7-2600 3,4 GHz, 16 GB Ram, SSD Samsung 840 Pro 256 GB, HDD WD Veliciraptor 320GB, Carte graph PNY GeForce™ GTX 560 PCI-E 1Go, Boitier Antec P182, Windows 7 Pro 64 bit SP1,
Hotas Cougar TM + Palo Custom CH Pro Pedal game port, Connexion ADSL 10000/1000
#9
Non je ne pense pas que cela soit un pb de prix, car celui que j'utilise n'a pas de pb de rafraichissement et bien au contraire ! ex : voire les 10 ded que j'ai crée et distribuer (si les utilisateurs des ded veulent confirmer ou me contredire ...)gladiator62 a écrit :[*]Enfin , j'ai reçu mon afficheur graphique 192x64 pixels de Hong Kong . Celui çi est désormais interfacé et fonctionne à merveille (après quelques déboires ..... ).
[/list]Légère déception concernant l'afficheur graphique (192x64): celui çi présente des timings qui font que l'on voit le rafraichissement des lignes du DED (lorsqu'elles sont mise à jour). Chose qui n'arrivait pas avec celui de ViperCan .
Le pb vient du bus I2C qui est trop lent pour un rafraichissement optimal d'un lcd grahique de 192x64. Meme en ayant utilisé le bus I2C de l'UCC (1MHz) cela n'était pas suffisant ! Mon constat a été confirmé par d'autres concepteur de circuit I2C ! Maintenant peut-être que Zarpzz a trouvé une astuce ? (j'en connais une mais je n'ai pas pris ce chemin). Zarpjj je ne t'oublie pas, mais avant de te passer un UCC pour essai I2C, je dois m'assurer du bon fonctionnement du reste avant !
-
Topic author - Apprenti-Mécano
- Messages : 235
- Inscription : 04 décembre 2003
#10
L'afficheur graphique est raccordé aux lignes de port du µControleur. Les signaux de commande sont générés par le portA du PIC et le bus de données par le port D.
Le bus I2C ne me sert simplement qu'à commander les afficheurs leds.
Je suis obligé , lorsque que je commute les signaux (E, RS, ..D0 à D7) d'ajouter des temps cycles , sinon l'afficheur ne suit pas. Le PIC fonctionne à 48 Mhz.
Pour être plus précis, je réaffiche les infos sur le ded que si au moins une ligne est modifiée. Autrefois avec l'afficheur du Vipercan , lorsque l'on regardait l'heure , on ne percevait que le changement de la seconde. Là actuellement , on perçoit le rafraichissement (un clignotement pour être plus précis) de la ligne entière.
Je vais approfondir la question et tenter d'améliorer le driver.
Merci de ta remarque, SharkNoir
Le bus I2C ne me sert simplement qu'à commander les afficheurs leds.
Je suis obligé , lorsque que je commute les signaux (E, RS, ..D0 à D7) d'ajouter des temps cycles , sinon l'afficheur ne suit pas. Le PIC fonctionne à 48 Mhz.
Pour être plus précis, je réaffiche les infos sur le ded que si au moins une ligne est modifiée. Autrefois avec l'afficheur du Vipercan , lorsque l'on regardait l'heure , on ne percevait que le changement de la seconde. Là actuellement , on perçoit le rafraichissement (un clignotement pour être plus précis) de la ligne entière.
Je vais approfondir la question et tenter d'améliorer le driver.
Merci de ta remarque, SharkNoir
#11
Bonjour a tous
Pour le DED et MDF montés sur l'UCC , je confirme les dires de Shark . Le rafraichissement est parfait y compris lorsque l'on utilise 3 écrans LCD ( DED, MDF et RWR ) + des cartes lights raccordées à l'UCC
Que du bonheur
Pour le DED et MDF montés sur l'UCC , je confirme les dires de Shark . Le rafraichissement est parfait y compris lorsque l'on utilise 3 écrans LCD ( DED, MDF et RWR ) + des cartes lights raccordées à l'UCC
Que du bonheur
#12
Bonjour a tous
Pour le DED et MDF montés sur l'UCC , je confirme les dires de Shark . Le rafraichissement est parfait y compris lorsque l'on utilise 3 écrans LCD ( DED, MDF et RWR ) + des cartes lights raccordées à l'UCC
( pour mes cartes lights j'y ai raccordé des LEDS et pas des ampoules incandescentes liés au vrais panels , mais ça ne change rien au niveau datas à traiter )
Que du bonheur
Bonne bricole et bons vols à tous
Pour le DED et MDF montés sur l'UCC , je confirme les dires de Shark . Le rafraichissement est parfait y compris lorsque l'on utilise 3 écrans LCD ( DED, MDF et RWR ) + des cartes lights raccordées à l'UCC
( pour mes cartes lights j'y ai raccordé des LEDS et pas des ampoules incandescentes liés au vrais panels , mais ça ne change rien au niveau datas à traiter )
Que du bonheur
Bonne bricole et bons vols à tous
#13
Je confirme aussi.
Avec le DED, PFD et RWR de l'UCC c'est instantanné - aucun lag.
Même RS avait des soucis de lag sur le GPD. mais l'UCC n'a jamais eu ce souci. Que du plaisir
Avec le DED, PFD et RWR de l'UCC c'est instantanné - aucun lag.
Même RS avait des soucis de lag sur le GPD. mais l'UCC n'a jamais eu ce souci. Que du plaisir
#14
Ok donc tu as un clone de l'UCC... et c'est donc ton driver (ou plutôt firmware qui est a corriger au niveau timing...).gladiator62 a écrit :L'afficheur graphique est raccordé aux lignes de port du µControleur. Les signaux de commande sont générés par le portA du PIC et le bus de données par le port D.
Le bus I2C ne me sert simplement qu'à commander les afficheurs leds.
Je suis obligé , lorsque que je commute les signaux (E, RS, ..D0 à D7) d'ajouter des temps cycles , sinon l'afficheur ne suit pas. Le PIC fonctionne à 48 Mhz.
Pour être plus précis, je réaffiche les infos sur le ded que si au moins une ligne est modifiée. Autrefois avec l'afficheur du Vipercan , lorsque l'on regardait l'heure , on ne percevait que le changement de la seconde. Là actuellement , on perçoit le rafraichissement (un clignotement pour être plus précis) de la ligne entière.
Je vais approfondir la question et tenter d'améliorer le driver.
Merci de ta remarque, SharkNoir
#16
Merci les gars, cela me rassure sur mon travail !
Pour la qualité de mon LCD en fonction du prix : je l'ai acheté 25€ !
Pour la qualité de mon LCD en fonction du prix : je l'ai acheté 25€ !
-
Topic author - Apprenti-Mécano
- Messages : 235
- Inscription : 04 décembre 2003
#17
Bon après reflexion , il s'avère que le driver était incorrect , je l'ai donc corrigé et maintenant le rafraichissement est parfait , plus aucun clignotement
Il ne me reste plus qu'à gérer la police de la page LIST et passer à autre chose ......
Pour info , l'afficheur graphique est de marque TOPWAY et il m'a coûté 24 euros .
Il ne me reste plus qu'à gérer la police de la page LIST et passer à autre chose ......
Pour info , l'afficheur graphique est de marque TOPWAY et il m'a coûté 24 euros .
-
Topic author - Apprenti-Mécano
- Messages : 235
- Inscription : 04 décembre 2003
#18
Allez sur ma lancée , j'ai géré la page LIST et corrigé l'erreur du jeux
Il s'agissait en faite du caractère * au lieu du ° .
Il est tard, la suite, une autre fois.............
Il s'agissait en faite du caractère * au lieu du ° .
Il est tard, la suite, une autre fois.............
-
Topic author - Apprenti-Mécano
- Messages : 235
- Inscription : 04 décembre 2003
#21
En partant de l'excellente base de zapzz sur I2C c'est super facile, je l'avais fait pour tester l'I2C de UCC.gladiator62 a écrit :Je commence la réalisation du typon de la carte Chaff/Flare
Wait and see..........
Le pb c'est plus de trouver des afficheurs 7 segments vert de pt tailles.
-
Topic author - Apprenti-Mécano
- Messages : 235
- Inscription : 04 décembre 2003
Quelques nouvelles .......
#22Bon malgré le peu de temps dont je dispose actuellement , j'ai réalisé l'interface Chaffs/Flares (une carte avec le MAX6958 et les 8 leds programmables et une carte pour les 4 afficheurs 7 segments déportés).
Les afficheurs 7 segments sont des Kingbright SC56 et ne respectent pas les dimensions réelles ( 14,2 mm de hauteur) de ceux du panel du F16.
Il ne s'agit toujours que d'un prototype.
Bon bein , j'y retourne , je vais "redisigné" la carte du PIC celle avec toute la filasse et tenter d'y placer de jolis connecteurs pour les afficheurs PFL et DED .
A bientôt
Avant
Après
Les cartes déportées (3*20 leds + 1 afficheur CHAFFS/FlARES + 8 leds)
Le système et le fouillis de fils de la carte PIC
Les afficheurs 7 segments sont des Kingbright SC56 et ne respectent pas les dimensions réelles ( 14,2 mm de hauteur) de ceux du panel du F16.
Il ne s'agit toujours que d'un prototype.
Bon bein , j'y retourne , je vais "redisigné" la carte du PIC celle avec toute la filasse et tenter d'y placer de jolis connecteurs pour les afficheurs PFL et DED .
A bientôt
Avant
Après
Les cartes déportées (3*20 leds + 1 afficheur CHAFFS/FlARES + 8 leds)
Le système et le fouillis de fils de la carte PIC
-
Topic author - Apprenti-Mécano
- Messages : 235
- Inscription : 04 décembre 2003
La suite .......
#23Voila carte PIC redisgné
Cette carte est dorénavant réalisée avec un circuit imprimé double face .
Elle possède :
Voila , je vais tenter dans les semaines qui suivent d'adapter le bootloader USB à Viperview (merci à The Target). Celui ci pouvant permettre de flasher le PIC sans avoir besoin d'un programmateur spécifique
Quelques photos du système :
La carte PIC actuelle à coté de l'ancienne
Les cartes
Les afficheurs
(Pour ceux qui souhaitent une petite vidéo , j'ai le matos pour la réaliser mais je ne sais pas comment la diffuser )
Cette carte est dorénavant réalisée avec un circuit imprimé double face .
Elle possède :
- un port USB
- un port I2C pour le dialogue avec les cartes Leds
- un connecteur pour le PFL (alim + les signaux distribués sont : D4,D5,D6 D7 ainsi que C6 et C7 du PIC 18f4550 )
- un connecteur pour le DED (signaux distribués : alim + D0 à D7, A0 à A5 ainsi que E0)
- un connecteur d'extension pour .....? (signaux distribués : alim + D0 à D7 ainsi que C0 à C2 et B2 à B5)
Voila , je vais tenter dans les semaines qui suivent d'adapter le bootloader USB à Viperview (merci à The Target). Celui ci pouvant permettre de flasher le PIC sans avoir besoin d'un programmateur spécifique
Quelques photos du système :
La carte PIC actuelle à coté de l'ancienne
Les cartes
Les afficheurs
(Pour ceux qui souhaitent une petite vidéo , j'ai le matos pour la réaliser mais je ne sais pas comment la diffuser )