# Verilog功能模块--I2C主机与从机
**Repository Path**: xuxiaokang/verilog-function-module--I2C-master-slave
## Basic Information
- **Project Name**: Verilog功能模块--I2C主机与从机
- **Description**: No description available
- **Primary Language**: Verilog
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 2
- **Forks**: 0
- **Created**: 2024-09-27
- **Last Updated**: 2025-03-18
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Verilog功能模块--I2C主机
## 一. 介绍
本模块实现了几乎全功能的Verilog的I2C主机,可应用于同任意速率,任意地址宽度的I2C从机设备进行通信。
此主机模块还支持页读/页写、从机时钟拉伸、软复位并兼容SCCB协议,但模块未实现时钟同步于仲裁,故不支持多主机。
## 二. 模块功能
本Verilog功能模块实现了I2C主机的功能,具体功能如下:
1. 仅支持7位设备地址(目前市面上还没有10位设备地址的I2C器件,未来可能也不会有)
2. 支持8/16/17/18位数据地址
3. 支持页读/页写
4. 支持从机时钟拉伸
5. 支持从机软复位
6. 支持实时更改I2C总线时钟频率(100kHz、400kHz、1MHz等任意频率可实时更改)
7. 兼容SCCB协议
8. 不支持多主机,即不支持时钟同步和仲裁(99%的情况I2C总线上只会有一个主机)
## 三. 模块框图
## 四. 更多参考
[I2C总线规范详解及其Verilog实现04——I2C主机Verilog功能模块 – 徐晓康的博客](https://www.myhardware.top/i2c总线规范详解及其verilog实现04-i2c主机verilog功能模块/)
## 其它平台
微信公众号:`徐晓康的博客`
