📄 步进电机定位控制系统vhdl程序.txt
字号:
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_arith.all;
use IEEE.std_logic_unsigned.all;
entity step_motor is
port (resetin STD_LOGIC; --系统复位信号
dir in STD_LOGIC; --方向控制信号
clk in STD_LOGIC; --系统时钟信号
ini in STD_LOGIC; --初始化使能信号
manner in STD_LOGIC_VECTOR (1 downto 0); --激磁方式的选择开关
angle in INTEGER range 255 downto 0; --步进角的倍数设定输入
baBA out STD_LOGIC_VECTOR (3 downto 0)); --步进电机状态输出
end step_motor;
architecture stepmotor_arch of step_motor is
signal count INTEGER range 0 to 7; --计数器
signal cntInc INTEGER range -2 to 2; --设定累加器所需的累(加减)计数值
signal cc integer range 0 to 3;
signal cntIni INTEGER range -1 to 0; --设定累加器所需的计数初值
signal angleDnCount INTEGER range 255 downto 0; --计算已经转过的步进角
signal angleDnCntDec INTEGER range 2 downto 1;
begin
process(dir, manner, angle)--, ini)
begin
--if ini='1' then
cc=conv_integer(manner);
if dir='0' then
case cc is
when 1 = -- 1-
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -