# Autres langages > Autres langages > VHDL >  Programmer un compteur sur carte FPGA

## virtuadrack

Bonjour,

J'ai dj programmer un compteur de 00 a 99 sur une carte FPGA, (Basys100 Spartan3e--Tq144), j'utilise Xilinx.
chaque fois que le switch (Load) est active, le compteur compte 00,01,02,03,04... jusqu' 99.



Je voudrais savoir si il y a un moyen de faire une INVERSION. Quand j'active un switch, je voudrais que le code fasse une "decrementation"... si le compteur est par exemple est a 00, quand j'active le switch, il compte doit montrer 99... de la la meme maniere, si le compteur est entrain d'incrementer 55,56,57... et j'active le switch, il faut qu'il reprenne 57 et dcrmente 56,55,54... des idees ?

Merci

PS: pourquoi il n y a pas de forum VHDL ?

----------


## Barsy

Salut,

Mon exprience en VHDL date un peu... Mais je pense qu'il serait plus simple de t'aider si tu nous mettais un petit bout de ton code ici.

Et sinon, si tu fais un truc du style



```

```

et pour l'architecture du compteur, tu rajoute un if



```

```

----------


## virtuadrack

c'est bon merci j'ai russi a le faire 



```

```


Sinon j'arrive pas a programmer un convertisseur binaire a BCD, c'est a dire, un convertisseur qui accepte 8 entres binaires (8-bit input) et affiche sur l'afficheur 7 segments le nombre correspondant, penses-tu que tu pourrais m'aider ?


ce code affiche les mme chiffre de 0 a 9 dans les 4 afficheurs, en mme temps. je ne sais pas comment isoler, les units et les dizaines.



```

```

----------


## Barsy

Il me semble que cela se gre au moment ou tu dfinis le mappage des entres/sorties de ton FPGA avec Xilinx. Ce n'est pas dans le code que a se passe. 


EDIT :

ici, j'ai trouv une explication :

http://www.derepas.com/fabrice/hard/

C'est en anglais, mais apparemment, tu as 4 sorties 'D14', 'E14', 'F14' et 'G14' qui dfinissent sur quel afficheur tu veux mettre ta valeur. Il faut que tu mettes '1' sur l'afficheur voulue et que tu forces les autres  '0'.

----------

