fungsi dari "sinyal" dalam kode VHDL.

H

hairo

Guest
guys,

siapa pun bisa menjelaskan kepada saya fungsi dalam count_motor sinyal kode ini.itu setara dengan negara (negara mesin)?kode ini saya dapatkan dari sebuah buku.i perlu memahami kode ini karena itu adalah bagian dari proyek desain.LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_ARITH.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY MOTOR_CONTROL IS
PORT (clk_1khz: IN STD_LOGIC;
lmotor_dir, rmotor_dir: IN STD_LOGIC;
lmotor_speed, rmotor_speed: IN STD_LOGIC;
lmotor, rmotor: OUT STD_LOGIC):
END MOTOR_CONTROL;

ARSITEKTUR PERILAKU MOTOR_CONTROL IS
SIGNAL count_motor: STD_LOGIC_VECTOR (4 downto 0);
BEGIN
PROSES
BEGIN
MENUNGGU SAMPAI clk_1khz EVENT DAN clk_1khz = 1;

JIKA count_motor / = 19 THEN
count_motor <= count_motor 1;
ELSE
Count_motor = 00.000;
END IF;

JIKA count_motor = 17 THEN
- don t menghasilkan setiap denyut
JIKA lmotor_speed = 0 THEN
lmotor <= 0;
ELSE
lmotor <= 1;
END IF;

JIKA rmotor_speed = 0 THEN
rmotor <= 0;
ELSE
rmotor <= 1;
END IF;

Elseif count_motor = 18 THEN
JIKA lmotor_speed = 1 THEN
CASE IS lmotor_dir
- FORWARD
KETIKA 0 =>
lmotor <= 1;
- reverse
KETIKA 1 =>
lmotor <= 0;
WHEN OTHERS => NULL;
END CASE;
ELSE
Lmotor <= 0;
END IF;

JIKA rmotor_speed = 1 THEN
CASE IS rmotor_dir
- FORWARD
KETIKA 0 =>
rmotor <= 0;
- reverse
KETIKA 1 =>
rmotor <= 1;
WHEN OTHERS => NULL;
END CASE;
ELSE
Lmotor <= 0;
END IF;

ELSE
Lmotor <= 0;
Rmotor <= 0;
END IF;

END PROCESS;
END PERILAKU;thanks in advance.

salam,
hairo

 
Halo!
Sinyal count_motor dari kode Anda adalah sebuah counter.

 
Count_motor sinyal adalah suatu counter yang digunakan untuk mengontrol arah Lmotor dan Rmotor.

Ketika mencapai 17, input "lmotor_speed" dan "rmotor_speed" dicentang; jika sinyal-sinyal ini adalah 0 maka motor diperbolehkan untuk berjalan dalam arah awal mereka (reverse), kalau mereka berubah arah.

Ketika mencapai 18, input "lmotor_speed" dan "rmotor_speed" diperiksa lagi jika sinyal-sinyal ini adalah 1 maka masukan sesuai arah diperiksa dan arah kedua motor dapat dikendalikan sesuai.

Ketika mencapai sampai 19, adalah reset ke 0, dan seluruh siklus dimulai lagi.

 

Welcome to EDABoard.com

Sponsor

Back
Top