
PCF8563 I2C接口实时钟RTC的Verilog读写驱动及Quartus工程文件.zip
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
该压缩包包含一个用于PCF8563 I2C接口实时钟的Verilog读写驱动程序和对应的Quartus工程文件,便于硬件描述与仿真。
I2C接口RTC实时时钟pcf8563读写Verilog驱动源码Quartus工程文件适用于FPGA型号Cyclone4E系列中的EP4CE10F17C8,使用Quartus版本为18.0。
模块定义如下:
```verilog
module rtc(
// 系统时钟输入端口
input sys_clk,
// 系统复位信号输入端口
input sys_rst_n,
// pcf8563接口相关信号线
output rtc_scl, // I2C时钟线输出端口
inout rtc_sda // I2C数据线双向端口
);
```
参数定义如下:
```verilog
parameter SLAVE_ADDR = 7h51; // 器件地址
parameter BIT_CTRL = 1b0 ; // 字节控制位(8位或16位)
parameter CLK_FREQ = 26d50_000_000; // I2C驱动时钟频率
parameter I2C_FREQ = 18d250_000; // I2C的SCL时钟频率
```
初始时间设置,从高到低为年到秒,各占8位:
```verilog
parameter TIME_INI = 48h18_05_23_09_30_00;
```
内部定义信号如下:
```verilog
wire clk; // I2C操作时钟线
wire i2c_exec ; // 触发控制信号
wire [15:0] i2c_addr; // 地址线
wire [7:0] i2c_data_w; // 写入数据
wire i2c_done ; // 操作完成标志位
wire i2c_ack ; // 应答信号(未应答:高电平)
wire i2c_rh_wl ; // 读写控制线
wire [7:0] i2c_data_r; // 从IIC设备读取数据寄存器的值
```
例化i2c_dri模块,调用IIC协议:
```verilog
// 实现I2C驱动操作实例化
i2c_dri #(
.SLAVE_ADDR (SLAVE_ADDR),
.CLK_FREQ (CLK_FREQ ),
.I2C_FREQ (I2C_FREQ )
) u_i2c_dri(
// 全局时钟信号输入端口
.clk (sys_clk ),
);
```
以上是该模块的主要配置和定义。
全部评论 (0)


