I2C总线控制器的VHDL设计及实现
时间:10-02
整理:3721RD
点击:
entity I2C_CTRL is
port(
-- 系统信号
nReset: in STD_LOGIC;-- 系统复位信号端
CLK: in STD_LOGIC; -- FPGA内部系统时钟端
-- 控制信号
ADRS: in STD_LOGIC_ VECTOR(4 downto 2); -- 地址线,3位(8个32位地址)
Din: in STD_LOGIC_ VECTOR(7 downto 0); -- 数据输入线,8位
Dout: out STD_LOGIC_ VECTOR(7 downto 0); -- 数据输出线,8位
nCS: in STD_LOGIC; --片选使能端
nWR: in STD_LOGIC; --写使能端
-- I2C总线信号
SDA: inout STD_LOGIC; --串行数据输入输出端,输出有三态
SCL: out STD_LOGIC --时钟输出端,三态输出
);
end I2C_CTRL;
port(
-- 系统信号
nReset: in STD_LOGIC;-- 系统复位信号端
CLK: in STD_LOGIC; -- FPGA内部系统时钟端
-- 控制信号
ADRS: in STD_LOGIC_ VECTOR(4 downto 2); -- 地址线,3位(8个32位地址)
Din: in STD_LOGIC_ VECTOR(7 downto 0); -- 数据输入线,8位
Dout: out STD_LOGIC_ VECTOR(7 downto 0); -- 数据输出线,8位
nCS: in STD_LOGIC; --片选使能端
nWR: in STD_LOGIC; --写使能端
-- I2C总线信号
SDA: inout STD_LOGIC; --串行数据输入输出端,输出有三态
SCL: out STD_LOGIC --时钟输出端,三态输出
);
end I2C_CTRL;
SCL: out STD_LOGIC 所以这个I2C只能是master的形式吧?