bonjour
comment faire pour afficher des chiffres de 8 bits sur un afficheur 7 segment
quel doit etre le cablage ou le ci a utiliser
ex: je tape 1110 et 14 s'affiche
-----
bonjour
comment faire pour afficher des chiffres de 8 bits sur un afficheur 7 segment
quel doit etre le cablage ou le ci a utiliser
ex: je tape 1110 et 14 s'affiche
Bonjour,
le plus simple est le décodeur driver pour afficheur 7 segments, genre CD4511 ou CD4543.
Le CD4543 est utilisable avec des anodes communes ou cathodes communes.
MM
Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...
Bonsoir,
1110 = 0xE ce qui fait en effet 14 en décimal mais pour l'afficher tel quel il faut un convertisseur bin=>decimal, cela existe en composants hardware ou bien on le fait par logiciel (shift and add3 ).
http://pdf1.alldatasheet.com/datashe.../TI/74185.html
http://en.wikipedia.org/wiki/Double_dabble
JR
l'électronique c'est pas du vaudou!
mag1
le cd4511 c pour decoder 4 bit
je cherche la meme chose mais pour decoder 8 bit
jiherve
je ne comprend pas l'utilisation d'un logiciel je cherche a faire un circuit
avec un registre pour enregistrer des chiffres et les affichers ensuite
Re
il n'existe pas de circuit pour décoder 8 bit on utilise deux décodeurs 4 bits ou un décodeur 4bits que l'on multiplexe, schémas disponibles dans toutes les bonnes épiceries.
mais aucun n'affichera 14 à partie de 1110 sans éléments annexes.
JR
l'électronique c'est pas du vaudou!
le 4553 est prévu pour cristaux liquides (1mA).
Tu as aussi le 74LS247 pour anode commune, que tu peux brancher avant le régulateur pour ne pas perturber ton 5V.
En collecteurs ouverts sans décodage, tu as le 74LS06 (x6), le ULN2003 (x7), le ULN2803 (x8) et le TPIC6C595 sur liaison SPI.
Dernière modification par gienas ; 15/01/2015 à 09h35. Motif: Modifié HC en LS
bonjour
ce que je n'ai pas compris c'est shift add3 est un logiciel ou un circuit electronique
parce que j'ai reussi en simulation en appliquant la methode suivante
et en utilisant un registre a decalge et un additionneur a faire la conversion binaire decimal
mais cela ne marche pas pour tous les chiffres aparemment de 10 à 20
Bonsoir
shift add3 c'est un algorithme.
JR
l'électronique c'est pas du vaudou!
Bonjour,
Finalement, je propose un picaxe 20M2.
Sur les entrées C, tu entres les 8 bits à traiter et sur les sorties B, tu visualises la forme ascii instantanément sur un LCD, série ou parallèle.
Le programme doit tenir une une ou deux lignes.
MM
Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...
Ou un 08M2 avec deux poussoirs "0" et "1" et un afficheur série.
Au fait, on tape sur quoi?
MM
Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...
çà revient à ajouter 6 en BCD quand le code hexa est compris entre A et F.
ex : 8 + 3 = B -> 11. Mais au départ c'est du BCD et pas du binaire.
Si tu veux convertir du binaire en BCD 3 digits :
Code:c = 0; d = 0; while (n>=100) {n=n-100; c=c+1;}; while (n>=10) {n=n-10; d=d+1;}; u=n;
Bon, je termine mon histoire de 20M2
Avec 8 clés reliées au picaxe, on affiche l'octet 10001010
Et l'écran affiche 138
Avec le do loop, on rafraîchi l'affichage, ça fait deux lignes de plus.
Avec un 08M2, il faut entrer l'octet en série.
La première ligne afficherait les bits introduits et la seconde la traduction, par exemple
MM
Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...
Bonjour
shiftadd3 converti du BINAIRE en BCD donc permet un affichage en decimal .
voila un code tournant sur Atmega/Attiny:
rResx registres généraux x<16Code:; =================================================================================================================== ; binary to BCD conversion input in rRes3/rRes2/rRes1/rRes0;result in rRes8/rRes7/rRes6/rRes5/rRes4 maximum 999999 ; =================================================================================================================== shift_add3: ; check lower nibble mov rmp1,rmp3; andi rmp1,0x0F cpi rmp1,5; brlo shift_add1 ldi rmp1,3; add rmp3,rmp1; brhc shift_add1; no half carry ldi rmp1,0x10; sub rmp3,rmp1; ; check upper nibble shift_add1: mov rmp1,rmp3; andi rmp1,0xF0 cpi rmp1,0x50; brlo shift_add2 ldi rmp1,0x30; add rmp3,rmp1; shift_add2: ret; bin2bcd: ldi rmp1,0x80; ldi rmp2,0x00; mov rRes4,rmp2; mov rRes5,rmp2; mov rRes6,rmp2; mov rRes7,rmp2; mov rRes8,rmp2; ldi rmp2,32;number of shift bin2bcd0: ; check nibble 1 and 2 mov rmp3,rRes4; rcall shift_add3; mov rRes4,rmp3; ; check nibble 3 and 4 mov rmp3,rRes5; rcall shift_add3; mov rRes5,rmp3; ; check nibble 5 and 6 mov rmp3,rRes6; rcall shift_add3; mov rRes6,rmp3; ; check nibble 7 and 8 mov rmp3,rRes7; rcall shift_add3; mov rRes7,rmp3; ; check nibble 9 and 10 mov rmp3,rRes8; rcall shift_add3; mov rRes8,rmp3; lsl rRes0; rol rRes1; rol rRes2; rol rRes3; rol rRes4; rol rRes5; rol rRes6; rol rRes7; rol rRes8; dec rmp2; brne bin2bcd0; ret;
rmpx registres généraux 16<= x <=24
c'est élémentaire à modifier pour adapter au nombre de digits souhaité.
et comme c'est ma production c'est libre de droits.
JR
Dernière modification par jiherve ; 09/02/2015 à 11h29.
l'électronique c'est pas du vaudou!
Bon, pour terminer mon histoire de 08M2
Voilà une simu vite faite pour entrer un octet de 0 et de 1 avec deux poussoirs ,affichage des entrées et transcription décimale, sur 2 lignes
Y a pas de commentaires, exprès
MM
Dernière modification par mag1 ; 09/02/2015 à 13h59.
Si il y a des erreurs ci dessus, c'est que je n'ai pas eu le temps de les corriger...