C'est vrai qu'il est fort notre Fabien et moi je me dis VIVEMENT ma retraite car bien que je ne sois pas à son niveau , plus j'avance dans la simulation et plus j'ai de chose à faire et d'envies
Cordialement
Bernard
fab a écrit:Bon, en attendant ma chérie, j'ai fait le codeur 2-5 vers binaire 4 bits ...
Les 3 étapes en vidéo ...
Le test des commutateurs
Le test du programme :
Et on branche le tout ...
Une puce par roue, une carte I/O, un bout de code SIOC pour le calcul binaire/décimal et le transfert vers un offset ...
fab a écrit:
concorde fan a écrit:Est-ce que tu t'es déjà penché sur les questions suivantes ?
- Chaque petite loupiote de confirmation (allumée ou éteinte) au dessus des afficheurs
concorde fan a écrit:- Basculeur opérationnel
/*
2to5_radio-nav.c
*/
int lu_F0( int A, int B, int C, int D, int E );
int lu_F1( int A, int B, int C, int D, int E );
int lu_F2( int A, int B, int C, int D, int E );
int lu_F3( int A, int B, int C, int D, int E );
int lu_F0( int A, int B, int C, int D, int E )
{
const unsigned int nOutAry[] =
{0XFB, 0X9F, 0XD7, 0XFF};
unsigned int nTerm=0, nX, nBit;
if( A ) nTerm |= 1<<4;
if( B ) nTerm |= 1<<3;
if( C ) nTerm |= 1<<2;
if( D ) nTerm |= 1<<1;
if( E ) nTerm |= 1;
nX = nTerm / 8;
nBit = 7 - nTerm % 8;
if( nOutAry[nX] & 1<<nBit )
return 1;
else
return 0;
}
int lu_F1( int A, int B, int C, int D, int E )
{
const unsigned int nOutAry[] =
{0XFD, 0X9F, 0X9F, 0X7F};
unsigned int nTerm=0, nX, nBit;
if( A ) nTerm |= 1<<4;
if( B ) nTerm |= 1<<3;
if( C ) nTerm |= 1<<2;
if( D ) nTerm |= 1<<1;
if( E ) nTerm |= 1;
nX = nTerm / 8;
nBit = 7 - nTerm % 8;
if( nOutAry[nX] & 1<<nBit )
return 1;
else
return 0;
}
int lu_F2( int A, int B, int C, int D, int E )
{
const unsigned int nOutAry[] =
{0XFF, 0XB7, 0X97, 0X7F};
unsigned int nTerm=0, nX, nBit;
if( A ) nTerm |= 1<<4;
if( B ) nTerm |= 1<<3;
if( C ) nTerm |= 1<<2;
if( D ) nTerm |= 1<<1;
if( E ) nTerm |= 1;
nX = nTerm / 8;
nBit = 7 - nTerm % 8;
if( nOutAry[nX] & 1<<nBit )
return 1;
else
return 0;
}
int lu_F3( int A, int B, int C, int D, int E )
{
const unsigned int nOutAry[] =
{0XE9, 0X97, 0XF7, 0X7F};
unsigned int nTerm=0, nX, nBit;
if( A ) nTerm |= 1<<4;
if( B ) nTerm |= 1<<3;
if( C ) nTerm |= 1<<2;
if( D ) nTerm |= 1<<1;
if( E ) nTerm |= 1;
nX = nTerm / 8;
nBit = 7 - nTerm % 8;
if( nOutAry[nX] & 1<<nBit )
return 1;
else
return 0;
}
concorde fan a écrit:A la réflexion l'un de mes modèle Gables COMM G3615-02 est un peu différent du tiens mais il doit probablement être compatible, j'ai juste un switch SQ de désactivation en plus.
Sinon j'en possède un autre G6200-13 avec un affichage digital certainement non compatible car le connecteur derrière n'a strictement plus rien à voir.
J'ai une façade de chez opencockpit COMM et des digits à la pelle comme autre solution, mais c'est moins marrant car je sais déjà faire, tout est déjà opérationnel sur mon PA.
François
fab a écrit:-Elles fonctionnent en 28v, alors que les chiffres sont en 5v.
-Elles sont branchées sur un interrupteur à bascule double inverseur. pas besoin de les gérer.
-Je les remplacerai certainement par des LED , d'ailleurs je ne sais pas comment les démonter, on dirait que la douille est vissée dans le châssis![]()
Retourner vers Autres avions de ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité