Commit baf5e4b61257aef2ca38338e271700c72ebbf560

Authored by rduhr
1 parent 122d531c

7Segment_display readme

Showing 1 changed file with 63 additions and 1 deletions   Show diff stats
7Segment_display/README.md
1   -## 7 Segments display
  1 +# 7 Segment display
  2 +
  3 +1. But du projet
  4 +1. I/O utilisées
  5 +1. Explication de l'algorithme principal
  6 +
  7 +> L'ensemble des codes, images et vidéos sont compris dans ce répertoire.
  8 +
  9 +## But du projet
  10 +
  11 +Nous avons décider de nous intéresser à l'affichage 7 segments grâce au but suivant:
  12 +
  13 +- Créer un compteur à l'aide des 4 affichages allant donc de 0 à 9999. En cas de dépassement ou d'appuye sur un bouton reset le compteur redémarrera à 0.
  14 +
  15 +## I/O utilisées
  16 +
  17 +Tout d'abord, voyons les entrées/sortie que nous avons utilisé.
2 18  
3 19 ```vhdl
4 20 entity display is
... ... @@ -6,6 +22,52 @@ entity display is
6 22 clk_fpga : in STD_LOGIC;
7 23 reset : in STD_LOGIC;
8 24 aff : out STD_LOGIC_VECTOR{7 downto 0};
  25 + an : out STD_LOGIC_VECTOR{3 downto 0}
9 26 };
10 27 end display;
11 28 ```
  29 +
  30 +- clk_fpga : le signal de clock du fpga
  31 +
  32 + Dans le fichier de contrainte :
  33 + ```
  34 + ## Clock signal
  35 + set_property -dict { PACKAGE_PIN W5 IOSTANDARD LVCMOS33 } [get_ports clk_fpga]
  36 + create_clock -add -name sys_clk_pin -period 10.00 -waveform {0 5} [get_ports clk]
  37 + ```
  38 +
  39 +- reset : le signal permettant de remettre le compteur à zéro grâce à un bouton
  40 +
  41 + Dans le fichier de contrainte :
  42 + ```
  43 + ## Switches
  44 + set_property -dict { PACKAGE_PIN R2 IOSTANDARD LVCMOS33 } [get_ports reset]
  45 + ```
  46 +- aff : un tableau de 8 bits relier à chaque led d'un segment à afficher (en ajoutant le point de l'afficheur)
  47 +
  48 + Dans le fichier de contrainte :
  49 + ```
  50 + ##7 Segment Display
  51 + set_property -dict { PACKAGE_PIN W7 IOSTANDARD LVCMOS33 } [get_ports {aff[0]}]
  52 + set_property -dict { PACKAGE_PIN W6 IOSTANDARD LVCMOS33 } [get_ports {aff[1]}]
  53 + set_property -dict { PACKAGE_PIN U8 IOSTANDARD LVCMOS33 } [get_ports {aff[2]}]
  54 + set_property -dict { PACKAGE_PIN V8 IOSTANDARD LVCMOS33 } [get_ports {aff[3]}]
  55 + set_property -dict { PACKAGE_PIN U5 IOSTANDARD LVCMOS33 } [get_ports {aff[4]}]
  56 + set_property -dict { PACKAGE_PIN V5 IOSTANDARD LVCMOS33 } [get_ports {aff[5]}]
  57 + set_property -dict { PACKAGE_PIN U7 IOSTANDARD LVCMOS33 } [get_ports {aff[6]}]
  58 +
  59 + set_property -dict { PACKAGE_PIN V7 IOSTANDARD LVCMOS33 } [get_ports {aff[7]}]
  60 + ```
  61 + > exemple : aff[7] contrôlera la led du point de l'afficheur séléctionné.
  62 +
  63 +- an : un tableau comprenant 4 bits permettant de sélectionner l'un des 4 afficheurs 7 segments
  64 +
  65 + Dans le fichier de contrainte :
  66 + ```
  67 + set_property -dict { PACKAGE_PIN U2 IOSTANDARD LVCMOS33 } [get_ports {an[0]}]
  68 + set_property -dict { PACKAGE_PIN U4 IOSTANDARD LVCMOS33 } [get_ports {an[1]}]
  69 + set_property -dict { PACKAGE_PIN V4 IOSTANDARD LVCMOS33 } [get_ports {an[2]}]
  70 + set_property -dict { PACKAGE_PIN W4 IOSTANDARD LVCMOS33 } [get_ports {an[3]}]
  71 + ```
  72 +
  73 +## Explication de l'algorithme
12 74 \ No newline at end of file
... ...