@[VHDL](脈沖激光測距)
這是一個激光測距機中接收模塊和顯示模塊之間的小模塊
求解這段代碼的含義和作用
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY COUNTER IS
PORT
(
ST,CLK,TR,REC: IN STD_LOGIC;
COUNT : BUFFER INTEGER RANGE 0 TO 65535
);
END COUNTER;
ARCHITECTURE A OF COUNTER IS
SIGNAL COUNT_REG: INTEGER RANGE 0 TO 65535; --信號COUNT_REG取值0到65535
BEGIN
PROCESS (ST,CLK,TR,REC)
BEGIN
IF(ST='1')THEN
COUNT_REG<=0;
COUNT<=0;
ELSE
IF(CLK'EVENT AND CLK='1')THEN --當時鐘信號為上升沿時
IF(TR='0')THEN --如果TR為0,則
COUNT_REG<=COUNT_REG; --COUNT_REG不變
ELSE --否則
IF((TR AND REC)='0')THEN --如果TR和REC均為0.則
COUNT_REG<=COUNT_REG+1; --COUNT_REG增加1
ELSE --否則
IF((TR AND REC)='1')THEN --如果TR和REC均為1,則
COUNT_REG<=COUNT_REG; --COUNT_REG不變,輸出COUNT_REG
COUNT<=COUNT_REG;
END IF;
END IF;
END IF;
END IF;
END IF;
END PROCESS;
END A;
uj5u.com熱心網友回復:
這個時序不復雜,不過要看具體含義,這個程式還看不出來。轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/67474.html
標籤:硬件設計
下一篇:微電流檢測,零點例外
