Spi Slave v10
Spi Slave v10
--
-- FileName: spi_master.vhd
-- Dependencies: none
--
--
-- Version History
--
--------------------------------------------------------------------------------
LIBRARY ieee;
USE ieee.std_logic_1164.all;
USE ieee.std_logic_arith.all;
USE ieee.std_logic_unsigned.all;
ENTITY spi_master IS
GENERIC(
PORT(
END spi_master;
BEGIN
PROCESS(clock, reset_n)
BEGIN
ss_n <= (OTHERS => '1'); --deassert all slave select lines
ss_n <= (OTHERS => '1'); --set all slave select outputs high
ELSE
END IF;
ELSE
END IF;
ELSE
END IF;
ELSE
END IF;
END IF;
IF(assert_data = '0' AND clk_toggles < last_bit_rx + 1 AND ss_n(slave) = '0') THEN
END IF;
tx_buffer <= tx_buffer(d_width-2 DOWNTO 0) & '0'; --shift data transmit buffer
END IF;
END IF;
--normal end of transaction, but continue
busy <= '0'; --clock out signal that first receive data is ready
END IF;
--end of transaction
ss_n <= (OTHERS => '1'); --set all slave selects high
END IF;
END IF;
END CASE;
END IF;
END PROCESS;
END logic;