【发布时间】:2022-08-02 21:15:41
【问题描述】:
我正在做一个大学项目,我必须构建一个只有一个从机的 I2C,并且必须传输 5 位数据,4 位用于 0 到 9 范围内的数字和 1 位读取或写,我在这个项目中使用带有 VHDL 的 DE10-LITE,它有一个 50 Mhz 默认时钟,我正在查看 quartus prime 内部的“ALTPLL”,但我找不到设置我的选项时钟到 100kbps,我确实在一些论坛中发现“在 LVDS 模式下设置 PLL”启用了该功能,但由于某种原因,quartus 不允许我激活它。我的 SDA 为 100kbps,SCL 为 50mhz。
-
FPGA代码为10M50DAF484C7G
-
请参阅I2C Specification。时钟不是连续的,可以是状态机的输出。
-
这个时钟很慢,所以你不需要使用 PLL 来生成它。如果您的 FPGA 时钟是 100 kHz 的倍数,那么您可以使用简单的时钟分频器逻辑轻松生成 I2C 时钟。
标签: vhdl hardware fpga intel-fpga