summaryrefslogtreecommitdiff
path: root/2004/n/fpga/src/packages/servo_const.vhd
diff options
context:
space:
mode:
Diffstat (limited to '2004/n/fpga/src/packages/servo_const.vhd')
-rw-r--r--2004/n/fpga/src/packages/servo_const.vhd35
1 files changed, 35 insertions, 0 deletions
diff --git a/2004/n/fpga/src/packages/servo_const.vhd b/2004/n/fpga/src/packages/servo_const.vhd
new file mode 100644
index 0000000..b6b5714
--- /dev/null
+++ b/2004/n/fpga/src/packages/servo_const.vhd
@@ -0,0 +1,35 @@
+-- servo_const.vhd
+-- Eurobot 2004 : APB Team
+-- Auteur : Pierre-André Galmes
+-- Fichier de déclaration de constantes de pwm.
+
+-- RQ : pour une indentation bien sous vim :
+-- 1 - ":set shiftwidth=4"
+-- 2 - se placer sous "package nono_const is"
+-- 3 - tapez : = puis shift+G
+
+library ieee;
+use ieee.std_logic_1164.all;
+use ieee.std_logic_arith.all;
+use ieee.std_logic_unsigned.all;
+
+use work.nono_const.all;
+
+-- Constantes relatives au module PWM.
+package servo_const is
+
+ -- Nb de période de l'horloge à 1us pour avoir 1ms : 1000 : x"03E8".
+ constant SERVO_VALUE_MIN : T_DOUBLE_OCTET := x"03E8";
+
+ -- Nb de périodes de l'horloge à 1us pour avoir 2ms : 2000 : x"07D0".
+ constant SERVO_VALUE_MAX : T_DOUBLE_OCTET := x"07D0";
+
+ -- Nb de périodes de l'horloge à 1us pour avoir 20ms : 20000 : x"4E20".
+ constant SERVO_NB_CYCLE_20MS : T_DOUBLE_OCTET := x"4E20";
+
+ -- Nb de périodes de 1us à ajouter pour un incrément de 1 dans le
+ -- registre (incrément pour un interval). Le calcul est :
+ -- (PWM_VALUE_MAX - PWM_VALUE_MIN)) / (255 - 0) = 4
+ constant SERVO_INC_INT : T_OCTET := x"04";
+
+end servo_const;