From 960579106a91a9d3dda5bbd89e1dc87c20c4a7e5 Mon Sep 17 00:00:00 2001 From: rduhr Date: Tue, 31 Oct 2023 15:04:12 +0100 Subject: [PATCH] 7Segment_display readme --- 7Segment_display/README.md | 44 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/7Segment_display/README.md b/7Segment_display/README.md index e26eec1..243ef51 100644 --- a/7Segment_display/README.md +++ b/7Segment_display/README.md @@ -121,7 +121,7 @@ end display; Les process - 1er process : + - 1er process : ``` begin @@ -161,6 +161,48 @@ end display; > le diviseur (clk_enable) ralentit la cadence de switch entre afficheur. Si l'on ne divise du fait de la vitesse les chiffres ne s'affichent pas correctement. Ainsi la logique et l'électronique étant ici très rapide devant la fréquence de percepetion de l'oeil humain, l'utilisateur à l'impression que l'affichage et statique et que rien ne clignote. + + - 2ème processus : + + ``` + -- process counter + process(clk_fpga) + begin + if clk_fpga'event and clk_fpga = '1' then + if clk_counter = 2999999 then + clk_counter <= 0; + if reset = '1' then + chiffre1 <= 0; + chiffre2 <= 0; + chiffre3 <= 0; + chiffre4 <= 0; + else if chiffre4 = 9 then + chiffre4 <= 0; + if chiffre3 = 9 then + chiffre3 <= 0; + if chiffre2 = 9 then + chiffre2 <= 0; + if chiffre1 = 9 then + chiffre1 <= 0; + else + chiffre1 <= chiffre1 + 1; + end if; + else + chiffre2 <= chiffre2 + 1; + end if; + else + chiffre3 <= chiffre3 + 1; + end if; + else + chiffre4 <= chiffre4 + 1; + end if; + else + clk_counter <= clk_counter + 1; + end if; + end if; + end process; + end Behavioral; + ``` ## Résultats - Nous avons dans un premier temps essayer d'afficher sur les 4 afficheurs sans recouvrement. C'est pour cela qu'il a fallu baisser la clock. -- libgit2 0.21.2